MeshLib C# Docs
Loading...
Searching...
No Matches
MR.EdgePathsAStarBuilder Class Reference

the class is responsible for finding shortest edge paths on a mesh in Euclidean metric using A* heuristics Generated from class MR.EdgePathsAStarBuilder. Base classes: Direct: (non-virtual) MR::EdgePathsBuilderT<MR.MetricToAStarPenalty> This is the non-const half of the class. More...

Inheritance diagram for MR.EdgePathsAStarBuilder:

Public Member Functions

unsafe EdgePathsAStarBuilder (MR._ByValue_EdgePathsAStarBuilder _other)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
 EdgePathsAStarBuilder (Const_EdgePathsAStarBuilder _other)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
 EdgePathsAStarBuilder (EdgePathsAStarBuilder _other)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
unsafe EdgePathsAStarBuilder (MR.Const_Mesh mesh, MR.VertId target, MR.VertId start)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
unsafe EdgePathsAStarBuilder (MR.Const_Mesh mesh, MR.Const_MeshTriPoint target, MR.Const_MeshTriPoint start)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
unsafe void reset (MR.Std.Const_Function_Float_From_MREdgeId metric)
 clears everything without freeing memory, and sets new metric Generated from method MR.EdgePathsAStarBuilder.reset.
unsafe bool addStart (MR.VertId startVert, float startMetric)
 compares proposed metric with best value known for startVert; if proposed metric is smaller then adds it in the queue and returns true Generated from method MR.EdgePathsAStarBuilder.addStart.
unsafe MR.EdgePathsBuilderT_MRMetricToAStarPenalty.ReachedVert reachNext ()
 include one more vertex in the final forest, returning vertex-info for the newly reached vertex; returns invalid VertId in v-field if no more vertices left Generated from method MR.EdgePathsAStarBuilder.reachNext.
unsafe bool addOrgRingSteps (MR.EdgePathsBuilderT_MRMetricToAStarPenalty.Const_ReachedVert rv)
 adds steps for all origin ring edges of the reached vertex; returns true if at least one step was added Generated from method MR.EdgePathsAStarBuilder.addOrgRingSteps.
unsafe MR.EdgePathsBuilderT_MRMetricToAStarPenalty.ReachedVert growOneEdge ()
 the same as reachNext() + addOrgRingSteps() Generated from method MR.EdgePathsAStarBuilder.growOneEdge.
Public Member Functions inherited from MR.Const_EdgePathsAStarBuilder
virtual void Dispose ()
unsafe Const_EdgePathsAStarBuilder (MR._ByValue_EdgePathsAStarBuilder _other)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
 Const_EdgePathsAStarBuilder (Const_EdgePathsAStarBuilder _other)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
 Const_EdgePathsAStarBuilder (EdgePathsAStarBuilder _other)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
unsafe Const_EdgePathsAStarBuilder (MR.Const_Mesh mesh, MR.VertId target, MR.VertId start)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
unsafe Const_EdgePathsAStarBuilder (MR.Const_Mesh mesh, MR.Const_MeshTriPoint target, MR.Const_MeshTriPoint start)
 Generated from constructor MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder.
unsafe bool done ()
 returns true if further edge forest growth is impossible Generated from method MR.EdgePathsAStarBuilder.done.
unsafe float doneDistance ()
 returns path length till the next candidate vertex or maximum float value if all vertices have been reached Generated from method MR.EdgePathsAStarBuilder.doneDistance.
unsafe MR.Phmap.Const_FlatHashMap_MRVertId_MRVertPathInfo vertPathInfoMap ()
 gives read access to the map from vertex to path to it Generated from method MR.EdgePathsAStarBuilder.vertPathInfoMap.
unsafe MR.? Const_VertPathInfo getVertInfo (MR.VertId v)
 returns one element from the map (or nullptr if the element is missing) Generated from method MR.EdgePathsAStarBuilder.getVertInfo.
unsafe MR.Std.Vector_MREdgeId getPathBack (MR.VertId backpathStart)
 returns the path in the forest from given vertex to one of start vertices Generated from method MR.EdgePathsAStarBuilder.getPathBack.
unsafe MR.VertId trackPathBack (MR.VertId v, MR.Std.Vector_MREdgeId? res=null)
 tracks back path in the forest from the given vertex to one of start vertices, which is returned; optionally appends tracked path (res) Generated from method MR.EdgePathsAStarBuilder.trackPathBack.

Static Public Member Functions

static unsafe implicit operator MR.EdgePathsBuilderT_MRMetricToAStarPenalty (EdgePathsAStarBuilder self)
Static Public Member Functions inherited from MR.Const_EdgePathsAStarBuilder
static unsafe implicit operator MR.Const_EdgePathsBuilderT_MRMetricToAStarPenalty (Const_EdgePathsAStarBuilder self)

Additional Inherited Members

Protected Member Functions inherited from MR.Const_EdgePathsAStarBuilder
virtual unsafe void Dispose (bool disposing)

Detailed Description

the class is responsible for finding shortest edge paths on a mesh in Euclidean metric using A* heuristics Generated from class MR.EdgePathsAStarBuilder. Base classes: Direct: (non-virtual) MR::EdgePathsBuilderT<MR.MetricToAStarPenalty> This is the non-const half of the class.

Constructor & Destructor Documentation

◆ EdgePathsAStarBuilder() [1/5]

unsafe MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder ( MR._ByValue_EdgePathsAStarBuilder _other)
inline

◆ EdgePathsAStarBuilder() [2/5]

MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder ( Const_EdgePathsAStarBuilder _other)
inline

◆ EdgePathsAStarBuilder() [3/5]

MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder ( EdgePathsAStarBuilder _other)
inline

◆ EdgePathsAStarBuilder() [4/5]

unsafe MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder ( MR.Const_Mesh mesh,
MR.VertId target,
MR.VertId start )
inline

◆ EdgePathsAStarBuilder() [5/5]

unsafe MR.EdgePathsAStarBuilder.EdgePathsAStarBuilder ( MR.Const_Mesh mesh,
MR.Const_MeshTriPoint target,
MR.Const_MeshTriPoint start )
inline

Member Function Documentation

◆ addOrgRingSteps()

unsafe bool MR.EdgePathsAStarBuilder.addOrgRingSteps ( MR.EdgePathsBuilderT_MRMetricToAStarPenalty.Const_ReachedVert rv)
inline

adds steps for all origin ring edges of the reached vertex; returns true if at least one step was added Generated from method MR.EdgePathsAStarBuilder.addOrgRingSteps.

◆ addStart()

unsafe bool MR.EdgePathsAStarBuilder.addStart ( MR.VertId startVert,
float startMetric )
inline

compares proposed metric with best value known for startVert; if proposed metric is smaller then adds it in the queue and returns true Generated from method MR.EdgePathsAStarBuilder.addStart.

◆ growOneEdge()

unsafe MR.EdgePathsBuilderT_MRMetricToAStarPenalty.ReachedVert MR.EdgePathsAStarBuilder.growOneEdge ( )
inline

◆ operator MR.EdgePathsBuilderT_MRMetricToAStarPenalty()

unsafe implicit MR.EdgePathsAStarBuilder.operator MR.EdgePathsBuilderT_MRMetricToAStarPenalty ( EdgePathsAStarBuilder self)
inlinestatic

◆ reachNext()

unsafe MR.EdgePathsBuilderT_MRMetricToAStarPenalty.ReachedVert MR.EdgePathsAStarBuilder.reachNext ( )
inline

include one more vertex in the final forest, returning vertex-info for the newly reached vertex; returns invalid VertId in v-field if no more vertices left Generated from method MR.EdgePathsAStarBuilder.reachNext.

◆ reset()

unsafe void MR.EdgePathsAStarBuilder.reset ( MR.Std.Const_Function_Float_From_MREdgeId metric)
inline

clears everything without freeing memory, and sets new metric Generated from method MR.EdgePathsAStarBuilder.reset.


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