## Features

#### Solid modeling

The VML supports Constructive Solid Geometry like operations. Thereby the involved geometric objects must be in closed boundary representation (triangle mesh). By using a hierarchical space decomposition combined with an intelligent elimination strategy, the modeling has a high memory and run-time efficiency.

#### Solid sweeping

Based on the geometric object and the path, the VML computes the according swept volume. By the use of a generic point-cloud based approach, the computation has a distinctive run-time efficiency. Furthermore it does not put any restrictions on the geometric object and path.

#### High number of modeling operations

The VML has no limit considering the number of modeling operations. Because of the intelligent elimination strategy during modeling, even performing 100,000 modeling operations has only a minor impact on the memory and run-time efficiency of the VML.

#### Collision detection

The VML detects collisions between the current geometric model and any geometric object. The collision detection algorithm is also capable of taking a specified minimum separation distance into account. By using a hierarchical space decomposition, collisions are detected within milliseconds.

#### Surface export

The VML exports the surface of the current geometric model in form of a triangle mesh at any resolution. Thereby geometric features (edges and corners) are preserved.

#### Interactive photo-realistic visualization

In order to visualize the current geometric model at interactive frame rates, the VML provides a representation in form of a triangle mesh. With established technologies, like OpenGL or DirectX, photo realistic visualizations are possible.

#### High precision

One of the main features of the VML is its high modeling precision. During modeling the resulting geometric model is not approximated. This is achieved by spatial partitioning of the geometric objects and keeping only those parts, which contribute to the final surface.

#### Arbitrary sectional views

The VML allows to define any desired sectional view. In this illustration the cut off geometry is a cylinder with a round hole, illustrated in red color. Thereby the usage of a sectional view has no impact on the memory and run-time efficiency of the VML.

#### Surface vertification

The VML compares the surfaces of the current geometric model and the reference CAD model. Thereby for any point of view for all pixels on the screen the difference values are calculated at interactive frame rates. The difference value is the normal distance of a point on the current surface to the reference surface.

#### Ease of integration

The VML has a very straightforward programming interface. For example, a CAM system can use the VML for machining simulation. Thereby it utilizes the solid sweeping and modeling module for material removal simulation and the collision detection and surface verification module for CNC verification.

## HIGH PRECISION SOLID MODELING OF DETAILED GEOMETRIES IN REAL-TIME

The Virtual Modeling Library (VML) is a software library, which implements new algorithms for the exact geometric modeling of solids in real-time. It supports Constructive Solid Geometry (CSG) like operations and solid sweeping. The VML supports a good scalability relating the number of modeling operations. Even performing 100,000 modeling operations has only a minor impact on runtime- and memory efficiency. This makes the library best suited for industrial applications with combined needs in geometric accuracy, real-time behaviour, and scalability, like the simulation of material removal in machining processes with a high number of processing steps. Besides modeling the VML supports algorithms for interactive visualization, collision detection between any geometry and the current geometry, and surface verification of the current geometry against a reference CAD model. These algorithms fullfill the combined needs as well. In order to guarantee the real-time capability, the VML implements massive parallel algorithms, which make best use of the potential of modern hardware architectures, like Multi-Core Central Processing Units (CPUs) and Graphic Processing Units (GPUs). Beside the already mentioned features, the VML offers surface export, the definition of arbitrary sectional views, and the ease of integration.

The development of key parts of the methods implemented in the VML, was funded by the European Regional Development Fund and by the Upper Austria State Government under the Regional Competitiveness Program 2007-2013 Upper Austria.