MeshLib Python Docs
Loading...
Searching...
No Matches
meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty Class Reference

Classes

class  ReachedVert
 

Public Member Functions

None __init__ (self, MeshTopology topology, func_float_from_Id_EdgeTag metric)
 
None __init__ (self, EdgePathsBuilderT_TrivialMetricToPenalty arg0)
 
bool addOrgRingSteps (self, EdgePathsBuilderT_TrivialMetricToPenalty.ReachedVert rv)
 
bool addStart (self, VertId startVert, float startMetric)
 
bool done (self)
 
float doneDistance (self)
 
std_vector_Id_EdgeTag getPathBack (self, VertId backpathStart)
 
VertPathInfo getVertInfo (self, VertId v)
 
EdgePathsBuilderT_TrivialMetricToPenalty.ReachedVert growOneEdge (self)
 
EdgePathsBuilderT_TrivialMetricToPenalty.ReachedVert reachNext (self)
 
phmap_flat_hash_map_Id_VertTag_VertPathInfo vertPathInfoMap (self)
 

Detailed Description

Generated from:  MR::EdgePathsBuilderT<MR::TrivialMetricToPenalty>
Aliases:  EdgePathsBuilder

the class is responsible for finding smallest metric edge paths on a mesh

Constructor & Destructor Documentation

◆ __init__() [1/2]

None meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.__init__ ( self,
MeshTopology topology,
func_float_from_Id_EdgeTag metric )

◆ __init__() [2/2]

None meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.__init__ ( self,
EdgePathsBuilderT_TrivialMetricToPenalty arg0 )
Implicit copy constructor.

Member Function Documentation

◆ addOrgRingSteps()

bool meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.addOrgRingSteps ( self,
EdgePathsBuilderT_TrivialMetricToPenalty.ReachedVert rv )
adds steps for all origin ring edges of the reached vertex;
returns true if at least one step was added

◆ addStart()

bool meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.addStart ( self,
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

◆ done()

bool meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.done ( self)
returns true if further edge forest growth is impossible

◆ doneDistance()

float meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.doneDistance ( self)
returns path length till the next candidate vertex or maximum float value if all vertices have been reached

◆ getPathBack()

std_vector_Id_EdgeTag meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.getPathBack ( self,
VertId backpathStart )
returns the path in the forest from given vertex to one of start vertices

◆ getVertInfo()

VertPathInfo meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.getVertInfo ( self,
VertId v )
returns one element from the map (or nullptr if the element is missing)

◆ growOneEdge()

EdgePathsBuilderT_TrivialMetricToPenalty.ReachedVert meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.growOneEdge ( self)
the same as reachNext() + addOrgRingSteps()

◆ reachNext()

EdgePathsBuilderT_TrivialMetricToPenalty.ReachedVert meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.reachNext ( self)
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

◆ vertPathInfoMap()

phmap_flat_hash_map_Id_VertTag_VertPathInfo meshlib.mrmeshpy.EdgePathsBuilderT_TrivialMetricToPenalty.vertPathInfoMap ( self)
gives read access to the map from vertex to path to it

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