diff --git a/Common/OpenFile.cpp b/Common/OpenFile.cpp index bcc5da6f5a372ca4130105b6ce06b65dc96aeb78..059fd69b05858bbf010f2700756396943d3029c7 100644 --- a/Common/OpenFile.cpp +++ b/Common/OpenFile.cpp @@ -110,8 +110,8 @@ void SetBoundingBox() CTX::instance()->min[2] = bb.min().z(); CTX::instance()->max[2] = bb.max().z(); FinishUpBoundingBox(); CTX::instance()->lc = sqrt(SQU(CTX::instance()->max[0] - CTX::instance()->min[0]) + - SQU(CTX::instance()->max[1] - CTX::instance()->min[1]) + - SQU(CTX::instance()->max[2] - CTX::instance()->min[2])); + SQU(CTX::instance()->max[1] - CTX::instance()->min[1]) + + SQU(CTX::instance()->max[2] - CTX::instance()->min[2])); for(int i = 0; i < 3; i++) CTX::instance()->cg[i] = 0.5 * (CTX::instance()->min[i] + CTX::instance()->max[i]); } diff --git a/Post/PViewDataList.cpp b/Post/PViewDataList.cpp index 0907110f0e7bf5ffaa69cc6e34ba56344a9ca330..ce67f3bdaaeed1479ea2cd554a7f3ed8fab178bb 100644 --- a/Post/PViewDataList.cpp +++ b/Post/PViewDataList.cpp @@ -198,9 +198,11 @@ void PViewDataList::_stat(List_T *list, int nbcomp, int nbelm, int nbnod, int nb if(haveInterpolationMatrices()){ std::vector<gmshMatrix<double>*> im; - if(getInterpolationMatrices(nbedg, im) == 4) + int nim = getInterpolationMatrices(nbedg, im); + if(nim == 4) nbnod = im[2]->size1(); - nbval = nbcomp * im[0]->size1(); + if(nim) + nbval = nbcomp * im[0]->size1(); } int nb = List_Nbr(list) / nbelm; @@ -663,13 +665,12 @@ bool PViewDataList::combineSpace(nameData &nd) return false; } - // copy interpolation from first merged dataset, if any - if(!i){ - for(std::map<int, std::vector<gmshMatrix<double>*> >::iterator it = - l->_interpolation.begin(); it != l->_interpolation.end(); it++) + // copy interpolation marices + for(std::map<int, std::vector<gmshMatrix<double>*> >::iterator it = + l->_interpolation.begin(); it != l->_interpolation.end(); it++) + if(_interpolation[it->first].empty()) for(unsigned int i = 0; i < it->second.size(); i++) _interpolation[it->first].push_back(new gmshMatrix<double>(*it->second[i])); - } // merge elememts List_Merge(l->SP, SP); NbSP += l->NbSP; List_Merge(l->VP, VP); NbVP += l->NbVP; diff --git a/utils/api_demos/mainSimple.cpp b/utils/api_demos/mainSimple.cpp index 9a14be051dcb7d94003f8c8b5a7568c610f805ab..77a6737cdb809dd1f464de767c57f610cbac53de 100644 --- a/utils/api_demos/mainSimple.cpp +++ b/utils/api_demos/mainSimple.cpp @@ -15,7 +15,8 @@ int main(int argc, char **argv) GmshInitialize(argc, argv); //GmshSetOption("Mesh", "Algorithm", 5); GModel *m = new GModel(); - m->readGEO("../../tutorial/t5.geo"); + //m->readGEO("../../tutorial/t5.geo"); + GmshMergeFile("../../tutorial/t5.geo"); // will also set the bbox m->mesh(3); for(GModel::riter it = m->firstRegion(); it != m->lastRegion(); ++it){ GRegion *r = *it;