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 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 hierarchy 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:
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 | ![]() |
Manufacturing Toolkit supports the following surface types:
Classes representing surfaces subclass the Surface class. The surface type is returned by Geom::Surface::Type() as Geom::SurfaceType enumeration.
Type | C++ 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 entities are used to define trimming of the geometrical entities and connectivity between the entities.
Topological entities are eventually owned by the 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 | ![]() |