JOining Geom_BSplineSurface's


I want to create a b-spline surface through section of curves. I used the BRepFill_Generator class.

The Shell() function creates a TopoDS_Shell. From it I explore to get the TopoDS_Face, and from that I get the B-Spline surface between 2 sections. If I have N sections, I get (N-1) surfaces.

But what I want is a single surface ( Geom_BSplineSurface) . Is it possible to join all these surfaces to a single surface ?

thanks is advance,

- Prasad

Igor Feoktistov's picture


to create one surface that passes through number of section curves it is possible by class GeomFill_AppSurf.

Besides, in topology level it is possible to use class BRepOffsetAPI_ThruSections. This class has parameter that manages continuity of result shell and you can get one smooth face with one surface.

There is no direct method to join bspline surfaces, but you can try exotic way:

by class GeomConvert_BSplineSurfaceToBezierSurface to get several bezier surfaces from each bspline surface and then to join all bezier surfaces in one bspline surface by class GeomConvert_CompBezierSurfacesToBSplineSurface.

Best regards,


Fabio Napodano's picture

I have a similar problem here:
joining two adjacent NURBS surfaces.

This is more complex because I have to preserve the weight information, and this cannot be done as easily as in the "exotic way" described above.

Does anyone have any suggestion?