16.08.2021 • C3D Modeler, C3D Converter, C3D Vision, C3D Solver

C3D Labs Bringing Advanced Surfacing to 3D Modeling. Updated C3D Toolkit 2021 boosts high-end 3D software development on desktop, mobile, cloud, and Web

Moscow, Russia: August 16, 2021 – C3D Labs is pleased to announce the release today of C3D Toolkit 2021, a major update to its software development kit (SDK). It is used by developers of software in many areas of engineering and design. Today’s release offers significant enhancements in all modules of the toolkit, and adds two new ones:

  • C3D Modeler geometry kernel for solid, surface, and sheet metal modeling
  • C3D Solver 2D and 3D constraint manager
  • C3D Vision visualization engine
  • C3D Converter data exchange
  • C3D FairCurveModeler for smooth F-curves and surfaces – new
  • C3D Web Vision for client-server visualization – new

Together, the modules provide a complete solution for building 3D design applications for the desktop, mobile, cloud, and Web.

C3D Labs assessed the needs and requirements of design software for many different industries, following which we enhanced our C3D Toolkit 2021 with its new capabilities. The new functions are useful in developing classic CAD, CAM, and CAE systems, as well as for software in fields such as building information modeling (BIM), virtual reality (VR), 3D scanning, and digital manufacturing.

Today’s 2021 release features new and improved tools for 3D surface and solid modeling, 3D sheet metal design, 3D visualization, and broader access to file formats.

New C3D FairCurveModeler

C3D Labs added a brand-new component to its C3D Modeler kernel, the C3D FairCurveModeler, which models Class F curves.

There is today a demand for CAD systems to model very complex curves and surfaces, such as those found on car bodies and in high-end consumer products. Although CAD systems have been modeling Class A curves and surfaces, this does not mean they generate them with the quality of faired G2 curves, the so-called Class F curves.

We took on the challenge of adding top quality F curves and surfaces to our SDK, making for ourselves this list of requirements:

  • Minimize the number of spline path reference points with a high order of smoothness (4 or higher)
  • Smoothly torque (twist) 3D curves
  • Limit the maximum curvature variation values and rates of variation
  • Minimize the potential energy of curves

We implemented these requirements to generate smooth curves, and the result is that our modeling system has a new component that works with our C3D Modeler kernel: the C3D FairCurveModeler for modeling Class F curves. This new module offers a quick and inexpensive way to improve design performance simply by improving the smoothness of geometry in design modeling.

Applications of this new class of curve are quite common, and so they will be useful for addressing challenging design projects in several fields of engineering.

New and Improved in Surface Modeling

While we were planning for the C3D Modeler geometric kernel’s 2021 release, we decided to focus on the area of complex surface modeling. This is considered the high-end of CAD functionality, and paves the way for C3D to solve design tasks in industries like aerospace and shipbuilding.

And so we improved functions that are important to surface modeling, as follows:

Improved: Conic Section Surface Construction. The primary feature is the conic section surface, which we had released last year. With this release, we improved it significantly so that surfaces can be built with five kinds of sections: conic section curves, NURBS sections of, sections of arbitrary splines, circular sections, and ruled sections.

(A conic section surface can be made to join two specified surfaces smoothly. Conic section surfaces are obtained by moving a flat generatrix along a spine curve. As it moves, the generatrix changes its shape according to control functions.)

Conic section surface

Improved: Construction of Surfaces from Curve Meshes. The major improvement we made to curve meshes is that compound curves can now be defined as the boundaries of surfaces on curve meshes, which previously was unavailable.

Surface on mesh of curves

New: Auto-Chain. Our new auto-chain function automatically, when completing sections, builds them in the correct order to ensure an even surface shape is formed along the surface of a mesh of curves.


Improved: Extension of Boundary Faces. We improved the operation of extending surfaces so that there no longer are teeth on the boundary faces being extended.

Improved Solid Modeling

Improved: Median Shell. The median shell function now sets width attributes to save its location within a solid. Also, we improved cutting and extension operations.

Median Shell

Improved: Merge Multiple Faces. Your software can now replace two smoothly-joined faces in a body with a single face along an edge.

New in Sheet Metal

C3D Modeler adds sheet metal modeling functions, some of which are unique among geometric kernels.

New: One-Click Sheet Metal Recognizing. After a model has been imported, the new sheet metal method recognizes it as a sheet body. The resulting body has all sheet metal methods available to it.

Recognizing a sheet body

New: Solid body to Sheet Metal Conversion. We previously had announced the solids-to-sheet metal method in a post on our blog, but now it is official. It converts solid models to sheet metal parts, including unfolded ones.

Solid body to sheet metal conversion

Improved: Arbitrary Body Stamping and Swept Flanges. We made improvements that increase the performance of arbitrary body stamping and swept flange operations. The scope of these methods is expanded so that they now handle more complex bodies.

Arbitrary body stamping and swept flanges

Improved Parametric Solver

Improved: Rotation Patterns. Our C3D Solver 2021 module now generates rotated patterns (arrays) according to a two-sided scheme. It obtains the position of the original from a pattern instance, i.e. solving the inverse problem of the pattern. Rotated arrays can be set to align their instances linearly or rotationally.

Rotation patterns

New: Cylinder Pusher for Cam Mechanisms. Along with other kinds of objects acting as pushers in cam mechanisms, the cylinder pusher is now available. C3D Solver handles cylindrical face tangency in cam mechanisms.

Cam mechanism

Improved: Adding/Removing Points of Splines. When working with splines with any kinds of constraints, C3D Solver can now add and remove points. When making changes to splines, all constraints are preserved.

Splines in C3D Solver

Improved: Dragging. The dragging function now takes into account the specifics of dragging vertices in wireframe models, as well as in solid models.

Dragging of wireframe models

New in C3D Converter Formats

New: Plugin System. As part of the C3D Toolkit, C3D Converter handles most of the popular exchange formats, but has been limited by not implementing proprietary formats, such as native files from third-party CAD systems. As the geometry kernel does not support vendor-specific formats, we created an integration system that connects third-party add-ons to C3D-based applications.

Our new plugin for C3D Converter connects any third-party package to the application. From the C3D user’s point of view, the plugin is implemented through two new functions of the C3D Converter’s API:

  • IConvertor3D::LoadForeignReader( path_to_plugin, settings) loads a third-party package and reads its specific settings
  • IConvertor3D::ForeignRead( ItModelDocument&, … ) reads the format and generates a model document

The scheme for integrating a third-party package into a plugin-based application is shown by the figure below.

Scheme: third-party packages integration

At the top of the scheme, there’s the application using the C3D kernel. It passes a file that defines package settings to the application. The file defines how the package operates; it is part of the plugin. At the bottom is the third-party plugin library with bundled modules that implement the interface for C3D. After loading the package via LoadForeignReader, data is imported into the C3D kernel.

New: OBJ Format. C3D Converter now imports models in OBJ format, including polygonal representation, visual attributes, and textures.

Model in OBJ format

New and Improved 3D Visualization

Our C3D Vision module is aimed at visualizing geometric construction precisely, and at high speed when working with large models. It was developed specifically for 3D engineering applications.

New: Grouped Representations. C3D Vision 2021 for the first time implements representations that group geometry into a single object. The primary advantage to such representations is a multifold increase in performance: when many elements are grouped as a single object, the draw function is called just once.

  • PolygonGeometry groups a large number of curves within a single geometry. C3D Vision provides functions to edit this geometric representation, such as dynamically adding curves, setting a material to each curve, and so on.

Left: single object, right: PolygonGeometry grouped objects

  • MathGroupGeometry groups a large number of any kind of body, while maintaining the ability to change the properties of individual bodies, such as color, position, and so on.

Improved: Label Representations. The new CommentGeometry method creates an arbitrary number of labels for creating annotated geometry.

Arbitrary number of CommentGeometry labels

C3D Vision 2021 also improves functions that were introduced last year, such as manipulators for interactive geometry editing, tools for managing visual properties, and tools for selecting objects and zooming the camera.

New Web Visualization

Along with improvements to our existing visualization module, we developed a new component, C3D Web Vision 2021. Developers can now write server-client engineering applications with these functions:

  • Visualize 3D models in Web browsers
  • Improve the quality of rendered models in scenes
  • Control the properties of rendered model objects
  • Speed up the development of Web-based engineering software

For details about this new component, check out this post on our blog.

Availability and Pricing

The 2021 edition of C3D Toolkit is available now. The entire toolkit, as well as individual components, is available for testing in your programming environment at no charge. For details, see https://c3dlabs.com/en/evaluation/.