C3D Toolkit is a
geometric modeling kit originally developed by
ASCON Group, now by C3D Labs, using
C++ and written in
Visual Studio
Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms such ...
. C3D Toolkit responsible for constructing and editing
geometric model
__NOTOC__
Geometric modeling is a branch of applied mathematics and computational geometry that studies methods and algorithms for the mathematical description of shapes.
The shapes studied in geometric modeling are mostly two- or three-dimensi ...
s. It can be
licensed
A license (or licence) is an official permission or permit to do, use, or own something (as well as the document of that permission or permit).
A license is granted by a party (licensor) to another party (licensee) as an element of an agreeme ...
by other companies for use in their
3D computer graphics
3D computer graphics, or “3D graphics,” sometimes called CGI, 3D-CGI or three-dimensional computer graphics are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for t ...
software products. The most widely known software in which C3D Toolkit is typically used are
computer aided design
Computer-aided design (CAD) is the use of computers (or ) to aid in the creation, modification, analysis, or optimization of a design. This software is used to increase the productivity of the designer, improve the quality of design, improve c ...
(CAD),
computer-aided manufacturing
Computer-aided manufacturing (CAM) also known as computer-aided modeling or computer-aided machining is the use of software to control machine tools in the manufacturing of work pieces. This is not the only definition for CAM, but it is the most ...
(CAM), and
computer-aided engineering
Computer-aided engineering (CAE) is the broad usage of computer software to aid in engineering analysis tasks. It includes , , , durability and optimization. It is included with computer-aided design (CAD) and computer-aided manufacturing (CAM) ...
(CAE) systems.
As the
software development tool, C3D Toolkit performs
3D modeling
In 3D computer graphics, 3D modeling is the process of developing a mathematical coordinate-based representation of any surface of an object (inanimate or living) in three dimensions via specialized software by manipulating edges, vertices, ...
,
3D constraint solving,
polygonal mesh-to-
B-rep
In solid modeling and computer-aided design, boundary representation (often abbreviated B-rep or BREP) is a method for representing a 3D shape by defining the limits of its volume. A solid is represented as a collection of connected surfa ...
conversion,
3D visualization, and
3D file conversions. It incorporates five modules:
* C3D Modeler constructs geometric models, generates flat projections of models, performs triangulations, calculates the inertial characteristics of models, and determines whether collisions occur between the elements of models;
** C3D Modeler for ODA enables advanced 3D modeling operations through the ODA's standard "OdDb3DSolid" API from the
Open Design Alliance
Open Design Alliance is a nonprofit organization creating software development kits (SDKs) for engineering applications. ODA offers interoperability tools for CAD, BIM, and Mechanical industries including .dwg, .dxf, .dgn, Autodesk Revit, Autode ...
;
* C3D Solver makes connections between the elements of geometric models, and considers the geometric constraints of models being edited;
* C3D B-Shaper converts polygonal models to boundary representation (B-rep) bodies;
* C3D Vision controls the quality of rendering for 3D models using mathematical apparatus and software, and the workstation hardware;
* C3D Converter reads and writes geometric models in a variety of standard exchange formats.
History
Nikolai Golovanov is a graduate of the
Mechanical Engineering
Mechanical engineering is the study of physical machines that may involve force and movement. It is an engineering branch that combines engineering physics and mathematics principles with materials science, to design, analyze, manufacture, ...
department of
Bauman Moscow State Technical University
The Bauman Moscow State Technical University, BMSTU (russian: link=no, Московский государственный технический университет им. Н. Э. Баумана (МГТУ им. Н. Э. Баумана)), some ...
as a designer of
space launch vehicles. Upon his graduation, he began with the Kolomna Engineering Design bureau, which at the time employed the future founders of ASCON, Alexander Golikov and Tatiana Yankina. While at the bureau, Dr Golovanov developed software for analyzing the strength and stability of shell structures.
In 1989, Alexander Golikov and Tatiana Yankina left
Kolomna
Kolomna ( rus, Колóмна, p=kɐˈlomnə) is a historical city in Moscow Oblast, Russia, situated at the confluence of the Moskva and Oka Rivers, (by rail) southeast of Moscow. Population:
History
Mentioned for the first time in 1177, Kol ...
to start up ASCON as a private company. Although they began with just an
electronic drawing board, even then they were already conceiving the idea of
three-dimensional parametric modeling. This radical concept eventually changed flat drawings into
three-dimensional models. The ASCON founders shared their ideas with Nikolai Golovanov, and in 1996 he moved to take up his current position with ASCON. Today he continues to develop
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s in C3D Toolkit.
Functionality
C3D Modeler
* Modeling 3D solids
* Performing Boolean operations
* Creating thin-walled solids
* Filleting and chamfering parts
* Modeling sheetmetal parts
* Designing with direct modeling
* Modeling 3D surfaces
* Modeling 3D wireframe objects
* Surface triangulation
* Performing geometric calculations
* Casting planar projections
* Creating section views
* Calculating mass inertia properties
* Collision detection
C3D Converter
Boundary representation (B-Rep):
*
STEP incl.
PMI (protocols AP203, AP214, AP242)
*
Parasolid X_T, X_B (read v.29.0/write v.27.0)
*
ACIS SAT (read v.22.0/write v.4.0, 7.0, 10.0)
*
IGES
The Initial Graphics Exchange Specification (IGES) is a vendor-neutral file format that allows the digital exchange of information among computer-aided design (CAD) systems. It's an ASCII-based textual format.
The official title of IGES is ''Di ...
(read v.5.3/write v.5.3)
Polygonal representation:
*
STL (read and write)
*
VRML
VRML (Virtual Reality Modeling Language, pronounced ''vermal'' or by its initials, originally—before 1995—known as the Virtual Reality Markup Language) is a standard file format for representing 3-dimensional (3D) interactive vector graph ...
(read v.2.0/write v.2.0)
Both representations:
*
JT v.8.0 - 10.x incl.
PMI and
LOD
Lod ( he, לוד, or fully vocalized ; ar, اللد, al-Lidd or ), also known as Lydda ( grc, Λύδδα), is a city southeast of Tel Aviv and northwest of Jerusalem in the Central District of Israel. It is situated between the lower Shephe ...
(ISO 14306)
The C3D
file format
A file format is a Computer standard, standard way that information is encoded for storage in a computer file. It specifies how bits are used to encode information in a digital storage medium. File formats may be either proprietary format, pr ...
is also used as CAD exchange format, and it is gaining popularity in the global area.
C3D Vision
* Configures
levels of detail (LOD)
* Applies
shader
In computer graphics, a shader is a computer program that calculates the appropriate levels of light, darkness, and color during the rendering of a 3D scene - a process known as '' shading''. Shaders have evolved to perform a variety of spec ...
s and
widgets
* Uses 3D assembly feature tree managers
* Controls
static graphics and
dynamic scenes
* Sets
anti-aliasing levels
*
Culls invisible elements of scenes
* Speeds up visual computing through
hardware acceleration
Hardware acceleration is the use of computer hardware designed to perform specific functions more efficiently when compared to software running on a general-purpose central processing unit (CPU). Any transformation of data that can be calc ...
* Section planes
* Interactive 3D controls (manipulators)
C3D Solver
* 2D constraint solver for 2D drawings and 3D sketches
* 3D constraint solver for assemblies and kinematic analyses
The C3D Solver supports the following constraint types:
* Coincidence (available in 2D and 3D)
* Align points (2D)
* Angle (2D and 3D)
* Coaxiality (3D)
* Distance (2D and 3D)
* Equal lengths (2D)
* Equal radii (2D)
* Fix geometry (2D and 3D)
* Fix length and direction (2D)
* Incidence (2D)
* Parallelism (2D and 3D)
* Perpendicularity (2D and 3D)
* Radius (2D)
* Tangency (2D and 3D)
C3D B-Shaper
* Controls surface recognition accuracy
* Segments
polygonal meshes
* Edit segments
* Reconstructs segments in certain types of surfaces
* Generates
B-rep
In solid modeling and computer-aided design, boundary representation (often abbreviated B-rep or BREP) is a method for representing a 3D shape by defining the limits of its volume. A solid is represented as a collection of connected surfa ...
models
Features
The
development environment
In software deployment, an environment or tier is a computer system or set of systems in which a computer program or software component is deployed and executed. In simple cases, such as developing and immediately executing a program on the same m ...
operates using these software:
*
MS Visual Studio 2017
*
MS Visual Studio 2015
*
MS Visual Studio 2013
*
MS Visual Studio 2012
*
MS Visual Studio 2010
*
MS Visual Studio 2008
*
Clang
Clang is a compiler front end for the C, C++, Objective-C, and Objective-C++ programming languages, as well as the OpenMP, OpenCL, RenderScript, CUDA, and HIP frameworks. It acts as a drop-in replacement for the GNU Compiler Collection ...
(for Mac OS)
*
GCC (for Linux)
*
NDK (for Android)
The supported
programming language
A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language.
The description of a programming l ...
s include:
*
C++
*
C#
*
JavaScript
JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
Applications
Since 2013 - the date the company started issuing a license for the toolkit -, several companies have adopted C3D software components for their products, users include:
nanoCADan
nanoCAD Mechanicause the C3D Modeler, C3D Solver, and C3D Converter components
KOMPAS-3Dflexible 3D modeling system
KOMPAS-BuilderKOMPAS:24for Android
TECHTRANuses C3D to import 3D models in various formats, view them, prepare blanks for turning
CNC
Numerical control (also computer numerical control, and commonly called CNC) is the automated control of machining tools (such as drills, lathes, mills, grinders, routers and 3D printers) by means of a computer. A CNC machine processes a pie ...
s from 3D models of future parts, and retrieve geometric data from 3D models.
LEDAS Geometry Comparison (LGC)technology to compare 3D models and pinpoint all of the differences between them
*
CAE CAE may refer to:
Organisations Aviation
* CAE Aviation, a Luxembourgian aviation services company
* CAE Inc. (formerly Canadian Aviation Electronics), a Canadian manufacturer of simulation technologies and training provider
* Régional Compagnie A ...
syste
PASS/EQUIPfor comprehensive structural pressure vessels analysis
ESPRIT Extra CADis based on C3D kernel
*Furniture Design CA
K3-Furnitureref name="upFronteZine809" />
*Furniture Design CA
K3-Mebelref name="upFronteZine809" />
Quick CADCAM*Furniture Design CA
BAZIS System
*3D
AEC CAD software platfor
Renga Architectureref name="DailyCADCAM_08012017">
*
Building information modeling
Building information modeling (BIM) is a process supported by various tools, technologies and contracts involving the generation and management of digital representations of physical and functional characteristics of places. Building informatio ...
syste
Renga Structurefor structural design buildings and facilities
Stairconapplication for the timber staircase industry
SolidEng Dietech Indiadevelops software to configure mold bases for various
die casting
Die casting is a metal casting process that is characterized by forcing molten metal under high pressure into a mold cavity. The mold cavity is created using two hardened tool steel dies which have been machined into shape and work similarly ...
machines
LOGOSsoftware for simulation with supercomputers
PRISMA(Russian analogue of
MCNP
Monte Carlo N-Particle Transport (MCNP) is a general-purpose, continuous-energy, generalized-geometry, time-dependent, Monte Carlo radiation transport code designed to track many particle types over broad ranges of energies and is developed by Lo ...
)
*EE Boost Acoustic VR
*EE Boost Electromagnetics
MKA Steelapplication for a single-story steel structure design
Delta Designsoftware for the automated design of electronic devices
*
Altium Designer
Altium Designer (AD) is a PCB and electronic design automation software package for printed circuit boards. It is developed by Australian software company Altium Limited.
History
Altium Designer was originally launched in 2005 by Altium, ...
software package for
printed circuit board
A printed circuit board (PCB; also printed wiring board or PWB) is a medium used in electrical and electronic engineering to connect electronic components to one another in a controlled manner. It takes the form of a laminated sandwich str ...
,
field-programmable gate array
A field-programmable gate array (FPGA) is an integrated circuit designed to be configured by a customer or a designer after manufacturinghence the term '' field-programmable''. The FPGA configuration is generally specified using a hardware ...
and embedded software design
*
Quickfield finite element analysis
The finite element method (FEM) is a popular method for numerically solving differential equations arising in engineering and mathematical modeling. Typical problem areas of interest include the traditional fields of structural analysis, heat t ...
software package
*ÇİZEN
Die (manufacturing)
A die is a specialized machine tool used in manufacturing industries to cut and/or form material to a desired shape or profile. Stamping dies are used with a press, as opposed to drawing dies (used in the manufacture of wire) and casting dies ...
Design Software from Mubitek
*Open BIM Systems from CYPE Software
VR ConceptVirtual reality
Virtual reality (VR) is a simulated experience that employs pose tracking and 3D near-eye displays to give the user an immersive feel of a virtual world. Applications of virtual reality include entertainment (particularly video games), e ...
application uses C3D Converter for reading imported CAD data, and C3D Modeler for constructing and editing 3D models
Recently, C3D Modeler has been adapted to
ODA Platform.
In April 2017, C3D Viewer was launched for end users.
The application allows to read 3D models in common formats and write it to the C3D file format. Free version is available.
See also
*
CAD standards
are a set of guidelines for the way Computer-aided drafting (CAD), or (CADD) Computer Aided Design and Drawing, drawings should appear, to improve productivity and interchange of CAD documents between different offices and CAD programs, especial ...
*
Computer-aided technologies
Computer-aided technologies (CAx) is the use of computer technology to aid in the design, analysis, and manufacture of products.
Advanced CAx tools merge many different aspects of the product lifecycle management (PLM), including design, finite ...
*
Computer-aided design
*
Computer-aided manufacturing
Computer-aided manufacturing (CAM) also known as computer-aided modeling or computer-aided machining is the use of software to control machine tools in the manufacturing of work pieces. This is not the only definition for CAM, but it is the most ...
*
Computer-aided engineering
Computer-aided engineering (CAE) is the broad usage of computer software to aid in engineering analysis tasks. It includes , , , durability and optimization. It is included with computer-aided design (CAD) and computer-aided manufacturing (CAM) ...
*
Geometric modeling kernel
A geometric modeling kernel is a solid modeling software component used in computer-aided design (CAD) packages. Available modelling kernels include:
* ACIS is developed and licensed by Spatial Corporation of Dassault Systèmes.
*SMLib is devel ...
*
Geometric modeling
__NOTOC__
Geometric modeling is a branch of applied mathematics and computational geometry that studies methods and algorithms for the mathematical description of shapes.
The shapes studied in geometric modeling are mostly two- or three- dimen ...
*
Solid modeling
Solid modeling (or solid modelling) is a consistent set of principles for mathematical and computer modeling of three-dimensional shapes '' (solids)''. Solid modeling is distinguished from related areas of geometric modeling and computer graphi ...
*
Boundary representation
In solid modeling and computer-aided design, boundary representation (often abbreviated B-rep or BREP) is a method for representing a 3D shape by defining the limits of its volume. A solid is represented as a collection of connected surfac ...
References
External links
Official website
{{DEFAULTSORT:C3D
Graphics software
3D graphics software
Computer-aided design
Computer-aided design software
Computer-aided engineering software
CAD file formats
C++ libraries
3D scenegraph APIs
Application programming interfaces
Software development kits
Programming tools