![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <IncrementalMeshDijkstra.h>
Classes | |
| struct | FSeedPoint |
Public Member Functions | |
| TIncrementalMeshDijkstra (const PointSetType *PointSetIn) | |
| void | AddSeedPoints (const TArray< FSeedPoint > &SeedPointsIn) |
| int32 | GetSeedExternalIDForPointSetID (int32 PointID) |
| int32 | FindMaxGraphDistancePointID () const |
| bool | HasDistance (int32 PointID) const |
| double | GetDistance (int32 PointID) const |
| bool | FindPathToNearestSeed (int32 PointID, TArray< int32 > &PathToSeedOut, int32 MaxLength=100000) |
Static Public Member Functions | |
| static double | InvalidDistance () |
Public Attributes | |
| const PointSetType * | PointSet |
| TUniqueFunction< FVector3d(int32)> | GetPositionFunc |
TIncrementalMeshDijkstra computes graph distances on a mesh from seed point(s) using Dijkstra's algorithm. Derived from TMeshDijkstra. This Incremental variant allows adding new Seed points to an already-computed solution.
|
inline |
Construct TMeshDijkstra for the given PointSet. We will hold a reference to this PointSet for the lifetime of the class.
|
inline |
Add new SeedPoints to the current solution, and then propagate updated graph distances to any points closer to these new seed points than to existing seed points.
|
inline |
|
inline |
Find path from a point to the nearest seed point
| PointID | starting point, assumption is that we have computed dijkstra to this point |
| PathToSeedOut | path is returned here, includes PointID and seed point as last element |
| MaxLength | if PathToSeedOut grows beyond this length, we abort the search |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
| TUniqueFunction<FVector3d(int32)> UE::Geometry::TIncrementalMeshDijkstra< PointSetType >::GetPositionFunc |
Return the 3D Position of a given Point in the PointSet. This function is set to PointSet->GetVertex() in the constructor below, but can be replaced with an external function if necessary (eg to provide deformed mesh positions, etc)
| const PointSetType* UE::Geometry::TIncrementalMeshDijkstra< PointSetType >::PointSet |
PointSet we are calculating on