Hide menu
Loading...
Searching...
No Matches
B-Rep Geometry and Topology

Boundary Representation provides precise definition of a ModelData_Part . B-Rep is defined via a combination of geometry and topology: geometry (points, curves and surfaces) defines a body form and topology (vertices, edges, faces, shells, etc) defines trimming of underlying geometry.

Manufacturing Toolkit API follows the ISO 10303-42 specification and uses its geometrical and topological entities.

The following sections describe supported types of geometrical curves and surfaces and topological entities.

Curves

Curves can be defined in 3D model space or in 2D parametric space of a surface. The latter are called parametric space curves or p-curves.

Manufacturing Toolkit provides two hierarchies of classes - for 3D and 2D curves. The former derives from the Geom_Curve class and the latter from the Geom_Curve2d class.

Manufacturing Toolkit supports the following curve types:

  • Analytical/elementary curves (line, circle, ellipse, hyperbola, parabola);
  • Non-Uniform Rational B-Splines (NURBS);
  • Bezier curves;
  • Offset curves.

The curve type is returned by Geom_Curve.Type() as Geom.CurveType enumeration.

Type C++ class Example
Line Geom_Line Geom_Line2d
Circle Geom_Circle Geom_Circle2d
Ellipse Geom_Ellipse Geom_Ellipse2d
Hyperbola Geom_Hyperbola Geom_Hyperbola2d
Parabola Geom_Parabola Geom_Parabola2d
Bezier curve Geom_BezierCurve Geom_BezierCurve2d
B-Spline curve Geom_BSplineCurve Geom_BSplineCurve2d
Offset curve Geom_OffsetCurve Geom_OffsetCurve2d

Surfaces

Manufacturing Toolkit supports the following surface types:

  • Analytical/elementary surfaces (plane, conical surface, spherical surface, etc);
  • Swept surfaces (surfaces of revolution and extrusion);
  • Non-Uniform Rational B-Splines (NURBS);
  • Bezier surfaces;
  • Offset surfaces;

Classes representing surfaces subclass the Surface class. The surface type is returned by Geom_Surface.Type() as Geom_SurfaceType enumeration.

Type Python class Example
Plane Geom_Plane
Conical Surface Geom_ConicalSurface
Cylindrical Surface Geom_CylindricalSurface
Spherical Surface Geom_SphericalSurface
Toroidal Surface Geom_ToroidalSurface
Surface of Linear Extrusion Geom_SurfaceOfLinearExtrusion
Surface of Revolution Geom_SurfaceOfRevolution
Bezier Surface Geom_BezierSurface
B-Spline Surface Geom_BSplineSurface
Offset Surface Geom_OffsetSurface

Topological Shapes

Topological entities are used to define the trimming of the geometrical entities and the connectivity between them.

Topological entities are eventually owned by a body (Body).

Classes representing topological entities subclass the ModelData_Shape class.

The shape type is returned by ModelData_Shape.Type() as a ModelData_ShapeType enumeration.

Type C++ class Example
Vertex ModelData_Vertex
Edge ModelData_Edge
Wire ModelData_Wire
Face ModelData_Face
Shell ModelData_Shell
Solid ModelData_Solid
See also
Geom_Curve , Geom_Curve2d , Geom_Surface , ModelData_Shape .