DG Kernel (ActiveX) Documentation


Skip Navigation Links.
Skip Navigation LinksHome Page > Models > Entities > Operations and Algorithms > Euclidean Shortest Path Go to DGKC docs Search Documentation


Euclidean Shortest Path Algorithm

Euclidean Shortest Path (ESP) algorithm calculates shortest length curve (path) between two points in 3D space, which does not intersect any objects involved in the calculation.

The Start and Target points must not be located inside of any object involved, but very often the points are located on surface(s) of one or several objects.

ESP algorithm requires some initial path connecting the points to be defined to perform the optimisation. Most often the problem has multiple solutions. The supplied initial path is used to select the required solution. Use a trivial path containing only start and target points when the initial path is not known or choice of solution does not matter (see below).

The optimal solution can be considered as the result of constrained movement of the initial path as if it was a stretched rubber band. The solution is pseudo global. In most situations it will be the best solution achievable by continuous transformation of the initial path.

To perform the calculation use IEuclideanShortestPath_DG interface. The interface can be obtained by calling IObjectGenerator_DG.Create<IEuclideanShortestPath_DG>() method.

Objects involved in the calculation must have Mesh geometry type. Use IEntity_DG.SetGeometryType("Mesh") to convert objects to mesh programmatically. This conversion can also be performed via saving to a mesh file format vrml, stl, obj, etc.

See more details at IEuclideanShortestPath_DG

See also: Euclidean Shortest Path sample