Overview of OCCT Library
Open CASCADE Technology is an object-oriented C++ class library designed for rapid production of sophisticated domain-specific design applications. A typical application developed using OCCT deals with two or three-dimensional (2D or 3D) geometric modeling in general-purpose or specialized Computer Aided Design (CAD) systems, manufacturing or analysis applications, simulation applications, or illustration tools. OCCT Object Libraries help you to develop your applications significantly faster. |
|
The OCCT Library provides the following services:
2D and 3D geometric modeling toolkits which allow you to model any type of object:
Creating primitives such as prism, cylinder, cone and torus
Performing Boolean operations (addition, subtraction and intersection)
Tweaking constructions using fillets, chamfers and drafts
Modeling constructions using offsets, shelling, hollowing and sweeps
Computing properties such as surface, volume, center of gravity, curvature
Computing geometry using projection, interpolation, approximation
Visualization services that allow you to manage object display and manipulate views. Examples include:
3D rotation
Zoom
Shading
An application framework featuring:
Association between non-geometric application data and geometry
Parameterization of models
Java Application Desktop (JAD), a framework for creating your Graphical User Interfaces (GUI)
Data exchange providing import and export functions of OCCT models to and from standard formats such as IGES and STEP
OCCT Library is developed and marketed by OPEN CASCADE Company. The library is designed to be truly modular and extensible. As such, they separate C++ classes for:
Defining data structures (geometric modeling, display and graphic selection)
Implementing complex algorithms
Providing Application Programming Interfaces (APIs)
Related classes are grouped into packages to prevent any class-name conflicts; C++ class-names are prefixed by a package name. For example, all classes defining 3D geometric objects belong to the Geompackage. In Geom, the class implementing Bezier surfaces is called BezierSurface, and its full name is Geom_BezierSurface.
Packages are then archived into libraries, which you link your application to.
Finally, libraries are grouped into six modules (the smallest one, Foundation Classes, contains two libraries while the largest one, Modeling Algorithms, contains eight). These modules are briefly presented in Figure 1 below.
Figure 1: Object Libraries modules and their contents
Kernel Classes Math Utilities |
2D Geometry 3D Geometry Geometry Utilities Topology |
Construction of Primitives Boolean Operations Fillets and Chamfers Offsets, Drafts Sewing and Sweeps Features Hidden Line Removal Geometric Tools Topological Tools |
Services Common to 2D and 3D 2D Visualization 3D Visualization |
IGES Extended data exchange (XDE) |
Data Framework Data Storage Application Desktop |
In addition Draw Test Harness (Draw) provides testing tools for the Visualization, Modeling Algorithms, Application Framework and Data Exchange modules. These tools include a wide range of interpreted commands which allow experimenting with OCCT.
Refer to the Technical Overview and OCCT documentation for details about the services provided in each module.