Object libraries OCCT's functionality is split into several large modules. Each module defines a list of toolkits (
libraries). Key modules: •
Foundation Classes – defines basic classes, memory allocators, OS abstraction layer, collections (data maps, arrays, etc.), acceleration data structures (
BVH trees) and
vector/matrix math used by other Modules. •
Modeling Data – supplies data structures to represent 2D and 3D geometric primitives (analytical curves: Line,
circle,
ellipse, hyperbola,
parabola,
Bézier,
B-spline, offset; analytical surfaces: plane,
cylinder,
cone,
sphere,
torus,
Bézier,
B-spline,
revolution, extrusion, offset) and their compositions into
boundary representation (B-rep) models. •
Modeling Algorithms – contains a vast range of geometrical and topological algorithms (intersection, Boolean operations,
surface meshing,
fillets, shape healing). •
Visualization (rendering) – provides interactive services for displaying geometry in 3D Viewer; implements a compact
OpenGL–
OpenGL ES renderer, supporting conventional
Phong, real-time
PBR metal-roughness shading models and interactive
ray tracing –
path tracing engine. •
Data Exchange – provides possibility to import–export various CAD formats.
STEP,
IGES,
glTF,
OBJ,
STL, and
VRML are supported natively. Other formats can be imported by using plug-ins.
Extended Data Exchange (XDE) components rely on a unified
XCAF document definition, which includes an assembly structure of CAD shapes, color/name/material/metadata/layer attributes and other supplementary information like
product and manufacturing information (PMI). •
Application Framework – offers means to handle application-specific data. •
DRAW Test Harness – implements a scripting interface to OCCT algorithms based on
Tcl-interpreter for interactive use, automating processes, prototyping applications and testing purposes.
Workshop Organization Kit Workshop Organization Kit (WOK) is Open Cascade development environment, which has been designed to allow many developers to work on a product, exploiting one common reference version shared over a
local area network (LAN). Until OCCT 7.0.0 release, substantial modifications in the source code were not possible without using WOK, since it is the only tool that provides support for CDL (CAS.CADE definition language), used for declaration of most of OCCT classes and also serving to define logical structure of OCCT libraries. WOK has been included in previous OCCT distributions; since OCCT version 6.4 it is made an independent tool. Within 7.0.0 release, all CDL files have been dropped from OCCT source code making WOK no longer necessary for OCCT development.
Working with IFC files The Open CASCADE IFC Import SDK provides applications with the capability of reading
building information modeling (BIM) data from files in
Industry Foundation Classes (IFC) format. It supports versions IFC2×3 and IFC4 that used by most modern applications. This allows visualizing and manipulating building geometries and CAD designs. External tools are available to convert from Open CASCADE to IFC also. == CAD programs based on Open Cascade Technology ==