class_docstr: An internal class to manage filters/algorithms for polydata datasets.
class_docstr_tok: ["An","internal","class","to","manage","filters\/algorithms","for","polydata","datasets","."]
docstr: Calculate the geodesic distance between two vertices using Dijkstra's algorithm.
  
  Parameters
  ----------
  start_vertex : int
      Vertex index indicating the start point of the geodesic segment.
  
  end_vertex : int
      Vertex index indicating the end point of the geodesic segment.
  
  use_scalar_weights : bool, default: False
      If ``True``, use scalar values in the edge weight.
      This only works for point data.
  
  progress_bar : bool, default: False
      Display a progress bar to indicate progress.
  
  Returns
  -------
  float
      Length of the geodesic segment.
  
  Examples
  --------
  >>> import pyvista as pv
  >>> sphere = pv.Sphere()
  >>> length = sphere.geodesic_distance(0, 100)
  >>> f'Length is {length:.3f}'
  'Length is 0.812'
  
  See :ref:`geodesic_example` for more examples using this filter.
docstr_tok: ["Calculate","the","geodesic","distance","between","two","vertices","using","Dijkstra","'s","algorithm",".","Parameters","--","--","--","--","--","start_vertex",":","int","Vertex","index","indicating","the","start","point","of","the","geodesic","segment",".","end_vertex",":","int","Vertex","index","indicating","the","end","point","of","the","geodesic","segment",".","use_scalar_weights",":","bool",",","default",":","False","If","``","True","``",",","use","scalar","values","in","the","edge","weight",".","This","only","works","for","point","data",".","progress_bar",":","bool",",","default",":","False","Display","a","progress","bar","to","indicate","progress",".","Returns","--","--","--","-","float","Length","of","the","geodesic","segment",".","Examples","--","--","--","--",">",">",">","import","pyvista","as","pv",">",">",">","sphere","=","pv.Sphere","(",")",">",">",">","length","=","sphere.geodesic_distance","(","0",",","100",")",">",">",">","f'Length","is","{","length",":",".3f","}","'","'Length","is","0.812'","See",":","ref",":","`","geodesic_example","`","for","more","examples","using","this","filter","."]
code: def geodesic_distance(
      self,
      start_vertex,
      end_vertex,
      use_scalar_weights=False,
      progress_bar=False,
  ):
      """Calculate the geodesic distance between two vertices using Dijkstra's algorithm.
  
      Parameters
      ----------
      start_vertex : int
          Vertex index indicating the start point of the geodesic segment.
  
      end_vertex : int
          Vertex index indicating the end point of the geodesic segment.
  
      use_scalar_weights : bool, default: False
          If ``True``, use scalar values in the edge weight.
          This only works for point data.
  
      progress_bar : bool, default: False
          Display a progress bar to indicate progress.
  
      Returns
      -------
      float
          Length of the geodesic segment.
  
      Examples
      --------
      >>> import pyvista as pv
      >>> sphere = pv.Sphere()
      >>> length = sphere.geodesic_distance(0, 100)
      >>> f'Length is {length:.3f}'
      'Length is 0.812'
  
      See :ref:`geodesic_example` for more examples using this filter.
  
      """
      path = self.geodesic(
          start_vertex,
          end_vertex,
          use_scalar_weights=use_scalar_weights,
      )
      sizes = path.compute_cell_sizes(
          length=True,
          area=False,
          volume=False,
          progress_bar=progress_bar,
      )
      distance = np.sum(sizes["Length"])
      del path
      del sizes
      return distance
  
imports: import collections.abc
  import warnings
  import numpy
  import pyvista
  from pyvista.core import _vtk_core
  from pyvista.core.errors import MissingDataError, NotAllTrianglesError, PyVistaFutureWarning, VTKVersionError
  from pyvista.core.filters import _get_output, _update_alg
  from pyvista.core.filters.data_set import DataSetFilters
  from pyvista.core.utilities.arrays import FieldAssociation, get_array, get_array_association, set_default_active_scalars, vtk_id_list_to_array
  from pyvista.core.utilities.geometric_objects import NORMALS
  from pyvista.core.utilities.helpers import generate_plane, wrap
  from pyvista.core.utilities.misc import abstract_class, assert_empty_kwargs
label_desc: Use image node_id 26 for calling the PolyDataFilters obj's underlying member method code with example usage: obj.geodesic_distance(start_vertex, end_vertex, use_scalar_weights, progress_bar) and returns: distance