C3D Labs at COFES 2017

Oleg Zykov is the CEO of C3D Labs, the entity tasked with developing and marketing the C3D kernel in the face of giants, like Siemens' Parasolid and Dassault's ACIS, with just 20 employees. "It is difficult to be a new kernel in the world when there is Parasolid and others, so we update every 2-3 weeks," he told the COFES conference last month in Arizona, USA

Five years ago, C3D Labs (a division of ASCON Group) had just one customer, KOMPAS-3D. Today they have more than 20 customers in areas of MCAD, AEC, CAM, furniture design, and so on. Mr Zykov's aim is to gain three new customers a year; so far in 2017, he already has three new ones, he told me with a slight grin of satisfaction – including two in the United States.

Oleg Zykov presents C3D Labs at COFES 2017
Figure 1. Oleg Zykov presents C3D Labs at COFES 2017

C3D Toolkit

C3D Labs licenses its C3D Toolkit with these four components, each one being optional:

  • 3D solids and surfaces modeler with 2D geometry
  • 2D and 3D parametric constraints solver
  • Rendering module
  • Neutral file converter

To counter the Parasolid-ACIS duopoly, C3D offers percentage royalties (rather than a fixed fee), integration of customer ideas, a rapid release cycle of 2-3 weeks, support direct from C3D programmers, and a free trial that lasts three months. The toolkit runs on all of today's desktop and mobile operating systems, with iOS coming soon.

The programming is led by Nikolay Golovanov, who published his 350-page book Geometric Modeling: The Mathematics of Shapes, to describe his mathematical findings in the area of kernel design. See https://www.amazon.com/Geometric-Modeling-mathematics-Nikolay-Golovanov/dp/1497473195

What's New in C3D Toolkit

At the COFES conference last month, C3D Labs showed what's new and what's planned for the C3D toolkit.

C3D Modeler. The 2D and 3D modeler gains these functions in 2017:

  • Removing holes from bodies
  • Modifying and removing fillets, step-by-step; see figure 2
Fillets being removed by C3D Modeler
Figure 2. Fillets being removed by C3D Modeler
  • Direct modeling functions
  • Improved method of modifying radii (such as on fillets) along complex paths
  • Extruding contours to the nearest body
  • Extrude multiple contours, including intersections; see figure 3
Multiple contours being extruded
Figure 3. Multiple contours being extruded
  • Extruding sketches to two surfaces with specified slopes, as well as matching the surface curvature
  • Creating twisted lofted bodies from a variety of cross sections; see figure 4
Variety of cross-sections defining a lofted body
Figure 4. Variety of cross-sections defining a lofted body
  • Bend edges of complex boundaries of sheet metal
  • Produce single and multiple mid-surface shells for thin walled solids
  • Stop analysis when first collision is detected
  • Multi-threading of planar projection calculations, tesselation, mass properties, and model conversions

In a future release, C3D Labs plans to provide a new method for filleting faces, adding reinforcing ribs to sheet metal, and implementing a smoothness manager for NURBS surfaces.

C3D Labs offers a reduced-function version of the C3D Modeler for members of the Open Design Alliance. It is plug-compatible with the OdDb3DSolid API, meaning it can replace the other two solid modeling offerings from the ODA itself and ACIS from Spatial. It costs a fixed fee, starting at $1,000 per year, and is available to ODA members only.

C3D Solver. On the request of a client, the programmers at C3D Labs rewrote the constraint engine to run in a Web browser, on the client side. During a seminar at COFES, Alexander Alakhverdyants described the challenges this presented. Nevertheless, you can now get a license from C3D Labs for a JavaScript implementation of its 2D constraint engine.

In case you wonder how C++ API was implemented in JavaScript natively, Alex used WebILD-Binder to declare the binding, which created glue code that was compiled with the project. One attendee at COFES saw an immediate use: a parts supplier could provide it free, with which customers create linkages in the Web browser, and then insert parts from the supplier.

C3D Converter. The translation module handles different neutral formats. See figure 5.

File formats supported by C3D Converter
Figure 5. File formats supported by C3D Converter

New in Converter 2017 is STEP AP242 with PMI [product manufacturing information], and JT v9.5 that combines boundary and polygon representations. In a future release, it will support LOD [levels of detail] and PMI import/export for JT; and extend support versions of X_T, SAT, and JT.

C3D Vision. The rendering module is based on OpenGL, with lighting and materials, LOD, pixel culling, hardware acceleration, and more. C3D Labs plans to add text and dimensions, sections and textures, manipulators, and support for Vulcan, Linux, Mac OS, and C# wrappers.

C3D Labs now turned their Vision module into a standalone 3D file viewer. Right now, it does just basic viewing functions, like zoom and rotate in several visual styles. It opens files from standard formats, like STEP and Parasolid, and saves images in raster formats.

It will be released in stages this year, with basic features in later this month (free), and most other functions by September (not free). For the future releases, C3D Labs plans to add all the functions of their Vision and Converter modules, and then add animation, and support for plug-ins and Linux and Mac OS. An ActiveX version with COM support will also be available.

To learn more, please find presentations uploaded at //c3dlabs.com/source/documents/C3D-Labs/Pre-COFES-2017-Conference/