Denis Statsenko, Head of the Product Marketing Department at C3D Labs, presents C3D PolyShaper, our new polygonal modeling kernel, and discusses its history, functionality, and applications.
C3D PolyShaper is a new product from C3D Labs. It is a polygonal modeling kernel that provides a toolset for editing, analyzing, and healing polygonal objects.
Why did we make it?
Engineering CAD systems primarily use boundary representation (B-Rep) because it is precise. As design and manufacturing technologies evolve, new data types, formats, and sources emerge. Consequently, boundary representation has become insufficient for engineering needs. Users need polygonal geometry representation as well.
In 2023, C3D Labs team began studying polygonal modeling. The results were so promising that we decided to develop a dedicated module, which I am presenting now.
Before discussing it further, let me briefly describe the engineering applications of polygonal modeling and polygonal objects.
Our first focus is reverse engineering. If you need to scan a real part and create its 3D model, polygonal modeling is essential.
Another focus is on topological optimization and generative design.
For example, complex models need to be optimized before being converted into solids.
CAE tools use polygonal modeling for FEM mesh adaptation and optimization.
Coordinate measuring machines (CMMs) inspect finished products.
A CMM scans the part and generates a polygonal model. The scanned model is compared to the design model to detect deviations and determine whether the part is acceptable or defective.
In the construction industry, geometry is primarily imported as polygonal objects.
For industrial building construction, such models represent various types of equipment, machinery, and process lines In civil engineering, these include interior items, furniture, plumbing fixtures, and so on. We need to process such geometry. It usually needs to be edited, potentially healed, optimized, and integrated into other projects.
In medicine, polygonal objects are used for surgery preparation, prosthetics design, developing training content, and research.
Computer-assisted tomography (CAT) scans are typically represented as polygonal geometry for subsequent applications by doctors, rather than engineers.
Another area is hybrid modeling, where a B-Rep contains both polygonal and solid objects.
Engineers expect the polygonal representation to support the same editing operations as B-Rep models, such as Boolean operations and sectioning. Our goal was to ensure that engineers encountered no obstacles and that their work was both convenient and efficient.
CAM and 3D printing applications use polygonal models to visualize the machining or printing process.
This visualization requires rapid model regeneration, which is impossible with solids.
Now let us talk about C3D PolyShaper.
Its functionality can be divided into several key categories. The first category is Geometry Diagnostics and Healing.
Imported geometry may contain geometric or topological errors. Examples include degenerate triangles, duplicate triangle vertices, extra connections, and non-manifold surfaces. Such defects must be corrected because corrupted geometry can reduce the performance of all algorithms that handle this representation. Therefore, healing polygonal geometry is a crucial part of the C3D PolyShaper functionality.
Another focus is geometry simplification, refinement, and remeshing.
Simplification reduces memory usage by optimizing the number of triangles. PolyShaper offers two mesh simplification options: reducing to a specified number of triangles or achieving a desired level of accuracy.
The opposite process is refinement, where we increase the number of triangles in a specific area.
For instance, this is used in CAE systems to enhance the local accuracy of the analysis.
Remeshing improves the entire model.
It makes all triangles as equilateral as possible, which improves the performance of all algorithms.
Another feature of the new module is geometry editing.
After healing the imported geometry, it may need further editing. For this purpose, you can use standard Boolean operations, sections, trimming by a specified-size cube, or triangle removal operations.
Last but not least is geometry analysis.
It broadens the range of available geometry handling operations. PolyShaper can analyze geometry from various sources such as 3D scans of topology optimization tools. When it is known in advance that the CAD model and the 3D scanned model are similar, we can use automatic or semi-automatic object matching tools for comparison.
Another approach available in C3D PolyShaper is reverse engineering when a polygonal model is converted into a solid. For this, we use the least-squares method to fit analytical surfaces. The user can specify a region of the scanned geometry and the surface type, such as a cylinder, cone, plane, sphere, or torus. The kernel then transforms this region into a shell or surface of the specified shape.
This approach is most effective with models of machined parts that have planar and cylindrical features. However, there are more complex models, such as those resulting from topological optimization, or cast parts like the one shown in the figure. To convert such a complex polygonal model into a solid, we cover it with a shell made up of NURBS patches.
Polygonal model analysis also includes mesh segmentation. What is it for? Polygonal models can be converted into the topology of B-Rep models. The difference is that in B-Rep models, faces are joined facets, and edges are sequences of mesh edges. We can assign attributes to the model’s regions. An attribute can be a number, vector, surface, or any arbitrary data structure.
With the latest release of the C3D Toolkit, you can download the C3D PolyShaper module, test its functionality, and provide feedback to the C3D Labs team. We highly value customer feedback, as it guides the further development of the new module.
For early access to C3D PolyShaper, please contact us.
Denis Statsenko
Head of Product Marketing Department
C3D Labs