@@ -225,16 +225,17 @@ public ManifoldBindings(File cacheDirectory) throws Exception {
225225 // ===== Refinement =====
226226
227227 // ManifoldManifold* manifold_refine(void* mem, ManifoldManifold* m, int refine);
228- load ("manifold_refine" , ValueLayout .ADDRESS , ValueLayout .ADDRESS , ValueLayout .ADDRESS , ValueLayout . JAVA_INT );
228+ load ("manifold_refine" , ValueLayout .ADDRESS , ValueLayout .ADDRESS , ValueLayout .JAVA_INT );
229229
230230 // ManifoldManifold* manifold_refine_to_length(void* mem, ManifoldManifold* m, double length);
231- load ("manifold_refine_to_length" , ValueLayout .ADDRESS , ValueLayout . ADDRESS , ValueLayout .ADDRESS ,
231+ load ("manifold_refine_to_length" , ValueLayout .ADDRESS , ValueLayout .ADDRESS ,
232232 ValueLayout .JAVA_DOUBLE );
233233
234234 // ManifoldManifold* manifold_refine_to_tolerance(void* mem, ManifoldManifold* m, double tolerance);
235- load ("manifold_refine_to_tolerance" , ValueLayout .ADDRESS , ValueLayout .ADDRESS , ValueLayout .ADDRESS ,
235+ load ("manifold_refine_to_tolerance" , ValueLayout .ADDRESS , ValueLayout .ADDRESS ,
236+ ValueLayout .JAVA_DOUBLE );
237+ load ("manifold_simplify" , ValueLayout .ADDRESS , ValueLayout .ADDRESS ,
236238 ValueLayout .JAVA_DOUBLE );
237-
238239 // ManifoldManifold* manifold_smooth_by_normals(void* mem, ManifoldManifold* m, int normal_idx);
239240 load ("manifold_smooth_by_normals" , ValueLayout .ADDRESS , ValueLayout .ADDRESS , ValueLayout .ADDRESS ,
240241 ValueLayout .JAVA_INT );
@@ -719,7 +720,10 @@ public MemorySegment refineToTolerance(MemorySegment m, double tolerance) throws
719720 MemorySegment mem = (MemorySegment ) functions .get ("manifold_alloc_manifold" ).invoke ();
720721 return (MemorySegment ) functions .get ("manifold_refine_to_tolerance" ).invoke (mem , m , tolerance );
721722 }
722-
723+ public MemorySegment simplify (MemorySegment m , double tolerance ) throws Throwable {
724+ MemorySegment mem = (MemorySegment ) functions .get ("manifold_alloc_manifold" ).invoke ();
725+ return (MemorySegment ) functions .get ("manifold_simplify" ).invoke (mem , m , tolerance );
726+ }
723727 public MemorySegment smoothByNormals (MemorySegment m , int normalIdx ) throws Throwable {
724728 MemorySegment mem = (MemorySegment ) functions .get ("manifold_alloc_manifold" ).invoke ();
725729 return (MemorySegment ) functions .get ("manifold_smooth_by_normals" ).invoke (mem , m , normalIdx );
0 commit comments