X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDCoupling%2FMEDCouplingUMesh_internal.cxx;h=c1a954a630c1f873b64e86176a2d6280c0e41baa;hb=04f1c450d57b28c7c473bdc59dc87eeef7393ca5;hp=c918cb650ee19903b208d93631361a24de6da503;hpb=ffb8188e28b2b60ee207a8644286821bc4e8fcdc;p=tools%2Fmedcoupling.git diff --git a/src/MEDCoupling/MEDCouplingUMesh_internal.cxx b/src/MEDCoupling/MEDCouplingUMesh_internal.cxx index c918cb650..c1a954a63 100755 --- a/src/MEDCoupling/MEDCouplingUMesh_internal.cxx +++ b/src/MEDCoupling/MEDCouplingUMesh_internal.cxx @@ -510,6 +510,11 @@ void MEDCouplingUMesh::fillCellIdsToKeepFromNodeIds(const mcIdType *begin, const MCAuto cellIdsKept=DataArrayIdType::New(); cellIdsKept->alloc(0,1); checkConnectivityFullyDefined(); mcIdType tmp=-1; + if(getNodalConnectivity()->empty()) + { + cellIdsKeptArr=cellIdsKept.retn(); + return; + } mcIdType sz=getNodalConnectivity()->getMaxValue(tmp); sz=std::max(sz,ToIdType(0))+1; std::vector fastFinder(sz,false); for(const mcIdType *work=begin;work!=end;work++) @@ -1588,14 +1593,14 @@ void MEDCouplingUMesh::AppendExtrudedCell(const mcIdType *connBg, const mcIdType * This method allows to compute given the status of 3D curve cells and the descending connectivity 3DSurf->3DCurve to deduce the intersection of each 3D surf cells * with a plane. The result will be put in 'cut3DSuf' out parameter. * \param [in] cut3DCurve input parameter that gives for each 3DCurve cell if it owns fully to the plane or partially. - * \param [out] nodesOnPlane, returns all the nodes that are on the plane. + * \param [out] nodesOnPlane returns all the nodes that are on the plane. * \param [in] nodal3DSurf is the nodal connectivity of 3D surf mesh. * \param [in] nodalIndx3DSurf is the nodal connectivity index of 3D surf mesh. * \param [in] nodal3DCurve is the nodal connectivity of 3D curve mesh. - * \param [in] nodal3DIndxCurve is the nodal connectivity index of 3D curve mesh. + * \param [in] nodalIndx3DCurve is the nodal connectivity index of 3D curve mesh. * \param [in] desc is the descending connectivity 3DSurf->3DCurve * \param [in] descIndx is the descending connectivity index 3DSurf->3DCurve - * \param [out] cut3DSuf input/output param. + * \param [out] cut3DSurf input/output param. */ void MEDCouplingUMesh::AssemblyForSplitFrom3DCurve(const std::vector& cut3DCurve, std::vector& nodesOnPlane, const mcIdType *nodal3DSurf, const mcIdType *nodalIndx3DSurf, const mcIdType *nodal3DCurve, const mcIdType *nodalIndx3DCurve, @@ -1818,7 +1823,7 @@ void MEDCouplingUMesh::attractSeg3MidPtsAroundNodesUnderground(double ratio, con auto ptToMove(nc[*nci+3]); auto attractor(aa?nc[*nci+1]:nc[*nci+2]),endPt(aa?nc[*nci+2]:nc[*nci+1]); std::transform(coords+spaceDim*attractor,coords+spaceDim*(attractor+1),coords+spaceDim*endPt, - coords+spaceDim*ptToMove,[ratio](const double& stPt, const double& endPt) { return stPt+ratio*(endPt-stPt); }); + coords+spaceDim*ptToMove,[ratio](const double& stPt2, const double& endPt2) { return stPt2+ratio*(endPt2-stPt2); }); } else continue;//both 2 boundary nodes of current seg3 are un nodeIds input list -> skip it.