Our Innovations

3D Boolean Operations

3D boolean operations are essential for creating complex shapes and forms that would be difficult or time-consuming to model from scratch using traditional modeling techniques.

Mesh Healing

Mesh healing is a critical process to prepare mesh for further use in the 3D pipeline, ensuring that mesh models are watertight, error-free, and suitable for applications such as s...

Three main 3D data representations

Mesh -triangles assembled in manifold surfaces

Voxels Iso Surface Features (

Voxels (drawn as Iso Surface) – 3D raster image

point cloud processing

Point cloud - unordered set of 3D points

Mesh algorithms


Finds colliding faces of two meshes in realtime.


Finds minimal signed/unsigned distance between two meshes in realtime.

distance emasure meshlib features

Free form deformation

Applies free form transformation to mesh or finds best free form transformation to fit given points. Grey points – reference grid of free form transform (resolution is customizable)

Free Form Deformation Before meshlib features


Freeform Deformation After meshlib features


Laplacian deformation

It modifies a surface region following the movement of some fixed points in this region, and preserving curvature in other points Read area – deformed area (a few points were fixed on forehead)

Laplacian Deformation Before meshlib features


Laplacian Deformation After meshlib features


Fill/Stitch Hole(s)

Triangulates a hole in mesh, or stitch two holes with a tunnel. Different metrics could be used for triangulation.


fill holes after Meshlib features


Stitch Holes Before meshlib features


Stitch Holes Before meshlib features


Mesh Decimation

Decimation or simplification is reached by reducing the number of triangles, while preserving the overall initial shape and most prominent features.

MeshLib contains the fastest and best quality implementation among other open-source libraries. Also MeshLib has parallel decimation for gigantic (~10M triangles) meshes.

Mesh before: ~200k triangles

Mesh after: 20k triangles

Shortest Geodesic (surface) path building

The task is to find the shortest path between two points along the surface. The implementation is very fast and robust allowing its application in real-time editing:

Iterative Closest Points

ICP is for finding the best aligning transformation (from some transformation group, e.g. the group of all rigid transformations) for two meshes.





Tunnels fixing

MeshLib can detect and fix tunnels on surface. Here on the left a thin tunnel is detected, a cut is made, each side of which is filled with a disc-like patch to get a topological sphere on the right:

Topological torus

Topological sphere

3D Boolean Operations

MeshInspector contains two implementations of 3D Boolean operations:

  • Voxel-based, that first converts closed meshes in 3D raster image (voxels), then makes the operations, and then converts it back. Any self-intersections are supported in input meshes, and are automatically fixed in output.
  • Direct mesh-based operations , which can work even with not-closed meshes and supports various input degeneracies. The main advantage over voxel-based mode is higher performance and extreme precision not limited by the size of one voxel.

Sphere and Dino

Sphere – Dino (transparent)

Sphere – Dino form other side

Partial Offset

Offset selected part of mesh only and produce single component mesh as result.

Red faces are selected

Mesh with offset of selected parts

Segmentation by curvature

The task is to select a mesh region, separated from other mesh parts by a high curvature boundary (or some other metrics, including custom ones), given 2-3 points on the boundary.

The picture demonstrates segmentation of crests.

Each one is segmented by two points picked on its base

Compare with Precision

Effortlessly compare two models side by side, meticulously examining the surface distances. This innovative feature allows you to inspect the quality of your printed 3D model against the original CAD design. Identify even the slightest deviations and ensure your project meets the most stringent standards.

Distance map algorithms

Distance Map from mesh

Depth map from some plane to mesh. Could be visualized in grey-scale image:– Black pixels of distance map – farthest– White pixels – closest



Distance Map from contours

It presents field of distances in contours plane from each pixel, to contours closest point.Can be signed or unsigned. Zero value corresponds to input contour points

Input contour

Signed distance map. Inner points have negative value white – the most “inner” point

Unsigned distance map. Inner points have positive value white – the most “inner” point

Distance Map iso-lines

Finds iso-line contour on distance map of any kind.

Mesh – distance map visualization
Red line – input contour
Blue lines – iso-lines

Distance Map merge

Merge min, max or subtraction of distance maps

Distance map A

Distance map B

Merge Maximum (intersection)

Merge Minimum (union)

Voxel-based algorithms


Voxel object presents 3D grid in space (visualized via Iso surface). The Picture demonstrates dense voxels and its slice.

Semi-automatic segmentation

The picture demonstrates separation of tooth from the skull voxels.

CT-Reconstruction algorithm

CT-Reconstruction algorithm implementation allows you to obtain dense volumes (voxel data) from a number of radiograph images. Voxel data generated by CT-Reconstruction

Point cloud algorithms

Points Sampling

Sampling – algorithm for taking representative subset of points. Uniform and grid sampling are implemented.

All points

Sampled points

Points Triangulation

Creating mesh from point cloud

Other features

3D Viewer: Hierarchical object model for scene description

3D Viewer: History stack

3D Viewer: Feature search

3D Viewer: Customizable viewports

Visualization Features

Python scripting

Looking for how MeshLib works under the hood?

Book a call with us