For all issues regarding the Forums use, please, refer to the Forum Rules.

Our Solutions

Need professional assistance?
Consider our:

Support Offerings


Need to speed up your development?
Have a look at our:

Samples & Tools


Need some functionality extending standard OCCT capabilities?
Check out our:

Adv. Components

Related pages

BRep_Tool::Curve() returns large parameters

Anonymous's picture

I use the BRep_Tool::Curve() function to get the start and end parameters of an edge curve, as follows:

Handle(Geom_Curve) pCurve = BRep_Tool::Curve(Edge, fFirst, fLast);
if(fFirst FLT_MAX)
return FALSE;

Sometimes fFirst and fLast are set to extremely small and extremely large numbers respectively. No exception is thrown. As a result I have a check to see whether fFirst and fLast are smaller/larger than FLT_MAX.

This works now, but I am wondering whether I am doing something wrong. I got the TopoDS_Edge from TopExplorer while exploring a TopoDS_Solid.

Another thing, all the "rogue" edges (which get trapped by my FLT_MAX check) turn out to be of type GeomAbs_OtherCurve. What exactly are these GeomAbs_OtherCurve's?