MeshLib Java Docs
Loading...
Searching...
No Matches
meshlib.NormalsToPoints Class Reference
Inheritance diagram for meshlib.NormalsToPoints:

Public Member Functions

 NormalsToPoints (java.lang.foreign.MemorySegment ptr, boolean owned, java.lang.Object owner)
 NormalsToPoints ()
 NormalsToPoints (meshlib.NormalsToPoints _other)
meshlib.NormalsToPoints assignFromAnother (meshlib.NormalsToPoints _other)
void prepare (meshlib.MeshTopology topology, java.lang.Float guideWeight, meshlib.VertBitSet region)
void run (meshlib.VertCoords guide, meshlib.FaceNormals normals, meshlib.VertCoords points)
void run (meshlib.VertCoords guide, meshlib.FaceNormals normals, meshlib.VertCoords points, float maxInitialDistSq)
Public Member Functions inherited from meshlib.CppObject
final java.lang.foreign.MemorySegment rawPointer ()
final boolean isOwned ()
final void close ()
final java.lang.foreign.MemorySegment release ()

Additional Inherited Members

Protected Member Functions inherited from meshlib.CppObject
 CppObject (java.lang.foreign.MemorySegment ptr, java.util.function.Consumer< java.lang.foreign.MemorySegment > destroy, java.lang.Object owner)

Detailed Description

The purpose of this class is to update vertex positions given target triangle normals; see the article "Static/Dynamic Filtering for Mesh Geometry" Generated from class MR::NormalsToPoints.

Instances created here own their C++ objects, see CppObject.

Constructor & Destructor Documentation

◆ NormalsToPoints() [1/3]

meshlib.NormalsToPoints.NormalsToPoints ( java.lang.foreign.MemorySegment ptr,
boolean owned,
java.lang.Object owner )

Wraps a pointer from the C bindings. If owned, the object is destroyed when the wrapper dies. owner is kept alive as long as this wrapper is. Not for normal use.

◆ NormalsToPoints() [2/3]

meshlib.NormalsToPoints.NormalsToPoints ( )

Constructs an empty (default-constructed) instance.

Calls MR_NormalsToPoints_DefaultConstruct().

◆ NormalsToPoints() [3/3]

meshlib.NormalsToPoints.NormalsToPoints ( meshlib.NormalsToPoints _other)

Generated from constructor MR::NormalsToPoints::NormalsToPoints. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object.

Calls MR_NormalsToPoints_ConstructFromAnother().

Member Function Documentation

◆ assignFromAnother()

meshlib.NormalsToPoints meshlib.NormalsToPoints.assignFromAnother ( meshlib.NormalsToPoints _other)

Generated from method MR::NormalsToPoints::operator=. The reference to things referred to by the parameter _other (if any) might be preserved in this object.

Calls MR_NormalsToPoints_AssignFromAnother().

◆ prepare()

void meshlib.NormalsToPoints.prepare ( meshlib.MeshTopology topology,
java.lang.Float guideWeight,
meshlib.VertBitSet region )

builds linear system and prepares a solver for it; please call it only once for mesh, and then run as many times as you like

Parameters
guideWeighthow much resulting points must be attracted to initial points, must be > 0
regionif given, then only these vertices are moved by run(), and all other vertices are fixed Generated from method MR::NormalsToPoints::prepare.

Calls MR_NormalsToPoints_prepare().

◆ run() [1/2]

void meshlib.NormalsToPoints.run ( meshlib.VertCoords guide,
meshlib.FaceNormals normals,
meshlib.VertCoords points )

performs one iteration consisting of projection of all triangles on planes with given normals and finding best points from them

Parameters
guidetarget vertex positions to avoid under-determined system
normalstarget face normals
pointsinitial approximation on input, updated approximation on output maxInitialDistSq the maximum squared distance between a point and its position in (guide) Generated from method MR::NormalsToPoints::run.

Calls MR_NormalsToPoints_run_3().

◆ run() [2/2]

void meshlib.NormalsToPoints.run ( meshlib.VertCoords guide,
meshlib.FaceNormals normals,
meshlib.VertCoords points,
float maxInitialDistSq )

Generated from method MR::NormalsToPoints::run.

Calls MR_NormalsToPoints_run_4().


The documentation for this class was generated from the following file: