FastGeoMesh 1.3.1
dotnet add package FastGeoMesh --version 1.3.1
NuGet\Install-Package FastGeoMesh -Version 1.3.1
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="FastGeoMesh" Version="1.3.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FastGeoMesh" Version="1.3.1" />
<PackageReference Include="FastGeoMesh" />
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 FastGeoMesh --version 1.3.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: FastGeoMesh, 1.3.1"
#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 FastGeoMesh@1.3.1
#: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=FastGeoMesh&version=1.3.1
#tool nuget:?package=FastGeoMesh&version=1.3.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
FastGeoMesh
Fast quad meshing for prismatic volumes from 2D footprints and Z elevations.
⚡ Performance
Sub-millisecond meshing with .NET 8 optimizations:
- Simple Prism: ~305 μs, 87 KB
- Complex Geometry: ~340 μs, 87 KB
- With Holes: ~907 μs, 1.3 MB
- Geometry Ops: < 10 μs, zero allocations
Benchmarked on .NET 8.0.20, X64 RyuJIT AVX2
Features
- 🏗️ Prism mesher (side faces + caps)
- 📐 Rectangle fast-path + generic tessellation
- 🎯 Quad quality scoring & threshold (MinCapQuadQuality)
- 📑 Optional fallback explicit cap triangles (OutputRejectedCapTriangles)
- ⚙️ Constraint Z levels & geometry integration
- 📤 Exporters: OBJ (quads+triangles), glTF (triangulated), SVG (top view)
Quick start
using FastGeoMesh.Geometry;
using FastGeoMesh.Meshing;
using FastGeoMesh.Structures;
using FastGeoMesh.Meshing.Exporters;
// Define geometry (~305μs meshing time)
var poly = Polygon2D.FromPoints(new[]{
new Vec2(0,0), new Vec2(20,0), new Vec2(20,5), new Vec2(0,5)
});
var structure = new PrismStructureDefinition(poly, -10, 10);
structure.AddConstraintSegment(new Segment2D(new Vec2(0,0), new Vec2(20,0)), 2.5);
// Fast preset for optimal performance
var options = MesherOptions.CreateBuilder()
.WithFastPreset()
.WithTargetEdgeLengthXY(0.5)
.WithTargetEdgeLengthZ(1.0)
.WithRejectedCapTriangles(true)
.Build();
// Generate and export
var mesh = new PrismMesher().Mesh(structure, options);
var indexed = IndexedMesh.FromMesh(mesh, options.Epsilon);
ObjExporter.Write(indexed, "mesh.obj");
GltfExporter.Write(indexed, "mesh.gltf");
SvgExporter.Write(indexed, "mesh.svg");
Performance Presets
// Fast: ~305μs, 87KB - Real-time applications
var fast = MesherOptions.CreateBuilder().WithFastPreset().Build();
// High-Quality: ~1.3ms, 17MB - CAD precision
var quality = MesherOptions.CreateBuilder().WithHighQualityPreset().Build();
License: MIT | Docs & source: https://github.com/MabinogiCode/FastGeoMesh
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- LibTessDotNet (>= 1.1.15)
- Microsoft.Extensions.ObjectPool (>= 8.0.11)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
1.1.0: Added cap triangle emission (OutputRejectedCapTriangles), triangle support in mesh/indexed + OBJ exporter, docs updated.