Over in PyVista, we’re running into a slight bug when using the `vtkDijkstraGraphGeodesicPath`

algorithm to calculate the geodesic path between two vertices on a surface mesh. When playing around with the algorithm, I happened to choose vertices on this particular mesh that the `vtkDijkstraGraphGeodesicPath`

appears to not be able to find the shortest path.

Load this example file: globe.vtk (45.1 KB)

Then try to find the path between nodes `10`

and `500`

.

Please note that I am using PyVista to perform the file IO and plotting as I want to focus this discussion on the usage of the `vtkDijkstraGraphGeodesicPath`

algorithm.

```
import vtk
import pyvista as pv
# read the mesh
sphere = pv.read('globe.vtk')
# Run the Dijkstra algorithm
dijkstra = vtk.vtkDijkstraGraphGeodesicPath()
dijkstra.SetInputData(sphere)
dijkstra.SetStartVertex(10)
dijkstra.SetEndVertex(500)
dijkstra.Update()
geodesic = pv.wrap(dijkstra.GetOutput())
```

And now plot it in comparison to the edges of the input mesh:

```
p = pv.Plotter()
p.add_mesh(geodesic, line_width=10, color='red', label='Geodesic Path')
p.add_mesh(sphere, show_edges=True, color=True)
p.add_point_labels(sphere.points[[10, 500]], ['Index 10', 'Index 500'],
point_size=15, color='blue', font_size=24)
# View the path
p.camera_position = [(-24874896399.14252, 5320221544.881892, 14139125256.713934),
(21057021.541644454, -143014260.7912798, 115865941.12124935),
(0.48576786647743864, -0.02878481343390217, 0.8736137672985315)]
p.add_legend()
p.show()
```

Any help on figuring out why this particular example isn’t resulting in the shortest path would be greatly appreciated!