Geometry Library
Windows Edition
MacOS Edition
iOS Edition

OpenSource CAD System
Ray Tracing Engine
sgCore Features
1. Main features
1.1 2D primitives
1.2 3D primitives
1.3 Boolean operations
1.4 Kinematic operations
1.5 Surfaces
1.6 Linear solids and surfaces
1.7 Solids and surfaces from clips
2. Chargeable version
3. License

sgCore main features

2D 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 are shown in the picture:

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.

Besides the above mentioned algorithms, there are features of object drawing without creating it.
There is also a feature that allows to create an equidistant contour (the curve that is located on the specified distance from the specified curve) for any 2D object having all its points lying on the same plane:

3D primitives

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:

  • 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.

Boolean operations

The sgCore library is a solid-state modeling library and it can be understood from the example of Boolean operations. For example, the result of intersecting two 3D objects can be several non-intersecting areas. In sgCore it will be an array of non-linked objects - solids. The examples of Boolean operations are shown on images:

Intersection of two 3D objects

Union of two 3D objects

Subtracting the second 3D object from the first one

Intersection of two 3D objects surfaces
Intersection of a 3D object surface and a plane.

Kinematic operations

Kinematic operations is the means of creating new objects by extuding a 2D object along a path in the three-dimensional space. Another 2D object can also be a similar path. The examples of Kinematic operations are shown on images:

Revolve solids and surfaces

Extrusion solids and surfaces by extruding an object along a vector (with holes)

Spiral solids and surfaces (with holes)

Pipe solids and surfaces (with holes) - extrusion by extruding an object along another object

Coons surfaces and flat faces with holes

The sgCore library realizes a number of function to create 3D surfaces and solids from the existing 2D objects. You can create a flat face from an outer contour and an array of holes and Coons surface from three or four boudary contours:

Surface from 2 curves

Surface from 3 curves

Surface from 4 curves

Flat face with holes

Linear solids and surfaces

Creates a surface or a solid by moving the end points of a line segment along two different curves.

Surface from 2 sections

Body from 2 sections

Solids from clips

You can create a smoothed solid from three or more clips. Examples of this:

Surfaces from clips

You can create a smoothed surface from three or more clips. Examples of this:

Chargeable version features

Examples of text and dimensional objects:

Main features of chargeable version:

  • Saving objects in the user-defined formats and loading objects from file.
  • DXF and STL import/export.
  • Work with AutoCAD SHX fonts.
  • Creating text objects
  • creating dimensional objects (distant, radial, diametral, angle)
  • Full version of ray tracing engine.
  • .NET wrapper for sgCore and C# examples (Windows version)
  • 64-bit version ofsgCore.
  • Create object with the help of an array of triangles.

sgCore License terms

    for Public Version of sgCore library (sgCore.dll) Software Product.
This End User License Agreement is not a sales contract but an agreement between Geometros Company and you regarding the use of the software - sgCore library. Installing this software implies that you agree to the terms of this agreement. If you disagree with any part of this license agreement, do not install the software. "sgCore Library Software Product" shall mean and include sgCore.dll, the software programs and files needed to integrate the Geometros sgCore library with a software application, including documentation, examples, include files, declarations, and libraries.

    Geometros Company gives you the right to use this software in accordance with the terms of this agreement. You may utilize sgCore Library Software Product free of charge in any manner you see fit (subject to the limitations outlined in this license) to build commercial or non-commercial applications and components. Your application shall include link to Geometros site in "About" dialog or similar place in your application. Text of the link: This Application (or Component) uses sgCore Library, copyright Geometros Company. ( We will be delighted if you will place link to on the web page of your product using sgCore.

    The copyright and intellectual property rights of this software and its documentation and packaging are owned by Geometros Company and are protected by the copyright laws of USA and international intellectual property right treaties.

    Trying to satisfy your needs as much as possible Geometros Company Design does not warrant though that using this software will fit a user's particular purpose, and is not liable for any damages caused by the use of this software.

    You acknowledge that you have read and understand this license agreement and that you agree to its terms. You acknowledge that this agreement has priority over any order, engagement, advertisement, or other written agreement which precedes it.
    Geometros Company.   Copyright 2001-2011 All rights reserved.


© Geometros Systems, 2001-2011. All rights reserved. Terms of use      Contact us