if (mode)
{
if (!ReverseXCoord)
- aProfileWire = TopoDS::Wire( theProfile->GetShape3D(true, false) ); //temp force rebuild
+ aProfileWire = TopoDS::Wire( theProfile->GetShape3D(false, false) ); //temp force rebuild
else
aProfileWire = TopoDS::Wire( theProfile->GetShape3D(true, true));
}
}
double xmin, ymin, xmax, ymax;
intersect_bndbox.Get(xmin, ymin, xmax, ymax);
- if (Abs(xmax-xmin)>PREC)
+ //if (Abs(xmax-xmin)>PREC)
+ if (intersection_nb >= 1)
{
double u_mid, u_wid;
if( !CalcMidWidth( intersect_bndbox, u_mid, u_wid ) )
Handle(TDataStd_Integer) anAttr;
TDF_Label aLabel = myLab.FindChild( theTag );
if( !aLabel.FindAttribute( TDataStd_Integer::GetID(), anAttr ) )
- return 0;
+ return theDefValue;
return anAttr->Get();
}
gp_Lin aMidLin( aMiddlePoint2d, gp::DZ() );
TopoDS_Edge aMidEdge = BRepLib_MakeEdge( aMidLin );
- const TopoDS_Wire& aProf = TopoDS::Wire( GetShape3D() );
+ TopoDS_Shape aProf = TopoDS::Wire( GetShape3D() );
if (aProf.IsNull())
return aMiddlePoint;
TopoDS_Iterator anIt( aProf );