Skip to main content
`Ctrl`+`K`

# SpatialIndex

class tracklib.core.SpatialIndex.SpatialIndex(collection, resolution=None, margin=0.05, verbose=True)

  This module contains the class to manipulate a spatial Index.

  __init__(collection, resolution=None, margin=0.05, verbose=True)

    Constructor of `SaptialIndex` class

    TODO: update documentation

    ## Parameters

    features : bbox() + iterable

    > TrackCollectionon construit une grille

    >   dont l’emprise est calculée sur la fonction getBBox de TrackCollection et dans un deuxième temps on appelle addSegment([c1,c2], [i,j]) pour chaque segment [c1,c2] (localisé entre les points GPS i et i+1) de chaque trace j, de la collection.

    > Networkon construit une grille (de taille 100 x 100) par défaut,

    >   dont l’emprise est calculée sur celle du réseau, et on appelle addSegment ([c1,c2], [i,j]) pour chaque segment [c1,c2] (localisé entre les points GPS i et i+1) de chaque tronçon j, du réseau.

    resolutiontuple (xsize, ysize)

      DESCRIPTION. The default is (100, 100).

    ## Returns

    None.

  __str__()

    TODO

  addFeature(track, num)

    TODO

  __addSegment(coord1, coord2, data)

    TODO

    data de type: int, liste, tuple, dictionnaire ajoute les données data dans toutes les cellules de la grille

    > traversée par le segment [coord1, coord2] avec coord1 : indices de la grille

  __addPoint(coord, data)

    TODO

  __getCell(coord)

    TODO

  plot(base=True, append=True, v=None)
  highlight(i, j, v=None, sym='r-', size=0.5)
  request(obj, j=None)

    Request function to get data registered in spatial index Inputs:

    > - request(i,j) returns data registered in cell (i,j)
    >     - i: row index i of spatial index grid

    >         - j: col index j of spatial index grid

    > - request(coord) returns data registered in the cell containing GeoCoords or ENUCoors object coord

    > - request(list) returns data registered in all cells crossed by a segment list=[coord1, coord2].

    > - request(track) returns data registered in all cells crossed by a track.

    Return type

      `list`[`Any`]

  neighborhood(obj, j=None, unit=0)

    TODO

    retourne toutes les données (sous forme de liste simple) référencées dans la cellule (i,j).

    Si unit=-1, calcule la valeur minimale à donner à unit, pour que la liste ne soit pas vide*.

  groundDistanceToUnits(distance)

    TODO

  __neighboringcells(i, j, u=0, incremental=False)

    TODO

  __addCellValuesInTAB(TAB, cell)

    TODO

  __cellsCrossSegment(coord1, coord2)

    TODO

  save(filename)

    TODO

  load()

    TODO