The list below contains a full list of available examples and step-by-step tutorials. The source code is included into the package or is available in our GitHub repo.
Some examples are made in the form of interactive demos enabled by the Web Toolkit, some are simple console apps available in one or several supported programming languages. Some are enabled by the Desktop Visualization Toolkit.
Refer to the installation page for details on building and running.
Step-by-step tutorials that demonstrate various use cases.
CAD Exchanger SDK is a very versatile toolkit, so there is no frequenly used scenario a single step-by-step tutorial would demonstrate. Multiple SDK components might deserve their own tutorials, therefore just a few ones have been collected here. Make sure you also explore demos and examples that match your use case.
Web Toolkit Tutorial | Step-by-step tutorial how to create a simple interactive application using Web Toolkit. |
CNC Machining Tutorial | Step-by-step tutorial how to retrieve CNC machining data and show it in Web Toolkit based application. |
Sheet Metal Tutorial | Step-by-step tutorial how to retrieve sheet metal data and show it in Web Toolkit based application. |
Demonstrations of complex feature-rich usage scenarios.
Import and export 3D files in different formats.
Import Example | Reads an external CAD file and translates its contents into a 3D model in memory. |
Export Example | Converts a 3D model in memory and writes it to a target CAD file. |
Transfer Example | Converts a file from one CAD format to another. |
Transfer with Parameters Example | Configures the conversion and maps a file from one CAD format to another. |
CDXWEB Converter Example | Converts a CAD file to CDXWEB format used in Web Toolkit. |
Explore contents of the CAD and BIM models imported from external files or created from scratch.
Bill of Materials (BOM) Example | Traverses the product structure and computes the number of instances of unique parts and assemblies. |
B-Rep Geometry Exploration Example | Explores and prints out the information about topological shapes and their geometry from B-Rep representation. |
B-Rep Representation Example | Explores topological and geometrical entities inside a B-Rep representation: faces, edges, curves, surfaces, etc. |
Polygonal Representation Example | Explores triangulation, polylines and point sets inside a polygonal representation. |
Appearance Example | Collects colors and materials attached to product structure elements, B-Rep and polygonal representations. |
Property Table Example | Explores user-defined properties ({name, value} pairs) attached to various entities inside a 3D model. |
Layers Example | Explores layers holding various entities inside a 3D model. |
Transformation Example | Computes global transformation matrix while traversing the product structure with local transformation matrices attached to assembly or part instances. |
PMI Example | Explores PMI entities attached to various entities inside a 3D model. |
BIM Model Exploring Example | Reads and translates an external IFC file into a BIM model. Explores BIM elements and counts BIM types occurrence. |
Measures various geometrical properties of a 3D model.
Validation Properties Example | Computes volume, area, center of gravity and bounding box of a 3D model. |
Wall Thickness Analyzer Example | Demonstrates how to compute minimum and maximum wall thickness of a 3D model and print the result in a console. |
Use various mesh generators to create polygonal representations.
Level of Details (LOD's) Example | Creates a part with multiple polygonal representations corresponding to different mesh granularity settings. |
Visualization Mesher Example | Uses the fastest mesher to create triangulation suitable for visualization and other purposes. |
Netgen Mesher Example | Uses the Netgen mesher to create higher quality meshes suitable for FEA (Finite Element Analysis). |
Mefisto Mesher Example | Uses the Mefisto mesher to create meshes also suitable for FEA. |
Remeshing Example | Force usage of specific mesh for export or further processing. |
Create 3D models (parts and assemblies) from scratch using various B-Rep and mesh modeling techniques.
B-Rep Geometry Creation Example | Demonstrates creation of all curve and surfaces types, all topological entities (vertex, edge, face, etc) and all body types (solids, sheet, wireframe). |
B-Rep Primitives Example | Uses solid primitives (box, cylinder, cone, sphere, torus) to construct a 3D model. |
B-Rep Features Example | Uses extrusion and revolution operations to construct a 3D model. |
Polygonal Modeling Example | Bottom-up creation of triangulation, polyline and point sets from 3D points. |
Metadata Example | Attaches meta-data (names, colors, user-defined properties) to a part and B-Rep sub-shapes. |
Assembly Modeling Example | Creates an assembly of several instances of a nut-and-bolt sub-assembly. |
Element Removal Example | Modifies the model by removing scene graph elements with a given name. |
Visualize, explore and analyze 3D CAD models in web applications using Web Toolkit.
Web Toolkit Tutorial | Step-by-step tutorial how to create a simple interactive application using Web Toolkit. |
Create 3D scenes and work with them via interactive 3D views using Desktop Visualization Toolkit.
Basic Viewer Example | Demonstrates out-of-the-box capabilities of a 3D viewer. |
Customized Viewer Example | Setting user-defined background style, viewcube position and other styles. |
Selection Handling Example | Demonstrates enabling interactive object selection, various selection modes and filters, as well as attachment of user-defined data. |
Measurements Example | Demonstrates performing various measurements (coordinates, angles, diameters, distances, etc) between B-Rep shapes. |
Manipulator Example | Demonstrates how to use the manipulator object to interact with a scene nodes transformations. |
PMI Viewer Example | Demonstrates how to display graphical PMI stored in the model. |
Exploder Example | Demonstrates how to create an exploded view for any models. |
Drawing Viewer Example | Demonstrates how to display a drawing stored in the model. |
Offscreen Rendering Example | Demonstrates how to capture images of the model for thumbnail generation and other uses. |
Create simplified representations of models.
Mesh Simplification Example | Computes simplified representation of mesh model. |
BRep Simplification Example | Computes simplified representation of BRep model. |
Demonstrate using Manufacturing Toolkit.
Analyze a 3D model to extract data / help with design in CNC Machining process.
CNC Machining Tutorial | Step-by-step tutorial how to retrieve CNC machining data and show it in Web Toolkit based application. |
CNC Machining Feature Recognizer Example | Demonstrates how to perform recognition of machining features on a 3D model and print information about found features and their parameters in a console. |
CNC Machining DFM Analyzer Example | Demonstrates how to perform machining design analysis on a 3D model and print information about found issues and their parameters in a console. |
Analyze a 3D model to extract data / help with design in Sheet Metal process.
Sheet Metal Tutorial | Step-by-step tutorial how to retrieve sheet metal data and show it in Web Toolkit based application. |
Sheet Metal Feature Recognizer Example | Demonstrates how to perform recognition of sheet metal features on a 3D model and print information about found features and their parameters in a console. |
Sheet Metal Unfolder Example | Demonstrates how to perform unfolding of 3D model and saves it as DXF 2D drawing. |
Sheet Metal DFM Analyzer Example | Demonstrates how to perform sheet metal design analysis on a 3D model and print information about found issues and their parameters in a console. |
Various helper tools used in other MTK examples.
MTK Converter Example | Demonstrates how to generate view and manufacturing information files for the imported model, that can be easily acessed through web interface for downstream analysis. |
Model Explore Helper Implementation | Implementation of classes that help to explore model BRep representation of a part in Manufacturing Toolkit examples. |
Feature Group Helper Implementation | Implementation of classes that help to group and print information about found features and their parameters in Manufacturing Toolkit examples. |
Use CAD Exchanger to import CAD models in Eyeshot.
Eyeshot Conversion Example | Reads an external CAD file and translates its contents into Eyeshot objects at runtime. |
Use CAD Exchanger to import CAD models into the Unity game engine.
Unity Base Viewer Example | Reads an external CAD file and translates its contents into Unity objects at runtime. |
Unity PMI Viewer Example | Reads an external CAD file along with PMI and translates its contents into Unity objects at runtime. |
Unity Edit Mode Import Example | Reads an external CAD file and translates its contents into Unity objects in Edit Mode. |
Unity Edit Mode Export Example | Translates Unity objects into external CAD file in Edit Mode. |
Use CAD Exchanger to import CAD models in UNIGINE.
UNIGINE Runtime Import Example | Reads an external CAD file and translates its contents into UNIGINE objects at runtime. |
Various scenarios including progress bar, logging, and integration with 3rd party libraries.
Logging Example | Demonstrates use of a custom logger to collect errors, warnings and information messages during files import. |
Progress Bar Example | Uses a custom progress status observer to receive notifications of the algorithm progress. |
Progress Bar with Qt Example | Qt-based graphical app displaying a progress bar and demonstrating cancellation of file import or mesh generation. |