how to convert a TopoDS_Face to a geom_boundedsurface?

I need to do the GeomAPI_IntCS but the the face geom_surface i got is always a infinited plane, then, how ca i get a finited one?

Marina's picture

may be so:

Handle_Geom_Surface s=BRepTools::Surface(F);
Handle_Geom_BoundedSurface bs=Handle_Geom_BoundedSurface::Downcast(s);

p-qiang's picture

Yes, I did the same thing but the it return me a NULL pointer with Handle_Geom_BoundedSurface when I use the DownCast function. I don't know why, I guess it possibly because when I change the TopoDS_Face to a Geom_Surface, it lost the bounded info already? BYW, I've ever downcast a Geome_Surface to a Geom_Plane successfully. Is there any thing I didn't notice? thanks!

Marina's picture

i have such problem. Because Geom_Suface is always infinite. May be this way:
all TopoDS_Edge-> Geom_BoundedCurve
Geom_Surface(F)+all Geom_BoundedCurve->Geom_BoundedSurface...

Marina's picture

try this function to get u,v intervals of your surface:
then, if you have a rectangular surface , you can made Geom_TrimmitedRectangularSurface.

Serge's picture


If you have to find intersection of a face and an edge
try to use BRepExtrema_ExtCF.