## Assigning the GCE geometric solver Within the C3D geometric kernel, the three-dimensional geometric solver has an internal technical designation -- GCM (***G**eometric **C**onstraint **M**anager*). The **GCM\_** prefix in the names of functions and data structures means that they are related to the three-dimensional solver API. The GCM component calculates the position and coordinates of geometric objects that satisfy a predefined set of constraints and dimensions, ensuring the integrity of the geometric model of an application. The GCM geometric solver is used with such geometric objects as a point, line, plane, circle, sphere, cylinder, cone, toroid, or their combination in rigid sets (**Cluster**). Positions of geometric objects may be subject to dependencies in the form of constraints from a predefined set of types, including logical constraints: parallelism, perpendicularity, tangency, coincidence, coaxiality, symmetry and various dimensions in distance and angle measurement units. The core functionality of the geometric solver GCM is available via the **gcm_api.h** header file. The application interacts with the constraint solver based on simple C++ data structures; all these structures are declared in the **gcm_types.h** file.