sgCore solid modeling library is a powerful mathematic engine for you to solve a lot of applied problems. Designed for engineers and programmers dealing with 3D modeling, sgCore meets the majority of requirements in this field and provides high accuracy and modeling speed.
SgCore library is developed by a group of highly-qualified programmers with a profound solid-state modeling experience. Being a base of the SolidGraph CAD system, sgCore is constantly tested and improved according to the geometrical modeling practical needs.
The API simplicity, a great number of functions to create most complicated objects and manipulate them, the small size of the library itself, the full documentation and the 24-hour technical support - all this makes our customers choose the geometrical core sgCore.
Since nearly all modeling features are available in the trial version, sgCore library can be just as well used in universities for geometrical modeling teaching.
Full version of sgCore can be used in commercial and noncommercial products without extra-payments.
The sgCore library is a cross-platform library available for Windows, MacOS, iOS and Android. We hope that our library will serve you as a powerful assistant in creating new highly efficient programs.
The library is regularly updated and we will be glad to receive your suggestions and remarks.

Here is the list of the sgCore library main features:

### Boolean Operations

The sgCore library is a solid-state modeling library and it can be understood from the example of Boolean operations:
Subtracting

Union

Intersection

Intersection of two 3D objects surfaces

### Extrude, revolve, pipes, spirals

Kinematic operations is the means of creating new objects by extruding a 2D object along a path in the 3D space:
Revolve solids and surfaces
Extrusion solids and surfaces
Spiral solids and surfaces (with holes)
Pipe solids and surfaces (with holes) - extrusion by extruding an object along another object

### Creation of Surfaces and Solids

The sgCore library realizes a number of function to create 3D surfaces and solids from the existing 2D objects:
Coons Surface from two, three or four curves
Creates a surface or a solid by moving the end points of a line segment along two different curves

You can create a smoothed solid or surface from three or more clips

### Import/Export DXF, STL

Saving objects in the user-defined formats and loading objects from file, DXF and STL import/export, import AutoCAD SHX fonts

### 2D and 3D primitives

The sgCore library offers a programmer a full set of features to work with 2D objects. The functions of creating a standard set of primitives are realized, which is an essential part of every modeling system. Based on two primitives, complex 3D objects can be built in the future.
The main 2D primitives that can be built using the sgCore library

The basic functions of 2D objects creation and the algorithms how to work with them:
• Building of objects such as POINT, LINE, CIRCLE (several ways of creation), ARC (several ways of creation), SPLINE and CONTOUR in the three-dimensional space.
• Checking if the objects are closed, self-intersecting and lying on the same line or plane.
• Getting the point coordinates based on the parameter of the object pass (from 0 - start to 1 - end).
• The feature that allows you to get a line segments array in the wireframe object view.
• Algorithms of exploring the positional relationship of two objects - you can check if the objects lie on the same plane, if one object is placed inside of the other (for closed objects) or if they are intersecting.
The sgCore library offers a programmer a full set of features to work with 3D objects

The basic functions of 3D objects creation and the algorithms how to work with them:
• Building of objects such as BOX, SPHERE, CYLINDER, CONE, TORUS, ELLIPSOID, SPHERIC BAND.
• Getting vertexes, edges, triagles and normals arrays from any 3D object.
• calculating of the UV texture coordinates for each polygon vertex using cubic, spherical and cylindric methods of textures mapping.
• Setting material to objects.