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

Overview

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 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:

  • 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, 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 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 Shapes

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
See also
Geom::Curve , Geom::Curve2d , Geom::Surface , ModelData::Shape .