Skip to main content

Implementation of Dijkstra's Shortest Path algorithm on 3D images.

Project description

PyPI version

dijkstra3d

Dijkstra's Shortest Path variants for 6, 18, and 26-connected 3D Image Volumes or 4 and 8-connected 2D images.

import dijkstra3d
import numpy as np

field = np.ones((512, 512, 512), dtype=np.int32)
source = (0,0,0)
target = (511, 511, 511)


# If you're working with a binary image with one color considered
# foreground the other background, use this function.
path = dijkstra3d.binary_dijkstra(field, source, target, background_color=0)
path = dijkstra3d.binary_dijkstra(
  field, source, target, 
  anisotropy=(2.0, 2.0, 1.0),
)

# path is an [N,3] numpy array i.e. a list of x,y,z coordinates
# terminates early, default is 26 connected
path = dijkstra3d.dijkstra(field, source, target, connectivity=26) 
path = dijkstra3d.dijkstra(field, source, target, bidirectional=True) # 2x memory usage, faster

# Use distance from target as a heuristic (A* search)
# Does nothing if bidirectional=True (it's just not implemented)
path = dijkstra3d.dijkstra(field, source, target, compass=True) 

# parental_field is a performance optimization on dijkstra for when you
# want to return many target paths from a single source instead of
# a single path to a single target. `parents` is a field of parent voxels
# which can then be rapidly traversed to yield a path from the source. 
# The initial run is slower as we cannot stop early when a target is found
# but computing many paths is much faster. The unsigned parental field is 
# increased by 1 so we can represent background as zero. So a value means
# voxel+1. Use path_from_parents to compute a path from the source to a target.
parents = dijkstra3d.parental_field(field, source=(0,0,0), connectivity=6) # default is 26 connected
path = dijkstra3d.path_from_parents(parents, target=(511, 511, 511))
print(path.shape)

# Given a boolean label "field" and a source vertex, compute 
# the anisotropic euclidean chamfer distance from the source to all labeled vertices.
# Source can be a single point or a list of points. Accepts bool, (u)int8 dtypes.
dist_field = dijkstra3d.euclidean_distance_field(field, source=(0,0,0), anisotropy=(4,4,40))

sources = [ (0,0,0), (10, 40, 232) ]
dist_field = dijkstra3d.euclidean_distance_field(
  field, source=sources, anisotropy=(4,4,40)
)
# You can return a map of source vertices to nearest voxels called
# a feature map.
dist_field, feature_map = dijkstra3d.euclidean_distance_field(
  field, source=sources, return_feature_map=True,
) 

# To make the EDF go faster add the free_space_radius parameter. It's only
# safe to use if you know that some distance around the source point
# is unobstructed space. For that region, we use an equation instead
# of dijkstra's algorithm. Hybrid algorithm! free_space_radius is a physical
# distance, meaning you must account for anisotropy in setting it.
dist_field = dijkstra3d.euclidean_distance_field(field, source=(0,0,0), anisotropy=(4,4,40), free_space_radius=300) 

# You can also get one of the possibly multiple maxima locations instantly.
dist_field, max_loc = dijkstra3d.euclidean_distance_field(field, source=(0,0,0), return_max_location=True) 

# Given a numerical field, for each directed edge from adjacent voxels A and B, 
# use B as the edge weight. In this fashion, compute the distance from a source 
# point for all finite voxels. 
dist_field = dijkstra3d.distance_field(field, source=(0,0,0)) # single source
dist_field = dijkstra3d.distance_field(field, source=[ (0,0,0), (52, 55, 23) ]) # multi-source
dist_field, max_loc = dijkstra3d.distance_field(field, source=(0,0,0), return_max_location=True) # get the location of one of the maxima

# You can also provide a voxel connectivity graph to provide customized
# constraints on the permissible directions of travel. The graph is a
# uint32 image of equal size that contains a bitfield in each voxel 
# where each of the first 26-bits describes whether a direction is 
# passable. The description of this field can be seen here: 
# https://github.com/seung-lab/connected-components-3d/blob/3.2.0/cc3d_graphs.hpp#L73-L92
#
# The motivation for this feature is handling self-touching labels, but there
# are many possible ways of using this.
graph = np.zeros(field.shape, dtype=np.uint32)
graph += 0xffffffff # all directions are permissible
graph[5,5,5] = graph[5,5,5] & 0xfffffffe # sets +x direction as impassable at this voxel
path = dijkstra.dijkstra(..., voxel_graph=graph)

Perform dijkstra's shortest path algorithm on a 3D image grid. Vertices are voxels and edges are the nearest neighbors. For 6 connected images, these are the faces of the voxel (L1: manhattan distance), 18 is faces and edges, 26 is faces, edges, and corners (L: chebyshev distance). For given input voxels A and B, the edge weight from A to B is B and from B to A is A. All weights must be finite and non-negative (incl. negative zero).

What Problem does this Package Solve?

This package was developed in the course of exploring TEASAR skeletonization of 3D image volumes (now available in Kimimaro). Other commonly available packages implementing Dijkstra used matricies or object graphs as their underlying implementation. In either case, these generic graph packages necessitate explicitly creating the graph's edges and vertices, which turned out to be a significant computational cost compared with the search time. Additionally, some implementations required memory quadratic in the number of vertices (e.g. an NxN matrix for N nodes) which becomes prohibitive for large arrays. In some cases, a compressed sparse matrix representation was used to remain within memory limits.

Neither graph construction nor quadratic memory pressure are necessary for an image analysis application. The edges between voxels (3D pixels) are regular and implicit in the rectangular structure of the image. Additionally, the cost of each edge can be stored a single time instead of 26 times in contiguous uncompressed memory regions for faster performance.

Previous rationals aside, the most recent version of dijkstra3d also includes an optional method for specifying the voxel connectivity graph for each voxel via a bitfield. We found that in order to solve a problem of label self-contacts, we needed to specify impermissible directions of travel for some voxels. This is still a rather compact and fast way to process the graph, so it doesn't really invalidate our previous contention.

C++ Use

#include <vector>
#include "dijkstra3d.hpp"

// 3d array represented as 1d array
float* labels = new float[512*512*512](); 

// x + sx * y + sx * sy * z
int source = 0 + 512 * 5 + 512 * 512 * 3; // coordinate <0, 5, 3>
int target = 128 + 512 * 128 + 512 * 512 * 128; // coordinate <128, 128, 128>

vector<unsigned int> path = dijkstra::dijkstra3d<float>(
  labels, /*sx=*/512, /*sy=*/512, /*sz=*/512,
  source, target, /*connectivity=*/26 // 26 is default
);

vector<unsigned int> path = dijkstra::bidirectional_dijkstra3d<float>(
  labels, /*sx=*/512, /*sy=*/512, /*sz=*/512,
  source, target, /*connectivity=*/26 // 26 is default
);

// A* search using a distance to target heuristic
vector<unsigned int> path = dijkstra::compass_guided_dijkstra3d<float>(
  labels, /*sx=*/512, /*sy=*/512, /*sz=*/512,
  source, target, /*connectivity=*/26 // 26 is default
);

uint32_t* parents = dijkstra::parental_field3d<float>(
  labels, /*sx=*/512, /*sy=*/512, /*sz=*/512, 
  source, /*connectivity=*/26 // 26 is default
);
vector<unsigned int> path = dijkstra::query_shortest_path(parents, target);


// Really a chamfer distance.
// source can be a size_t (single source) or a std::vector<size_t> (multi-source)
float* field = dijkstra::euclidean_distance_field3d<float>(
  labels, 
  /*sx=*/512, /*sy=*/512, /*sz=*/512, 
  /*wx=*/4, /*wy=*/4, /*wz=*/40, 
  source, /*free_space_radius=*/0 // set to > 0 to switch on
);

// source can be a size_t (single source) or a std::vector<size_t> (multi-source)
float* field = dijkstra::distance_field3d<float>(labels, /*sx=*/512, /*sy=*/512, /*sz=*/512, source);

Python pip Binary Installation

pip install dijkstra3d

Python pip Source Installation

Requires a C++ compiler.

pip install numpy
pip install dijkstra3d

Python Direct Installation

Requires a C++ compiler.

git clone https://github.com/seung-lab/dijkstra3d.git
cd dijkstra3d
virtualenv -p python3 venv
source venv/bin/activate
pip install -r requirements.txt
python setup.py develop

Performance

I ran three algorithms on a field of ones from the bottom left corner to the top right corner of a 512x512x512 int8 image using a 3.7 GHz Intel i7-4920K CPU. Unidirectional search takes about 42 seconds (3.2 MVx/sec) with a maximum memory usage of about 1300 MB. In the unidirectional case, this test forces the algorithm to process nearly all of the volume (dijkstra aborts early when the target is found). In the bidirectional case, the volume is processed in about 11.8 seconds (11.3 MVx/sec) with a peak memory usage of about 2300 MB. The A* version processes the volume in 0.5 seconds (268.4 MVx/sec) with an identical memory profile to unidirectional search. A* works very well in this simple case, but may not be superior in all configurations.

Theoretical unidirectional memory allocation breakdown: 128 MB source image, 512 MB distance field, 512 MB parents field (1152 MB). Theoretical bidirectional memory allocation breakdown: 128 MB source image, 2x 512 distance field, 2x 512 MB parental field (2176 MB).

Fig. 1: A benchmark of dijkstra.dijkstra run on a 512<sup>3</sup> voxel field of ones from bottom left source to top right target. (black) unidirectional search (blue) bidirectional search (red) A* search aka compass=True.
Fig. 1: A benchmark of dijkstra.dijkstra run on a 5123 voxel field of ones from bottom left source to top right target. (black) unidirectional search (blue) bidirectional search (red) A* search aka compass=True.

import numpy as np
import time
import dijkstra3d

field = np.ones((512,512,512), order='F', dtype=np.int8)
source = (0,0,0)
target = (511,511,511)

path = dijkstra3d.dijkstra(field, source, target) # black line
path = dijkstra3d.dijkstra(field, source, target, bidirectional=True) # blue line
path = dijkstra3d.dijkstra(field, source, target, compass=True) # red line

Fig. 2: A benchmark of dijkstra.dijkstra run on a 50<sup>3</sup> voxel field of random integers of increasing variation from random source to random target. (blue/squares) unidirectional search (yellow/triangles) bidirectional search (red/diamonds) A* search aka .compass=True.
Fig. 2: A benchmark of dijkstra.dijkstra run on a 503 voxel field of random integers of increasing variation from random source to random target. (blue/squares) unidirectional search (yellow/triangles) bidirectional search (red/diamonds) A* search aka compass=True.

import numpy as np
import time
import dijkstra3d

N = 250
sx, sy, sz = 50, 50, 50

def trial(bi, compass):
  for n in range(0, 100, 1):
    accum = 0
    for i in range(N):
      if n > 0:
        values = np.random.randint(1,n+1, size=(sx,sy,sz))
      else:
        values = np.ones((sx,sy,sz))
      values = np.asfortranarray(values)
      start = np.random.randint(0,min(sx,sy,sz), size=(3,))
      target = np.random.randint(0,min(sx,sy,sz), size=(3,))  

      s = time.time()
      path_orig = dijkstra3d.dijkstra(values, start, target, bidirectional=bi, compass=compass)
      accum += (time.time() - s)

    MVx_per_sec = N * sx * sy * sz / accum / 1000000
    print(n, ',', '%.3f' % MVx_per_sec)

print("Unidirectional")
trial(False, False)
print("Bidirectional")
trial(True, False)
print("Compass")
trial(False, True)

Voxel Connectivity Graph

You may optionally provide a unsigned 32-bit integer image that specifies the allowed directions of travel per voxel as a directed graph. Each voxel in the graph contains a bitfield of which only the lower 26 bits are used to specify allowed directions. The top 6 bits have no assigned meaning. It is possible to use smaller width bitfields for 2D images (uint8) or for undirected graphs (uint16), but they are not currently supported. Please open an Issue or Pull Request if you need this functionality.

The specification below shows the meaning assigned to each bit. Bit 32 is the MSB, bit 1 is the LSB. Ones are allowed directions and zeros are disallowed directions.

    32     31     30     29     28     27     26     25     24     23     
------ ------ ------ ------ ------ ------ ------ ------ ------ ------
unused unused unused unused unused unused -x-y-z  x-y-z -x+y-z +x+y-z

    22     21     20     19     18     17     16     15     14     13
------ ------ ------ ------ ------ ------ ------ ------ ------ ------
-x-y+z +x-y+z -x+y+z    xyz   -y-z    y-z   -x-z    x-z    -yz     yz

    12     11     10      9      8      7      6      5      4      3
------ ------ ------ ------ ------ ------ ------ ------ ------ ------
   -xz     xz   -x-y    x-y    -xy     xy     -z     +z     -y     +y  
     2      1
------ ------
    -x     +x

There is an assistive tool available for producing these graphs from adjacent labels in the cc3d library.

References

  1. E. W. Dijkstra. "A Note on Two Problems in Connexion with Graphs" Numerische Mathematik 1. pp. 269-271. (1959)
  2. E. W. Dijkstra. "Go To Statement Considered Harmful". Communications of the ACM. Vol. 11, No. 3, pp. 147-148. (1968)
  3. Pohl, Ira. "Bi-directional Search", in Meltzer, Bernard; Michie, Donald (eds.), Machine Intelligence, 6, Edinburgh University Press, pp. 127-140. (1971)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dijkstra3d-1.15.2.tar.gz (65.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dijkstra3d-1.15.2-cp314-cp314t-win_amd64.whl (294.7 kB view details)

Uploaded CPython 3.14tWindows x86-64

dijkstra3d-1.15.2-cp314-cp314t-win32.whl (281.3 kB view details)

Uploaded CPython 3.14tWindows x86

dijkstra3d-1.15.2-cp314-cp314t-musllinux_1_2_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

dijkstra3d-1.15.2-cp314-cp314t-musllinux_1_2_aarch64.whl (4.2 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

dijkstra3d-1.15.2-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

dijkstra3d-1.15.2-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.4 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

dijkstra3d-1.15.2-cp314-cp314t-macosx_11_0_arm64.whl (316.1 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

dijkstra3d-1.15.2-cp314-cp314t-macosx_10_13_x86_64.whl (350.8 kB view details)

Uploaded CPython 3.14tmacOS 10.13+ x86-64

dijkstra3d-1.15.2-cp314-cp314-win_amd64.whl (261.7 kB view details)

Uploaded CPython 3.14Windows x86-64

dijkstra3d-1.15.2-cp314-cp314-win32.whl (257.1 kB view details)

Uploaded CPython 3.14Windows x86

dijkstra3d-1.15.2-cp314-cp314-musllinux_1_2_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

dijkstra3d-1.15.2-cp314-cp314-musllinux_1_2_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

dijkstra3d-1.15.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

dijkstra3d-1.15.2-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

dijkstra3d-1.15.2-cp314-cp314-macosx_11_0_arm64.whl (297.5 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dijkstra3d-1.15.2-cp314-cp314-macosx_10_13_x86_64.whl (334.4 kB view details)

Uploaded CPython 3.14macOS 10.13+ x86-64

dijkstra3d-1.15.2-cp313-cp313-win_amd64.whl (254.9 kB view details)

Uploaded CPython 3.13Windows x86-64

dijkstra3d-1.15.2-cp313-cp313-win32.whl (252.8 kB view details)

Uploaded CPython 3.13Windows x86

dijkstra3d-1.15.2-cp313-cp313-musllinux_1_2_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

dijkstra3d-1.15.2-cp313-cp313-musllinux_1_2_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

dijkstra3d-1.15.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

dijkstra3d-1.15.2-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

dijkstra3d-1.15.2-cp313-cp313-macosx_11_0_arm64.whl (296.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dijkstra3d-1.15.2-cp313-cp313-macosx_10_13_x86_64.whl (334.1 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

dijkstra3d-1.15.2-cp312-cp312-win_amd64.whl (254.9 kB view details)

Uploaded CPython 3.12Windows x86-64

dijkstra3d-1.15.2-cp312-cp312-win32.whl (253.0 kB view details)

Uploaded CPython 3.12Windows x86

dijkstra3d-1.15.2-cp312-cp312-musllinux_1_2_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

dijkstra3d-1.15.2-cp312-cp312-musllinux_1_2_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

dijkstra3d-1.15.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

dijkstra3d-1.15.2-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

dijkstra3d-1.15.2-cp312-cp312-macosx_11_0_arm64.whl (296.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dijkstra3d-1.15.2-cp312-cp312-macosx_10_13_x86_64.whl (334.9 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

dijkstra3d-1.15.2-cp311-cp311-win_amd64.whl (266.1 kB view details)

Uploaded CPython 3.11Windows x86-64

dijkstra3d-1.15.2-cp311-cp311-win32.whl (261.4 kB view details)

Uploaded CPython 3.11Windows x86

dijkstra3d-1.15.2-cp311-cp311-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

dijkstra3d-1.15.2-cp311-cp311-musllinux_1_2_aarch64.whl (4.4 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

dijkstra3d-1.15.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

dijkstra3d-1.15.2-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

dijkstra3d-1.15.2-cp311-cp311-macosx_11_0_arm64.whl (295.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dijkstra3d-1.15.2-cp311-cp311-macosx_10_9_x86_64.whl (338.4 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

dijkstra3d-1.15.2-cp310-cp310-win_amd64.whl (266.4 kB view details)

Uploaded CPython 3.10Windows x86-64

dijkstra3d-1.15.2-cp310-cp310-win32.whl (262.3 kB view details)

Uploaded CPython 3.10Windows x86

dijkstra3d-1.15.2-cp310-cp310-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

dijkstra3d-1.15.2-cp310-cp310-musllinux_1_2_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

dijkstra3d-1.15.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

dijkstra3d-1.15.2-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

dijkstra3d-1.15.2-cp310-cp310-macosx_11_0_arm64.whl (297.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dijkstra3d-1.15.2-cp310-cp310-macosx_10_9_x86_64.whl (340.2 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

dijkstra3d-1.15.2-cp39-cp39-win_amd64.whl (266.8 kB view details)

Uploaded CPython 3.9Windows x86-64

dijkstra3d-1.15.2-cp39-cp39-win32.whl (262.5 kB view details)

Uploaded CPython 3.9Windows x86

dijkstra3d-1.15.2-cp39-cp39-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

dijkstra3d-1.15.2-cp39-cp39-musllinux_1_2_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

dijkstra3d-1.15.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

dijkstra3d-1.15.2-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

dijkstra3d-1.15.2-cp39-cp39-macosx_11_0_arm64.whl (298.3 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

dijkstra3d-1.15.2-cp39-cp39-macosx_10_9_x86_64.whl (340.6 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

dijkstra3d-1.15.2-cp38-cp38-win_amd64.whl (269.0 kB view details)

Uploaded CPython 3.8Windows x86-64

dijkstra3d-1.15.2-cp38-cp38-win32.whl (264.2 kB view details)

Uploaded CPython 3.8Windows x86

dijkstra3d-1.15.2-cp38-cp38-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ x86-64

dijkstra3d-1.15.2-cp38-cp38-musllinux_1_2_aarch64.whl (4.4 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ ARM64

dijkstra3d-1.15.2-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

dijkstra3d-1.15.2-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.6 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

dijkstra3d-1.15.2-cp38-cp38-macosx_11_0_arm64.whl (299.4 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

dijkstra3d-1.15.2-cp38-cp38-macosx_10_9_x86_64.whl (341.7 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file dijkstra3d-1.15.2.tar.gz.

File metadata

  • Download URL: dijkstra3d-1.15.2.tar.gz
  • Upload date:
  • Size: 65.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2.tar.gz
Algorithm Hash digest
SHA256 f5db0e21bca8a1d7bcedc103d55757b0c030d76d2d62228b6536550952c1e5db
MD5 b154c4d4f156e8c4b6bc9113c8c54720
BLAKE2b-256 4ec5f03b5c00d4fee861bc30b3bb7a412f601fb29784954f36ca0bc595696274

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 42a823ecd782d5a51443763fd194d7abc4e5b1d475ee8c03dd591ee7f077d98f
MD5 871d063160c456ed061be454dc914828
BLAKE2b-256 3a093c16002d6c02ce2aac6602e998bad6af17f6d987946c4a43f6beb929f30a

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314t-win32.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 281.3 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 9585e026725b9c785b97bfa1617a04fc6c317adf8318563e17c911f3ccabc960
MD5 c80eb6c559e94a0970107e3048f80cca
BLAKE2b-256 7ea92f5aab52f73e49776a6a4f778cd47408e7180e4f77c9155c9526925df188

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7f9d45db04870756d7a91c70a556a08fc751eaefe45139acf8e5f876bd08a9c0
MD5 54f1779ca418a5968369b055659770ae
BLAKE2b-256 fdaeef44d276a800edb15c4c2b8a7fd5c0afa3944c7493e6379b9db5e549d8da

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3db4ed8b66f5c325a5caa936b57747685fd5b108544b07f1caccf92cc4881048
MD5 3ed8f5696d81350aa8173204ba94d11d
BLAKE2b-256 738f5ce4974adf79540ad68bc4282a264625fe062909063910c0cd5db6bee8f4

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c9be9278843ac344a950b81e5b928eff3dc4caf6b43954a9ff1a1b21fac73436
MD5 ead5d42e5cebb5a29f2ba0407bdb114c
BLAKE2b-256 49f0d9e3febcfae3673f3681ae14035e2a236046044e20e15a12d6eb56e1bdd7

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dc663b01236a7203eb801e5227a04b92b60692fdf9693597fd9712c0743a1289
MD5 f4f9942e116f390cb2a02e42071da163
BLAKE2b-256 9fe6796b198cd7aede617e2a3cbb3f76c38b36caa6f3d71fdc69c9347152ed29

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a9836bc4d84aba1cf9bf061b8f5f1234757d10399e612772742aa17923f6253f
MD5 5836e2ba79b46285dfc607f89d305720
BLAKE2b-256 5da13131fbc866408dbfaa142b294ff9f9de3ec1f120e808b02b7b438dfbb0a3

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4b6b63d0a266bd78e52cad10557e254ea4fdd5981ad0066034a4573f48e8d100
MD5 fec01ab130cbdd793c21b9e6f097bf29
BLAKE2b-256 f192de1b4c991ecffd5dfc3dceadf25e4735ba6e3af9e51c6a7b9e59f1b4447f

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 47353b00641e43f57a775076393bc701bc1d0f600b66b01932e7617e635d6b7a
MD5 1ac1887827e21e4ddf689ba2a6d6190f
BLAKE2b-256 745a2c59421f096f5dd0803ee629d009f0881258274e069b93482d0b680e052c

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314-win32.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp314-cp314-win32.whl
  • Upload date:
  • Size: 257.1 kB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 5642490c76720b3d7be70171492b402cf5619f6ef6c246fe1e8c39b45718c2ee
MD5 172e278104c6371549e6709e527b97b8
BLAKE2b-256 965e9e9774bb4f1b70fbde65dde498ee8a1af651188e36c0b29c74e7bbfae4fc

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 382043696ef4c614230b1bf8a310392d4ae6fcf0683774d7adf841b8464b645f
MD5 2922be6d006aaae8e843fbbaac1c3f1d
BLAKE2b-256 55c2353681adcc99dfd6c2a02e3613b67ee24bee1b7673b4f88fbdc5126a4467

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2d4ca205c272541b08715dbfb754f876ff1a4901344f38cd29be2842f7c0b6d3
MD5 6ebd93dc03aaab8493df36aedeb4d1de
BLAKE2b-256 2727f08579f4b70e08b46ce2f4665005a817d95f6b07ebadf706be0822cf81b8

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d394190bb6af8cd675a94a3c134b08465bb013c77bc3632a4fc291d88efb6afd
MD5 2c60f84adbba49d84a62d024d6706eb8
BLAKE2b-256 89f3e76180a1a73641369b45655591795ef90311acdb023c7078a273c0692267

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7b89de772e92850302c0a53655ec0cb030701eb7826593debc0705f909bba013
MD5 1e001bdcee587c804eff18f197604172
BLAKE2b-256 0f83b7cad796cfffab30d0ca10b4c6641e0a48a64a3c8f28e3cd0dd799e9edc7

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8a462b55befe6d971fa795ae62400c9328901672af3bd3360d21479de3d68e1e
MD5 923207708eb9ed6ba9f8b28b0f5e9634
BLAKE2b-256 a3f6b3d4f7a084c37aeacbcd2be9e555158736b0e3b106202430f0b0e9dfb10d

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp314-cp314-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp314-cp314-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f0f5ebd2122a294b9b73f1d155649549d5401cf7f41f54c26f0d2a2f972178a1
MD5 5206465d5017abca856ead2760a55f07
BLAKE2b-256 147df8194e38d91637b2462657f620329604264909789b29a74270d2beb5ad26

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 bc300b6a6421557b8a10aabbc458341ca276d0253e141bbba7833fa1041b6e96
MD5 5e7447f7d11f5d3f202286202d64bd0a
BLAKE2b-256 52e3b7e0865641db3bd5f1da36f96eb8de0f92c4daaaa69212f8a397ba26ae4e

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp313-cp313-win32.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp313-cp313-win32.whl
  • Upload date:
  • Size: 252.8 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 1caa88b2b1b7566fbc0262e55930c535823116a57572bcacd98dc1882c83af40
MD5 c7bb8300d9e5891fa97e25d607d5f3f7
BLAKE2b-256 cab2b378723fd6f0ee82b084c78e29ef4c5615cfc1dce59206e24a3a20978d6b

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 71a8e7cc4cdea71cdbdc7628e2c683c1b5ed6079c8fa543f5434e04a78aae7f4
MD5 11b6fdd7d8cd117324b67f332f6b4b74
BLAKE2b-256 38fc0f442c453bbe6055438897967ea4c740f07c17e60f4c1c316de58b38f253

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 15cd6241e04c2f03f64615c6cc47970908cfebdf811dbc1666441560c441646d
MD5 b6330d6379451fd35e373ea7f5eba60c
BLAKE2b-256 e03a271068e81ffa4f88041b2fc1840be5bc0ca536ac0f01d1425de41be44a3b

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 82be9772a296cab23b0f6d9a376ece40ed0a41c6afdc49343029ade11858dcea
MD5 990fd8965e93cb0c834750e261cb5d1f
BLAKE2b-256 bfcb09f4a9a6a2f3998a97e1308a0381c5902535d74f2503481af29665ccfdb9

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b972402cdccbce8b57143eb16355acf47b6ece838cacbb4dab99bea957eab477
MD5 efc1daae2a809a7d91ba07b008b49700
BLAKE2b-256 24cf35922b311d31df13f81ac5590d643e69b143a7d24482e0055ea397469dc8

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 85052e00126aec49e2d6ce75dc4c848ae96ca7fd720f31fbad396d683cc6f994
MD5 ed24145bae6b8538e1c82884ec953210
BLAKE2b-256 8ea481cf772b6ecd7b6bb93a5e29838ef4fa362a0daf74e1d93035af35459ab1

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d20df80b3eeb0fdfd6d3bfeff419b0ed57afbe1af9b2bef50188178606c8a6e8
MD5 9375ac48c6de726140e7a7c84b97c1d6
BLAKE2b-256 0e025dd29e4af077306c55b4179d5e74976976e77cc16671d87f0a4be4f502aa

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fec19a05e3ba6244e8cccc09a8bf822c3e22e7e16eb6a935afb82251aa985812
MD5 60668b1abfa1cf5bbf66f48f70f5f572
BLAKE2b-256 22c2a3e09f362cad3d30d31876632f7cbdee2388eaca7225a23f8345ac8a66b0

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp312-cp312-win32.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp312-cp312-win32.whl
  • Upload date:
  • Size: 253.0 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d782d4a6ad27eb77d2547dae195215c257f7faa887a5d8a9240337b0906c357d
MD5 7307bae9eb3ba2c8a410500eb90b14a5
BLAKE2b-256 9252c88d7b57f0ffffb015f8811fdeb0729ccf9355457873a851fe7f4147ec59

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fbf8365db743e4bac602d8a69abed96d16831811a305cc7c2df517e8fa879eb9
MD5 ea0df713c67b883df21045dbebbf060c
BLAKE2b-256 93e60c5b86e5210994120d59bb6d63ba410f7e20512599938eca3d699b63eba9

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4e1aeb944f3e62e51198e64826ada860179a86b7d06772e046378d9bee100d67
MD5 10cfef83852c3e2551d8597baf0ab10d
BLAKE2b-256 38d73fbf97a8a2ff4adfcf443f34226e71928081364602dd10641ed1b7f81131

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 636d64939d560b5c2bd7c157fc5ef075f435c4217b749c79fc6f7fa2bc7ac75f
MD5 058340c3b4cbd1e57fdde0feadef428a
BLAKE2b-256 eb642854c4bcccb9d6fd7e18b8cf0b2009337c097531aa8c8e138f1fd7ebb8cd

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 03ff281b9ab0eb6641d6c898051635bb839bd5e97072a8b3a597f3451bfc0307
MD5 3733133dc0971ac15b8ebc0baee421ea
BLAKE2b-256 a50c8fd7027bb699f6cb575cc6f8356c86931b8a60b43928db6b0381aba52ea6

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ec728eeb4b8bab70b09c94ac27e37e74c725d97bca068a74ce429efc220ac1d
MD5 a869af675536c5d2a04b96291a6905ba
BLAKE2b-256 fe06c6a0ad62d55f98920adc837ad8e2ccdc906ee4f8cae8c2a3ec2eea24e7c9

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 6d55f14705b38e9a09203ba6ec860898f4df26d107fb6e333e64bbe7537a5f06
MD5 68ff33c68fc1c2c0958c01ebd33fdf89
BLAKE2b-256 d45e7de0b5def9556b7c9542f3412da18286ab8b830185a6166fea4968a514e4

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8c1755f37dfed167b9ee7c7ac3ceb05d5ef045a89e10db550168e83a661c634a
MD5 2fe368e5f5da0ac16e801ab7c1203a31
BLAKE2b-256 d3d897e2d20583f11180b4df853b094702ead55d4a7772de9e1d980674bf4be5

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp311-cp311-win32.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp311-cp311-win32.whl
  • Upload date:
  • Size: 261.4 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 91a7b05fba8da6f7515c4bdbd3cab53f12ad0801af023ac0fbf0cafa60e84505
MD5 2de26dd0ff6caf180155d8e9805f3b32
BLAKE2b-256 d3cdd4cb0ab04ffc03e1b05a9f0b78f56f139eaf3e49ce7e01159048fa420c39

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 573d3d9edc9ff7b9432ab0c62a67ee75b8e523664d20a45b261c545ed9183682
MD5 2d1726dff73cff827c4d6a9c202487ff
BLAKE2b-256 46cddf68f73b583040776f7554f2fa40bcefd9238ad6254c4a3ed0f7507f35a0

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bed27483b0a7fbde41864aa65127a8296f671143a7500648bcb2aaacebfa6aa5
MD5 c90960829d9db1a733a0d5e75543c884
BLAKE2b-256 4a95c6b375acdfc035b21bcf3ca3db7359a83d440fcc47557b00ebd6a8b71099

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 474f8f5d50c5c035f6fdcb3b08f59ffef63c21c6b35262e2b8057deecdf2b1f8
MD5 d382fcb06ee097a68098f3a61a89d82d
BLAKE2b-256 9dd1349115c68d5ba611417e70a25d472d0d9e5d8757e658e22fc780666eb289

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 74a971ec3287b1fc5bb87dd4ca5ae06aade505af3637219ae2e9059076faf084
MD5 b828b3e8beb73d7bed21c5959b2eb985
BLAKE2b-256 de92b47cf53d485d70b4ce01364417a2614f9641d8f399cac4dd1dc7f8486987

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8a2ae3da42c5eb60c343b239973a35b98ea5e5d08c04c70856c502f4eb78b64f
MD5 ec30b6c38e130233601c3856bab40150
BLAKE2b-256 e0296ded8e5dd045e27dbebb93f79a195af56969f371f83b7f3da35e2e23c4d6

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3878120086015c4c903a60774b629f63ae48e935ae2c601bf60d16a9dae2071a
MD5 899aa676a64a822fe7098ae5775630bf
BLAKE2b-256 5138e30f2d8b359128e9fbadfed51e0aa5ca18890dd0bbbc5f9d69ab6ed6a13e

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9c17277a8ae863b4edccb9df49f7f29d182c452fb9afcdc33e70b18092bb8157
MD5 e69531fc5efb8c144c2e52e3f536d059
BLAKE2b-256 d4950034db41d13ea655298baa815382e55f44da22bb09c8cafc3d28ca7ad67a

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp310-cp310-win32.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp310-cp310-win32.whl
  • Upload date:
  • Size: 262.3 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 378a57e5ad57e603cd087ad4b1423dc45c48507e40ff9f5fdab4b11d32e48bbe
MD5 a9fff1907230a3f79806d4644dd5fa99
BLAKE2b-256 87cee24a0eba72affbec9d62783fe390bf09e1514f21917b0a2d19e3722fafe5

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 52321114974afd9f8340fc65f2ed234001c2a859c440397d35253184d98c7256
MD5 a6364d65587275ed71f97d7e81a79b32
BLAKE2b-256 69a42fc577f7c8a541be773e4d75279fcbcd1b4a56a4c7445280924bf5781be2

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 81de5a8e222d68002315e11c04f837533488c9c0e975c6ff1595f50a01140cba
MD5 25f4d715e24b69fea0d1709e9c25f7b5
BLAKE2b-256 0b1bc269fb9398b0b5a2e7a1aea29a2909f3abdea7010990747b36133bdda927

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8d432652d84f26609b2b1d36c226c25dc4a7d7562f39007c952b305969134cb2
MD5 4569ab6c2ba1dc5b6a81c55235bd78c2
BLAKE2b-256 45414c46ede55b320a7183bc45ffc0af98d1556fa1c6e2b5ae191415add5d137

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2c373dcbafe10ba5f9da1461bf6ae25c689bdcee3a4a2d9ef8a02037da6a67fa
MD5 ab27c286ee9648eb7cda0ca8a11f5766
BLAKE2b-256 a728d690de28c29f525c9d53798a7a5e36bcc39fac74f75fd49c30066952a41b

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f44f630f9a87855dbfeefeb5ecc8ccce667528f067bb9e088e248aaf8a5dcf73
MD5 cf866857dfbaadb1605dec0780da85cc
BLAKE2b-256 74006048321db5fb4840e39821f5811d8ff9e94d30cdc98dc919c65d54eb8f49

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f636f62d0b01884b1189f61d2ecabb47f87190dc9e532dadbc6c7e8d9887101d
MD5 cf639e8e14fbb1d8c7de2ab1cad83510
BLAKE2b-256 3c947fb0fc4b46f8741b8cef1f10c84ec2e4f8aaa2c01d07e67f1891eb6afd17

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 266.8 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 1b97ce3a7c9f535262415b9c056afd6576a607129556fd3ef89697a641b852c6
MD5 7b1152cb0fe63055b7c44782dd5d0b0c
BLAKE2b-256 bc09ffc3108dc83482ba2aa2cb39241ee2f11dc90d761f36f4dce755bb7d11fc

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp39-cp39-win32.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp39-cp39-win32.whl
  • Upload date:
  • Size: 262.5 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 186dd9caa3b42e1aeb59e29143d1334e4cb99afba5c1e838ef03305b7dd09ca4
MD5 991a04d50b81eba5146c12f7e2f79075
BLAKE2b-256 b372b142cda6b94bfe8684458d1df3e0e90a85c92c596a00c02ba0d3c7222c60

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8fa5c17a5766ae463036dcd1ebfd8ad650b4482145d1df58956503d181e03bd4
MD5 4f5cbaf7a7aec3fef9531a5af5c077c3
BLAKE2b-256 b0a9a39c96651790c2f7555a19f5031df25c81b7ea4e20ecbd0b217cc48c4a7d

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7c7d468ee8a32ceb7bfd9f8040ddba8bdf92e7d2b8e99eaf52b8ba69e2a3f7eb
MD5 d307e80097fa8835ff59d0ed6c3fdaee
BLAKE2b-256 d4361475dcd763c7df2b8f7650bada9c18d8eb5bb71e60e88a0cbc8db5ea8d98

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7854a8a5ae2754188c1eacd6748370b2de52856d9cb86c4e7fff964a79d99eb5
MD5 f5b8c8bddbc34faeb0d7549231dc996b
BLAKE2b-256 49430e2e3764b4676b1e1d546bc2ffbcd8c585c59fbff14e61a870e914c7d221

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 04c44d79d8dc3d0a5e0bb073d9a5446cb993cd3701edde5c8ebc680efab49ae0
MD5 b9386897c9416190acb6552d0f18b576
BLAKE2b-256 2be79bbbc7277cfb6f510488932f098d4e7efd8f9d47f3b000803e8e2d95bb22

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f3de1532082747808bcf6c7c5494d6e313707fae0eb1d9deb6f51358d2211a1
MD5 ed7e12d95349b971838891a6b10e9bfd
BLAKE2b-256 ad23e16dd5ccc23cfa80b0c73e124214212469d06e64dc2cf79fe88eeb6c74d1

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d4914e6b50047ec430e1de0b7dad92a14dc525a704a711b1bfba190b5d4f172c
MD5 3194d874a874d08082eaa243599b7652
BLAKE2b-256 d38decb19e309ab7d63fa5a207b0c3a1a9e2e67e842dfa719c0720e78a31344f

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 269.0 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 05fd76c76f829bf4533ee0341448fe3f173c2c31733ab8d7f7e83cdaf091cc93
MD5 5d933620cf42c24e9b24f9e130859bca
BLAKE2b-256 a512a0aa0bd6821a82f08985f9aeec7008ee65d8bb0f3d9d64417201da5fc4f5

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp38-cp38-win32.whl.

File metadata

  • Download URL: dijkstra3d-1.15.2-cp38-cp38-win32.whl
  • Upload date:
  • Size: 264.2 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for dijkstra3d-1.15.2-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 4245a4fc9feda4f5a04e50234d04ea562bb1ab588d3e0bde1e471a4b19dd34e0
MD5 63cebb49c583aa52dae69f7365e14672
BLAKE2b-256 d7c5f6e34f6aef06c2cdc6a164400c2a99cb0a055c3079a712c4453304603f93

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a4275cc9692d1b31a51c28a60cc64bd7f7592aca068a1a7191f0bcbd5d52903f
MD5 7a746c1d0788db4df359feab17d6eb6a
BLAKE2b-256 2f6666e0f9b661fb72c70e442ff2dd1e9fbce5f9eaac354e50cbb20b3df24101

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp38-cp38-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp38-cp38-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b4eaeaeef83da7469ef3458576ac733d38bac62e0b5fb82aa5b1aa197d6ea73a
MD5 5b70cb1878b16fa0d3403f221e59e5e4
BLAKE2b-256 816c6ed1e044916b183f2b1e3c0655da00543ec1ee320846aefbaf831f4b7d57

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3489e6657163574a40a52b79815444072b0db9206dd988aec768cdffc0b55aa4
MD5 e8664a44e22bd37f887e9bd948ec7942
BLAKE2b-256 c681781e50ed4f8d899881261735c3bb00dd30c65c448ab95cd0196986d75269

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 647a40de0003571294f0811db998c3bbac938b0dc417371ccdd351e49da123dc
MD5 98f75645c36a1284294075da2c39daad
BLAKE2b-256 ed95505840ca2c20aa1b3dab08545271d751dcdda4b7f90924713a2c26b784ff

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cde8200f576ae9ba2450a23c8ad90e0ddc3ea7fbf736a2dcc9f7640d7cf4e036
MD5 3ef91b0afa885cab3388f3e4d758bab0
BLAKE2b-256 6d0ba05901a80f3be46de1a152e445a82a0a7c5d14d5aba8f034ed9d020cf52c

See more details on using hashes here.

File details

Details for the file dijkstra3d-1.15.2-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for dijkstra3d-1.15.2-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2723f030f4939c39ce27741575a93873ed40aef609e6d9650a4e635698c94784
MD5 577b2f8d73d68b715d271c94f1033a46
BLAKE2b-256 1ae6a02a5f9e029e66f6c5ffe4a2274fe0bc7377443f691e4440d3b29efab424

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page