Skip to main content

Multilabel marching cubes and simplification of volumetric data.

Project description

zmesh: Multi-Label Marching Cubes & Mesh Simplification

Tests PyPI version

from zmesh import Mesher

labels = ... # some dense volumetric labeled image
mesher = Mesher( (4,4,40) ) # anisotropy of image

# initial marching cubes pass
# close controls whether meshes touching
# the image boundary are left open or closed
mesher.mesh(labels, close=False) 

meshes = []
for obj_id in mesher.ids():
  meshes.append(
    mesher.get(
      obj_id, 
      normals=False, # whether to calculate normals or not

      # tries to reduce triangles by this factor
      # 0 disables simplification
      reduction_factor=100, 

      # Max tolerable error in physical distance
      # note: if max_error is not set, the max error
      # will be set equivalent to one voxel along the 
      # smallest dimension.
      max_error=8,
      # whether meshes should be centered in the voxel
      # on (0,0,0) [False] or (0.5,0.5,0.5) [True]
      voxel_centered=False, 
    )
  )
  mesher.erase(obj_id) # delete high res mesh

mesher.clear() # clear memory retained by mesher

mesh = meshes[0]
mesh = mesher.simplify(
  mesh, 
  # same as reduction_factor in get
  reduction_factor=100, 
  # same as max_error in get
  max_error=40, 
  compute_normals=False, # whether to also compute face normals
) # apply simplifier to a pre-existing mesh

# use an fqmr derived non-topology preserving algorithm
# this useful particularly for multi-resolution meshes
# where visual appearence is more important than connectivity
# This function has many parameters, see help(zmesh.simplify_fqmr)
mesh = zmesh.simplify_fqmr(
  mesh, 
  triangle_count=(mesh.faces.shape[0] // 10),
)

# compute normals on a pre-existing mesh
mesh = zmesh.compute_normals(mesh) 

# run face based connected components
ccls = zmesh.face_connected_components(mesh)
# run vertex based connected components
ccls = zmesh.vertex_connected_components(mesh)

# remove small components based on vertices or faces
mesh = zmesh.dust(mesh, threshold=100, metric="vertices")
# remove components bigger than the threshold using invert
mesh = zmesh.dust(mesh, threshold=100, metric="vertices", invert=True)
# retain only the largest k connected components
mesh = zmesh.largest_k(mesh, k=1, metric="vertices")
# retain only the smallest k connected components
mesh = zmesh.largest_k(mesh, k=1, metric="vertices", invert=True)

mesh.vertices
mesh.faces 
mesh.normals
mesh.triangles() # compute triangles from vertices and faces

# Extremely common obj format
with open('iconic_doge.obj', 'wb') as f:
  f.write(mesh.to_obj())

# Common binary format
with open('iconic_doge.ply', 'wb') as f:
  f.write(mesh.to_ply())

# Neuroglancer Precomputed format
with open('10001001:0', 'wb') as f:
  f.write(mesh.to_precomputed())

Note: mesher.get_mesh has been deprecated in favor of mesher.get which fixed a long standing bug where you needed to transpose your data in order to get a mesh in the correct orientation.

Installation

If binaries are not available for your system, ensure you have a C++ compiler installed.

pip install zmesh

Performance Tuning & Notes

  • The mesher will consume about double memory in 64 bit mode if the size of the object exceeds <1023, 1023, 511> on the x, y, or z axes. This is due to a limitation of the 32-bit format.
  • The mesher is ambidextrous, it can handle C or Fortran order arrays.
  • The maximum vertex range supported .simplify after converting to voxel space is 220 (appx. 1M) due to the packed 64-bit vertex format.

Related Projects

  • zi_lib - zmesh makes heavy use of Aleks' C++ library.
  • Igneous - Visualization of connectomics data using cloud computing.

Credits

Thanks to Aleks Zlateski for creating and sharing this beautiful mesher.

Later changes by Will Silversmith, Nico Kemnitz, and Jingpeng Wu.

Thank you to Sven Forstmann, Kristof S., Brénainn Woodsend, and others for pyfqmr which we have adapted here for non-topology preserving simplification and fast OBJ reading. See https://github.com/Kramer84/pyfqmr-Fast-Quadric-Mesh-Reduction/

References

  1. W. Lorensen and H. Cline. "Marching Cubes: A High Resolution 3D Surface Construction Algorithm". pp 163-169. Computer Graphics, Volume 21, Number 4, July 1987. (link)
  2. M. Garland and P. Heckbert. "Surface simplification using quadric error metrics". SIGGRAPH '97: Proceedings of the 24th annual conference on Computer graphics and interactive techniques. Pages 209–216. August 1997. doi: 10.1145/258734.258849 (link)
  3. H. Hoppe. "New Quadric Metric for Simplifying Meshes with Appearance Attributes". IEEE Visualization 1999 Conference. pp. 59-66. doi: 10.1109/VISUAL.1999.809869 (link)

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

zmesh-1.12.0.tar.gz (301.2 kB view details)

Uploaded Source

Built Distributions

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

zmesh-1.12.0-cp314-cp314t-win_amd64.whl (317.3 kB view details)

Uploaded CPython 3.14tWindows x86-64

zmesh-1.12.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (2.8 MB view details)

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

zmesh-1.12.0-cp314-cp314-win_amd64.whl (287.9 kB view details)

Uploaded CPython 3.14Windows x86-64

zmesh-1.12.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp314-cp314-macosx_11_0_arm64.whl (313.3 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

zmesh-1.12.0-cp314-cp314-macosx_10_9_x86_64.whl (359.7 kB view details)

Uploaded CPython 3.14macOS 10.9+ x86-64

zmesh-1.12.0-cp313-cp313-win_amd64.whl (281.3 kB view details)

Uploaded CPython 3.13Windows x86-64

zmesh-1.12.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.0 MB view details)

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

zmesh-1.12.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp313-cp313-macosx_11_0_arm64.whl (311.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

zmesh-1.12.0-cp313-cp313-macosx_10_9_x86_64.whl (358.7 kB view details)

Uploaded CPython 3.13macOS 10.9+ x86-64

zmesh-1.12.0-cp312-cp312-win_amd64.whl (281.1 kB view details)

Uploaded CPython 3.12Windows x86-64

zmesh-1.12.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.0 MB view details)

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

zmesh-1.12.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp312-cp312-macosx_11_0_arm64.whl (312.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

zmesh-1.12.0-cp312-cp312-macosx_10_9_x86_64.whl (359.7 kB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

zmesh-1.12.0-cp311-cp311-win_amd64.whl (284.5 kB view details)

Uploaded CPython 3.11Windows x86-64

zmesh-1.12.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.0 MB view details)

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

zmesh-1.12.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp311-cp311-macosx_11_0_arm64.whl (313.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

zmesh-1.12.0-cp311-cp311-macosx_10_9_x86_64.whl (361.1 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

zmesh-1.12.0-cp310-cp310-win_amd64.whl (284.6 kB view details)

Uploaded CPython 3.10Windows x86-64

zmesh-1.12.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.0 MB view details)

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

zmesh-1.12.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp310-cp310-macosx_11_0_arm64.whl (312.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

zmesh-1.12.0-cp310-cp310-macosx_10_9_x86_64.whl (360.5 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

zmesh-1.12.0-cp39-cp39-win_amd64.whl (285.0 kB view details)

Uploaded CPython 3.9Windows x86-64

zmesh-1.12.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zmesh-1.12.0-cp39-cp39-macosx_11_0_arm64.whl (312.8 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

zmesh-1.12.0-cp39-cp39-macosx_10_9_x86_64.whl (361.0 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

zmesh-1.12.0-cp38-cp38-win_amd64.whl (287.7 kB view details)

Uploaded CPython 3.8Windows x86-64

zmesh-1.12.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.0 MB view details)

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

zmesh-1.12.0-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

File details

Details for the file zmesh-1.12.0.tar.gz.

File metadata

  • Download URL: zmesh-1.12.0.tar.gz
  • Upload date:
  • Size: 301.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0.tar.gz
Algorithm Hash digest
SHA256 921250862750867a864b152c81491f3be119f6d8c74dd3d6407b30b6234cf3f4
MD5 e9cf048091296ccaf81fddffae9c5469
BLAKE2b-256 1a93dc2d6a743cd3758997586580081a74a7ab9086dc73e05f1e8c0dc0d474e5

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: zmesh-1.12.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 317.3 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 af2bf9f63188225e02dd28e165d2c4f78890d1479149bf6eebc45e90aed1be03
MD5 88bf7c1a9c105579d1f6b2d35c5fa2f6
BLAKE2b-256 7ff458f527c08565156fd12324617480068d6350d3d3e407f5dc1c7be1903b12

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 78af2b0922344a61a883a36c1b37de051dd60d02f9911c80569d4d38540dcf7e
MD5 ab0b0a2d875b6514c71d389c5cd226c8
BLAKE2b-256 89f09b059e446a0c8b63d03860edcb0bc995057a525005b98853a51b131a2a0d

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0e293ca111a7924f1abb543426e2c7c0e58e2f054bae705eec51855e45915467
MD5 bfc5d78a98017da685ed34b5a72a8f02
BLAKE2b-256 b4f7f1005c7071d7df0d7fce5f972bd813d125967f9bb0eaf9bb5adbec48b6a7

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: zmesh-1.12.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 287.9 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 dfb02e82f7afcba6ad4ae652582244c5c0b05b241de65173d798fd4656937ddf
MD5 25b5b885e820c2bfe626288c90e97bce
BLAKE2b-256 a354d90cb3d4781c44023079e661cdf8a0569b6069f6df3b6ed96183242639b4

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 988e7695241e2015f963b909c2568b18d488478d31897785d6c06b91735cf8a1
MD5 dc08b03fb0434d12aeca87ff2bf588af
BLAKE2b-256 e2271144dde8b2d92122158a5f18b8a2db0a39f30a58de8013c4be6583bfe057

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 634729317651b83f1d4e3e89d65de8c5dfcf1e0ea07d05f3603490f51119d781
MD5 90ff536254ddaf8309a8293a9220c625
BLAKE2b-256 499a153983f66775aa318697fa03a336971fcf0e867fda41cca1df885666a81a

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5c20a0510d805604f6f72186925d2525d3b4f048d56361cf6a98a89747a06eb2
MD5 8c495ad1f4ca9349fda38825f01d96a2
BLAKE2b-256 3ef09200ad87d098bc33168e46f65d302020edf8688ce71d4734acf2d03ff891

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp314-cp314-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp314-cp314-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7522750a7072a4794b101f4f41bc703acce0647836b2071e85ad76ace29097d7
MD5 e22f96bf24a3f2aab3103fd03543240b
BLAKE2b-256 052ec4c524e20da592a92978bb6802345b6b950cc7c6e5cc4e195cb2db5a3613

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: zmesh-1.12.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 281.3 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 f2c66cd80559bba8f74507eb8ca4701c94292853108b698dbf9b00bdfff696b6
MD5 33e1adb3ac396000c135a9f12fa8ac62
BLAKE2b-256 ac9d989e207078365002ef98348af0065f0e9f33803b13f6b474eb35095bfbda

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5215082ef6ffd5558b4aa37917009524b9edbd7eabe5643ceb005530b47e9d63
MD5 86e0e0fe9ea154a84eaa83b7a79726fa
BLAKE2b-256 8b0ec4b597b15bebe2895a5b8bba8d568deb8a00bb60c779fa5d7a1bde7affeb

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f8d1f7e620c94314f4a5bff60f2a571fca70a6d30f954fe2c907160fa9cc1d31
MD5 1e858348fc602559ac423c7a2b35ba79
BLAKE2b-256 598b632e56c2ff4c88788550737879e539c48f3de0420fc237a280a284bb24b8

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a543a1f565d474698cf352f41af5ded5317fce819cec3e28015b07dc56302801
MD5 74642e24d0efdfe4b093e57aeac03a4d
BLAKE2b-256 d57c69114358780e6d96131f9180dc724ae2dadd135f0f25d4ed5e074de52878

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp313-cp313-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp313-cp313-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f296807442ce4e4a0334a80f6739cf8267adc7f401b7652423c06c7f604d1fca
MD5 3c1313aa993e3de24bf5555f1a5d8a56
BLAKE2b-256 e46279176abef890cb3a39c3adceb80265a9b61e639e27e3b8346428dd2d45d5

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: zmesh-1.12.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 281.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d191631dad6169c6733913706d96615da1de4e69d624c4af768f5615f7e60c03
MD5 6b968994c1b4f42604e5e40ae3d7b3b0
BLAKE2b-256 8c1d3861bcd9bfddbad55dcbe4209c27e12831e976f54eb1f81c64a5a67ab64d

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 745e8b25f393dfe0dee12b32dc1d4bc296b938cd1fe48d442595c78876a7cb1f
MD5 58abd11e07f2e8b8098ed1bccbe71cbd
BLAKE2b-256 49a7ca24e10b0a55ecacacde0b0fecf4b2d6fe43bb96d0701377b6025c71652b

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6e83e252dfc9d3e8e6eae7ee1723260327100b68219fdbe406316e094f58f913
MD5 8f60497967a3a09b5429dd6a214cfb18
BLAKE2b-256 9bb4c01f303b30dd3a5937b22cc2fc2e51d80f2ac6b5dd29eb43aefa4079c778

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5e70c393aaa17cac290c03eab380be8fb25ad589de7595c4cfc150c82ec30b34
MD5 3b2c2f5b347c894d941f839c9d951e13
BLAKE2b-256 944fb9d2fbf922dc4df532f269ac127470d2cf774c675336314107679b4e5317

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ed89999ea97b33fb4327865ddcfcb6f2df5282686b90fe718338897b9f9807af
MD5 d7287cc4ed4298e02afb84e2b3930149
BLAKE2b-256 5e578f9ce299558feef9d4e622855cdb044fbb10bafc7a5d91adb065faa7889a

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: zmesh-1.12.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 284.5 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0db995293edc5efcf7307819ede40b16f60c0006e0f889074941a50e4468c5df
MD5 a7425862a56b0110671798166bc96bcd
BLAKE2b-256 8cc0a03e5fd3f18bd66c76c03b5941a7416346fb07a5ce1a82ef4874f12f1cf4

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8a82df408eb16ca60098efe64d68ab2e38115acb5b3b9e23288d9ce252911cbe
MD5 c5d5cc825774c42740d64667137730ad
BLAKE2b-256 f97786243b09d255be2bc743583e75a8e7c2b382cccf5075aea8d396c0bd2012

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7c7fcacb10fa00b34b3347f3e7bcf053a5f0e7512af29c95a2f09b6ddac1b9e2
MD5 101ab9398344b670974654f24cea0d1e
BLAKE2b-256 d23ad1395f9af6208ffeae36c811804f0fc55eb69693bced40919e6ce744aaf8

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d2a7c2d5aedef559bbe8b8c3305eeed544ded8019af874a0d10bc7ed09a0f7ac
MD5 b2ed0978aa969adf5222c4e4a7fa53bc
BLAKE2b-256 d118b4610e82bb5fd8c33ee2c6f835ab2d17e434c31f9208d237d356cd8ee2b3

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 86a4bef3d6557a65c4c4db32e4ccc04e5915664f556625777fe29ff22f975a43
MD5 acb637d7934ee6ee4d730f1c4066c5c9
BLAKE2b-256 655d11953dcd2e29398a3acfca6ef0eab58cf9152d5e1eedabb7c9eabb674df3

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: zmesh-1.12.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 284.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c0ab6e2068f0f7e524c38bcce8a8019e7c29473d3d98378bb6acdd809531e66a
MD5 6811cb2200db072fc9ed6933c9864eac
BLAKE2b-256 adce207749932cd192dddd08e4dcba7c63ad450db3b29ca3ebebfa9f17020d9e

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 634fda90c0ea1b0bc2f18fffde0040a7cefade58a00410e845dac3e810362628
MD5 d82ad40292f9b3792d5492cd080c4368
BLAKE2b-256 f35b19634a04686a6ef2ba88f4d02bffcfe5cb6f857b0014fe86a51f888e8b7e

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 29257d017dc101750a81410d212a07144dba1fa34a0c53a8c0a10e2cfeb33da9
MD5 0c51589a0b4e120bb565ad2f30486e48
BLAKE2b-256 74c60b6ef4b96d614010635c0f71915ea8803fd45cd5b35859bf62226d98c441

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 922ee4902eea9ae1422490d6b6bf10f248c6987c659b0bb4e64215374537cd28
MD5 69b2ae2e2072ba43a1643df73f07ed87
BLAKE2b-256 72f4e5d4a6fe6f89de1cb13ff68ee6a6ed5e6a58a89e11fc4f5c22f180ae3167

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 998d3af1e125cb6a57cc6cbe256304c5e01cadbc9d0a24fb9791a4745bc91d92
MD5 60ae796bcba7f336bc264370b498c364
BLAKE2b-256 4ea8b1e4b0463a2c55b1ee2180a4c0f3a14e961e00a26292e3ec6f9c9d42c70b

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: zmesh-1.12.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 285.0 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 64ca3ffea95d42acc5a844350a2324d63e8aad7f080d2121a26e54583ec3ae0f
MD5 70163fcb63d9fd16402d4fe84e11bd44
BLAKE2b-256 f615f71a60e376efb4c58a3e8f88fe3b56d57f2a47bd58de392a9e651cff0c9b

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d3fd82488c8a787b83c33f36ff72efeafe9061530ae46e8f9be91a44c8af5bed
MD5 a033639684098b47e417e89b5aaa934f
BLAKE2b-256 5669f412fc1841dd0a435afbdabf669405dddd1c86a55044e07e56ed0457dc29

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 679435f0ff65dea513784d8a5cfeee37ea40893b3b0ee7b668ba262be0a01eac
MD5 85049e661679e8cb4945967f985c5056
BLAKE2b-256 ac867d47e2ca173db6d5dec1a76d92125e3cb53a1d3fe66698e83f437cf7082f

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f416bd006bbe716f59164a7bf43e804b49dc45c10616cc737018c7dce5386c71
MD5 cc4e2f43b120ab562992ae8eeaeb1571
BLAKE2b-256 9d095e7d54191c0b1d0328621e2866ab9cb16c19bbaa8ccc5d75c14cbc298906

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8c540f19281d0a7ed86fea5db0ccdba60e7bdd45481dd807257cb1531d7a08d4
MD5 7818037093eec98ed20fd78124e5b964
BLAKE2b-256 732fbcb807addbbe16543f2cba9c6869611ef65c3e2114120364a68da25b1c83

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: zmesh-1.12.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 287.7 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zmesh-1.12.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 60210f23f18fdb20fbd906225087aa904868a285c19348bb5a9fa6d6201c97c3
MD5 4a7c8676f427ff84e43bfff9420f20bf
BLAKE2b-256 0841652ca73dda08a0c2789891ecafce52424cae1b1881e319c672d2b18c1650

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ba233fef23fe8e0e1c2cc6ad137a51de45aa0d33e376284a797962792128c836
MD5 935239686df537f4bd9425cee80559a9
BLAKE2b-256 6e1a1f05c3696bae36a02be2313d49a813b0e60c3a1a40bca6e14eb02ec37ed6

See more details on using hashes here.

File details

Details for the file zmesh-1.12.0-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zmesh-1.12.0-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 14fa626b7c1d3785a0b97cdbc789706e5261520d2ea7e1c2fb59036fc0839924
MD5 4420c71c0220ad7416046b17507c87b2
BLAKE2b-256 b76fdba8110c4a34dac1c8d9f2ce8ed7c65136f9c5123715845811255fb0d0e7

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