0020852: [CEA] V5_1_4_BR - script fails

* correctly initialize fields used for non-uniformally parametrized edges
   in the case of degenerated edges
This commit is contained in:
eap 2010-04-29 07:08:00 +00:00
parent 0ce85afd2c
commit c1f92a4104

View File

@ -97,7 +97,7 @@ StdMeshers_FaceSide::StdMeshers_FaceSide(const TopoDS_Face& theFace,
myLast.resize( nbEdges );
myNormPar.resize( nbEdges );
myEdgeLength.resize( nbEdges );
myIsUniform.resize( nbEdges );
myIsUniform.resize( nbEdges, true );
myLength = 0;
myNbPonits = myNbSegments = 0;
myMesh = theMesh;
@ -146,7 +146,7 @@ StdMeshers_FaceSide::StdMeshers_FaceSide(const TopoDS_Face& theFace,
myMissingVertexNodes = true;
// check if edge has non-uniform parametrization (issue 0020705)
if ( !myC2d[i].IsNull() )
if ( !myC2d[i].IsNull() && myEdgeLength[i] > DBL_MIN)
{
Geom2dAdaptor_Curve A2dC( myC2d[i] );
double p2 = myFirst[i]+(myLast[i]-myFirst[i])/2., p4 = myFirst[i]+(myLast[i]-myFirst[i])/4.;