polydera.trueform 0.9.4

dotnet add package polydera.trueform --version 0.9.4
                    
NuGet\Install-Package polydera.trueform -Version 0.9.4
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="polydera.trueform" Version="0.9.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="polydera.trueform" Version="0.9.4" />
                    
Directory.Packages.props
<PackageReference Include="polydera.trueform" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add polydera.trueform --version 0.9.4
                    
#r "nuget: polydera.trueform, 0.9.4"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package polydera.trueform@0.9.4
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=polydera.trueform&version=0.9.4
                    
Install as a Cake Addin
#tool nuget:?package=polydera.trueform&version=0.9.4
                    
Install as a Cake Tool

trueform — The STL for Geometry

Fast and exact mesh booleans, spatial queries, arrangements, registration, and remeshing. Composable algorithms on your data — zero-copy views, reusable spatial trees, first-class topology. Header-only C++17, parallel via oneTBB.

Read the article: The STL for Geometry — What the STL philosophy of separating algorithms from data looks like when applied to geometry.

polydera.com/trueform | Documentation | ▶ Try it live

Installation

Install-Package polydera.trueform

The package depends on inteltbb.devel.win, which is pulled automatically.

Requirements

  • C++17 (/std:c++17 or later)
  • MSVC 19.14+

Quick Start

#include <trueform/trueform.hpp>

// Read meshes
auto mesh = tf::read_stl("surface.stl");
auto polygons = mesh.polygons();

// Spatial queries — build once, query many
tf::aabb_tree<int, float, 3> tree(polygons, tf::config_tree(4, 4));
auto form = polygons | tf::tag(tree);
auto [id, dist2, pt] = tf::neighbor_search(form, tf::make_point(1.f, 2.f, 3.f));

// Boolean union
auto [result, labels, face_labels] = tf::make_boolean(
    polygons0, polygons1, tf::boolean_op::merge);

// Write result
tf::write_stl(result, "output.stl");

Benchmarks

Operation Input Time Speedup Baseline TrueForm
Boolean Union 2 × 1M 28 ms MeshLib (int32 exact + SoS) exact predicates, canonical topology
Mesh–Mesh Curves 2 × 1M 7 ms 233× CGAL Exact_predicates_inexact_constructions_kernel exact predicates, canonical topology
ICP Registration 1M 7.7 ms 93× libigl AABB tree, random subsampling
Self-Intersection 1M 78 ms 37× libigl EPECK (GMP/MPFR) exact predicates, canonical topology
Isocontours 1M, 16 cuts 3.8 ms 38× VTK vtkContourFilter exact predicates
Connected Components 1M 15 ms 10× CGAL parallel union-find
Boundary Paths 1M 12 ms 11× CGAL Hierholzer's algorithm
k-NN Query 500K 1.7 µs nanoflann k-d tree AABB tree
Mesh–Mesh Distance 2 × 1M 0.2 ms Coal (FCL) OBBRSS OBBRSS tree
Decimation (50%) 1M 72 ms 50× CGAL edge_collapse parallel partitioned collapse
Principal Curvatures 1M 25 ms 55× libigl parallel k-ring quadric fitting

Apple M4 Max, 16 threads, Clang -O3 -march=native. Full methodology

Documentation

Also available for Python and TypeScript.

License

Commercial license required. Contact info@polydera.com.

Product Compatible and additional computed target framework versions.
native native is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.9.4 36 5/22/2026
0.9.3 35 5/22/2026
0.9.0 88 5/17/2026
0.8.9 101 5/7/2026
0.8.8 112 4/30/2026
0.8.7 137 4/20/2026
0.8.1 135 4/12/2026
0.8.0 159 4/2/2026