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 (drawn as Iso Surface) – 3D raster image

Point cloud - unordered set of 3D points

Mesh algorythms

Collisions

Finds colliding faces of two meshes in realtime.

Distances

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

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)

Before

After

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)

Before

After

Fill/Stitch Hole(s)

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

Before

After

Before

After

Mesh Decimation

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

Mesh before: ~200k triangles

Mesh after: 20k triangles

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

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.

Before

After

Before

After

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

Boolean Difference Example

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

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

Before

After

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

Voxels

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

Point cloud algorithms

Hierarchical object model for scene description​

History stack​

Feature search

Customizable viewports

Visualization Features

Python scripting

Looking for how MeshLib works under the hood?

Book a call with us