Skip to main content

A fast Python Quantized Mesh encoder

Project description

quantized-mesh-encoder

Build Status

A fast Python Quantized Mesh encoder. Encodes a mesh with 100k coordinates and 180k triangles in 20ms. Example viewer.

The Grand Canyon and Walhalla Plateau. The mesh is created using pydelatin or pymartini, encoded using quantized-mesh-encoder, served on-demand using dem-tiler, and rendered with deck.gl.

Overview

Quantized Mesh is a format to encode terrain meshes for efficient client-side terrain rendering. Such files are supported in Cesium and deck.gl.

This library is designed to support performant server-side on-demand terrain mesh generation.

Install

With pip:

pip install quantized-mesh-encoder

or with Conda:

conda install -c conda-forge quantized-mesh-encoder

Using

API

quantized_mesh_encoder.encode

Arguments:

  • f: a writable file-like object in which to write encoded bytes
  • positions: (array[float]): either a 1D Numpy array or a 2D Numpy array of shape (-1, 3) containing 3D positions.
  • indices (array[int]): either a 1D Numpy array or a 2D Numpy array of shape (-1, 3) indicating triples of coordinates from positions to make triangles. For example, if the first three values of indices are 0, 1, 2, then that defines a triangle formed by the first 9 values in positions, three for the first vertex (index 0), three for the second vertex, and three for the third vertex.

Keyword arguments:

  • bounds (List[float], optional): a list of bounds, [minx, miny, maxx, maxy]. By default, inferred as the minimum and maximum values of positions.
  • sphere_method (str, optional): As part of the header information when encoding Quantized Mesh, it's necessary to compute a bounding sphere, which contains all positions of the mesh. sphere_method designates the algorithm to use for creating the bounding sphere. Must be one of 'bounding_box', 'naive', 'ritter' or None. Default is None.
    • 'bounding_box': Finds the bounding box of all positions, then defines the center of the sphere as the center of the bounding box, and defines the radius as the distance back to the corner. This method produces the largest bounding sphere, but is the fastest: roughly 70 µs on my computer.
    • 'naive': Finds the bounding box of all positions, then defines the center of the sphere as the center of the bounding box. It then checks the distance to every other point and defines the radius as the maximum of these distances. This method will produce a slightly smaller bounding sphere than the bounding_box method when points are not in the 3D corners. This is the next fastest at roughly 160 µs on my computer.
    • 'ritter': Implements the Ritter Method for bounding spheres. It first finds the center of the longest span, then checks every point for containment, enlarging the sphere if necessary. This can produce smaller bounding spheres than the naive method, but it does not always, so often both are run, see next option. This is the slowest method, at roughly 300 µs on my computer.
    • None: Runs both the naive and the ritter methods, then returns the smaller of the two. Since this runs both algorithms, it takes around 500 µs on my computer
  • ellipsoid (quantized_mesh_encoder.Ellipsoid, optional): ellipsoid defined by its semi-major a and semi-minor b axes. Default: WGS84 ellipsoid.
  • extensions: list of extensions to encode in quantized mesh object. These must be Extension instances. See Quantized Mesh Extensions.

quantized_mesh_encoder.Ellipsoid

Ellipsoid used for mesh calculations.

Arguments:

  • a (float): semi-major axis
  • b (float): semi-minor axis

quantized_mesh_encoder.WGS84

Default WGS84 ellipsoid. Has a semi-major axis a of 6378137.0 meters and semi-minor axis b of 6356752.3142451793 meters.

Quantized Mesh Extensions

There are a variety of extensions to the Quantized Mesh spec.

quantized_mesh_encoder.VertexNormalsExtension

Implements the Terrain Lighting extension. Per-vertex normals will be generated from your mesh data.

Keyword Arguments:

  • indices: mesh indices
  • positions: mesh positions
  • ellipsoid: instance of Ellipsoid class, default: WGS84 ellipsoid
quantized_mesh_encoder.WaterMaskExtension

Implements the Water Mask extension.

Keyword Arguments:

  • data (Union[np.ndarray, np.uint8, int]): Data for water mask.
quantized_mesh_encoder.MetadataExtension

Implements the Metadata extension.

  • data (Union[Dict, bytes]): Metadata data to encode. If a dictionary, json.dumps will be called to create bytes in UTF-8 encoding.

Examples

Write to file

from quantized_mesh_encoder import encode
with open('output.terrain', 'wb') as f:
    encode(f, positions, indices)

Quantized mesh files are usually saved gzipped. An easy way to create a gzipped file is to use gzip.open:

import gzip
from quantized_mesh_encoder import encode
with gzip.open('output.terrain', 'wb') as f:
    encode(f, positions, indices)

Write to buffer

It's also pretty simple to write to an in-memory buffer instead of a file

from io import BytesIO
from quantized_mesh_encoder import encode
with BytesIO() as bio:
    encode(bio, positions, indices)

Or to gzip the in-memory buffer:

import gzip
from io import BytesIO
with BytesIO() as bio:
    with gzip.open(bio, 'wb') as gzipf:
        encode(gzipf, positions, indices)

Alternate Ellipsoid

By default, the WGS84 ellipsoid is used for all calculations. An alternate ellipsoid may be useful for non-Earth planetary bodies.

from quantized_mesh_encoder import encode, Ellipsoid

# From https://ui.adsabs.harvard.edu/abs/2010EM%26P..106....1A/abstract
mars_ellipsoid = Ellipsoid(3_395_428, 3_377_678)

with open('output.terrain', 'wb') as f:
    encode(f, positions, indices, ellipsoid=mars_ellipsoid)

Quantized Mesh Extensions

from quantized_mesh_encoder import encode, VertexNormalsExtension, MetadataExtension

vertex_normals = VertexNormalsExtension(positions=positions, indices=indices)
metadata = MetadataExtension(data={'hello': 'world'})

with open('output.terrain', 'wb') as f:
    encode(f, positions, indices, extensions=(vertex_normals, metadata))

Generating the mesh

To encode a mesh into a quantized mesh file, you first need a mesh! This project was designed to be used with pydelatin or pymartini, fast elevation heightmap to terrain mesh generators.

import quantized_mesh_encoder
from imageio import imread
from pymartini import decode_ele, Martini, rescale_positions
import mercantile

png = imread(png_path)
terrain = decode_ele(png, 'terrarium')
terrain = terrain.T
martini = Martini(png.shape[0] + 1)
tile = martini.create_tile(terrain)
vertices, triangles = tile.get_mesh(10)

# Use mercantile to find the bounds in WGS84 of this tile
bounds = mercantile.bounds(mercantile.Tile(x, y, z))

# Rescale positions to WGS84
rescaled = rescale_positions(
    vertices,
    terrain,
    bounds=bounds,
    flip_y=True
)

with BytesIO() as f:
    quantized_mesh_encoder.encode(f, rescaled, triangles)
    f.seek(0)
    return ("OK", "application/vnd.quantized-mesh", f.read())

You can also look at the source of _mesh() in dem-tiler for a working reference.

License

Much of this code is ported or derived from quantized-mesh-tile in some way. quantized-mesh-tile is also released under the MIT license.

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

quantized-mesh-encoder-0.4.2.tar.gz (136.0 kB view details)

Uploaded Source

Built Distributions

quantized_mesh_encoder-0.4.2-cp310-cp310-win_amd64.whl (206.7 kB view details)

Uploaded CPython 3.10 Windows x86-64

quantized_mesh_encoder-0.4.2-cp310-cp310-musllinux_1_1_x86_64.whl (538.1 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

quantized_mesh_encoder-0.4.2-cp310-cp310-musllinux_1_1_i686.whl (517.8 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

quantized_mesh_encoder-0.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (534.0 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_11_0_arm64.whl (198.9 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_10_9_x86_64.whl (206.8 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_10_9_universal2.whl (269.8 kB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

quantized_mesh_encoder-0.4.2-cp39-cp39-win_amd64.whl (205.6 kB view details)

Uploaded CPython 3.9 Windows x86-64

quantized_mesh_encoder-0.4.2-cp39-cp39-musllinux_1_1_x86_64.whl (535.0 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

quantized_mesh_encoder-0.4.2-cp39-cp39-musllinux_1_1_i686.whl (514.6 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

quantized_mesh_encoder-0.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (531.8 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_11_0_arm64.whl (197.7 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_10_9_x86_64.whl (205.5 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_10_9_universal2.whl (268.3 kB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

quantized_mesh_encoder-0.4.2-cp38-cp38-win_amd64.whl (215.0 kB view details)

Uploaded CPython 3.8 Windows x86-64

quantized_mesh_encoder-0.4.2-cp38-cp38-musllinux_1_1_x86_64.whl (554.1 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

quantized_mesh_encoder-0.4.2-cp38-cp38-musllinux_1_1_i686.whl (537.0 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

quantized_mesh_encoder-0.4.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (542.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_11_0_arm64.whl (205.9 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_10_9_x86_64.whl (213.4 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_10_9_universal2.whl (274.8 kB view details)

Uploaded CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64)

quantized_mesh_encoder-0.4.2-cp37-cp37m-win_amd64.whl (214.1 kB view details)

Uploaded CPython 3.7m Windows x86-64

quantized_mesh_encoder-0.4.2-cp37-cp37m-musllinux_1_1_x86_64.whl (520.2 kB view details)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

quantized_mesh_encoder-0.4.2-cp37-cp37m-musllinux_1_1_i686.whl (505.0 kB view details)

Uploaded CPython 3.7m musllinux: musl 1.1+ i686

quantized_mesh_encoder-0.4.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (516.2 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

quantized_mesh_encoder-0.4.2-cp37-cp37m-macosx_10_9_x86_64.whl (213.9 kB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

quantized_mesh_encoder-0.4.2-cp36-cp36m-win_amd64.whl (214.1 kB view details)

Uploaded CPython 3.6m Windows x86-64

quantized_mesh_encoder-0.4.2-cp36-cp36m-musllinux_1_1_x86_64.whl (519.4 kB view details)

Uploaded CPython 3.6m musllinux: musl 1.1+ x86-64

quantized_mesh_encoder-0.4.2-cp36-cp36m-musllinux_1_1_i686.whl (502.9 kB view details)

Uploaded CPython 3.6m musllinux: musl 1.1+ i686

quantized_mesh_encoder-0.4.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (516.5 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

quantized_mesh_encoder-0.4.2-cp36-cp36m-macosx_10_9_x86_64.whl (213.6 kB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

Details for the file quantized-mesh-encoder-0.4.2.tar.gz.

File metadata

  • Download URL: quantized-mesh-encoder-0.4.2.tar.gz
  • Upload date:
  • Size: 136.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized-mesh-encoder-0.4.2.tar.gz
Algorithm Hash digest
SHA256 f1642158a1e7d1e56468e408f80a8c30908373a6b3de3d954fdf4bef0370a63b
MD5 426eef39750df2cb7e2d40528beb65ea
BLAKE2b-256 f750e4a7aa3725d6ad9db39b7bf23df9073a8f25b52acc763099a9b08a5813a3

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 206.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 fb1509317206d159c12b26b8082d5c53bb013d6f06903a2f70a3428e81199949
MD5 729403efafc605220e6f0276f9f34baf
BLAKE2b-256 d750e70bae3c44a1a1f98cf7f37cb223b92674e35cacbd26b623991981374d9c

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp310-cp310-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 538.1 kB
  • Tags: CPython 3.10, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 a62a944f7baf4d8ce0c748b2c2b5272606d8ea85c23a62ca3f8e8ea5cc81ce3f
MD5 4e93dfc370aa33376dd00a91b8f261f4
BLAKE2b-256 a97f49831e5a9535a61e7d4c0eaf7a30a99bc6003e624cf4e6bae182af8ab0c1

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp310-cp310-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 517.8 kB
  • Tags: CPython 3.10, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 6f874faae16473dc2535e0bbc5018121bc41afb86910e75f0461fc7fca871942
MD5 6c19bf68a1228d9bb47bbd2744ee6328
BLAKE2b-256 6df56601d57c98f07ccac4e4eca1e7879e262bc4a34a0f8869f615bf0a4df1ac

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0400922cc060bf013548c1ee3648fa4e8bda01d3e91d2c2ac2c7204e0e256045
MD5 63ed0e77f7e48e88f5b114c8917b11ee
BLAKE2b-256 ee724636923512044a0964e027ee50b463bb9c0a1566dffe876ac9a1636aa7db

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 198.9 kB
  • Tags: CPython 3.10, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ac7e5759e6bea0e3609b8b940f3ade92b96e62457ecb37f36278b28ac43f43bd
MD5 79e1dd1de204a3c5cf9688b890997cbe
BLAKE2b-256 751c148099ccd587dce98b0b5e89773b28a9b7b622e6f306c6e67d189a586512

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 206.8 kB
  • Tags: CPython 3.10, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 387d42b336bee9ee5b00d962b92f9f8448b706d08f5db9d6761c5270a1f0b2dc
MD5 5e01b090347b6b8e504be0d4452506c8
BLAKE2b-256 3b9074a6261bc92fd3403266528bb3f8b14d85d96f1ed7ada97fd4e21d28dc2f

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_10_9_universal2.whl
  • Upload date:
  • Size: 269.8 kB
  • Tags: CPython 3.10, macOS 10.9+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b71eeaaffd75e80406d3468b0aa6645043a0bd667ed55b5a040616b882e1a79c
MD5 8795c5695d961cffd1424959150f5e4f
BLAKE2b-256 cd4e149ab76e8c50f215f98576a37c617464550b46f979d822f7df1795918d6f

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 205.6 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c7ce29e7a8d516bacae0a8fb0aee1911b720a88295ba0263d235f1be2ec1fc7b
MD5 463e0cd03d7788a95bb2f83a995bcb3c
BLAKE2b-256 94be8ce9c4adc61b8526aa0005892b874c6d77ee9f7f9e68fe5a33a4078ef67a

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp39-cp39-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 535.0 kB
  • Tags: CPython 3.9, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 2101f0bea4fce750c1b088c3dd26d1e92784046b9d9586810fb2e6de992a0172
MD5 a9a2619dd7b2af41ce431a5a835d9b93
BLAKE2b-256 af76bec8c0da3323fbdec3b66a700978686e00b0928f04b3efe6bb5cba02b3e6

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp39-cp39-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 514.6 kB
  • Tags: CPython 3.9, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 e65e599becc6c60423c74eae46f44b080ab08879cf345dffbca9c23440648ef1
MD5 5f3d89295989971219c541a0a922f4de
BLAKE2b-256 23503ffd142686ecace4ed20cdd800c89c9cdd80d0fc7b5a9971902473f0e515

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 043ff9ce2cba45219eb949e96485911f225a2806204659046e2f5336fb434560
MD5 6e9f4789ff0a89d061fb98e36f7047c7
BLAKE2b-256 5c641e813a88d53c903e8469ce4284481117308151e76a52394be5a4fb086cd0

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 197.7 kB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3f7fdf8441cd9effb31cacdac43da92b8fa27f8a762f063f508d096b8a20e8dd
MD5 1b74900a3a9dd80c7923be4be1612cd9
BLAKE2b-256 07073a939d349c6f2d5a0000c3433535517c57e3da78f83496f6c52c2f297f95

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 205.5 kB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3ebcb24b4b7043b2b3eb2de608fc669b498234b4d9f418d8888d3fcc9ffb7d00
MD5 38fec71a23ed9f6f1ddac6dada7f3b9e
BLAKE2b-256 f20b2c6c463db9f509c2d6b165003eae7498caa9d5610c3f0338ccfeba0d1fed

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_10_9_universal2.whl
  • Upload date:
  • Size: 268.3 kB
  • Tags: CPython 3.9, macOS 10.9+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 48b222f96ca10a204d429f5b8072a85364a8f7649bd4e5d473a63741a51f7917
MD5 19bc226a619249364d4de9e61537f109
BLAKE2b-256 5196d04da871412296dd837ee2d634fbd70958d7596b20b1655ebc0ddd5daf0c

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 215.0 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c5787b7c55f3169864efbc3327d55510c9945f5228e431eff9f1c550a31c2611
MD5 36551d3cc1b11a0c5fcd30fad08b99ec
BLAKE2b-256 3780b50bf929eaedb7614cfffc1250d284f081c06d882477f493a85d0a52196e

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp38-cp38-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 554.1 kB
  • Tags: CPython 3.8, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 e11a4229f4644ddff7578500e2b70fe2adbac42fd68068cf949ececa55bd9018
MD5 10804af32f199039abe97b9745c63320
BLAKE2b-256 6f2d2afc6cb3b659829d90aeddb83261bab8f2436a4ed100d49dd805cf9010fb

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp38-cp38-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 537.0 kB
  • Tags: CPython 3.8, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 3704ba8c5d8953f3f847f9f716b6bb05bdc726dcc44ef94aa8efb9b96b55cea1
MD5 2eff7ea313ded9701a3f6202b9cbaf70
BLAKE2b-256 e05ba0a8efae191a572d89a78459def0bda1484044c279ad829ab63f20333044

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8960356ea5bd2498646f4917eda11ad6a0020d48e69bf0a4c132b19b47b192e1
MD5 55c5dc66c71ae5c30a97d006d52dafdf
BLAKE2b-256 18018a5f76929d0d7fbf6c9fb17e79f3a7dcdcc935282035964504b30c31a7a1

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 205.9 kB
  • Tags: CPython 3.8, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 829c7a8bed907b6ec928609ebf2d9658cce5d039ecab670bc316cd34501ce45f
MD5 182de07b234910fddb0103e0625f089b
BLAKE2b-256 c2f267384012f269c1628bbff5fcc9fc6f1b50fa89a706531d661274bb4650f8

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 213.4 kB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 da8f62ac336545796026b904047e97405de8771b03f88b4369890edb9fe58c94
MD5 9f9a0d8ff961dab1117a38c3f6efe279
BLAKE2b-256 5c5391c319c8a62be77f719b1aeee1f516cd6b3c10d941b92e0af808e8447da2

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_10_9_universal2.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_10_9_universal2.whl
  • Upload date:
  • Size: 274.8 kB
  • Tags: CPython 3.8, macOS 10.9+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp38-cp38-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 347259b7f62581e07794cc7cca062525833ae78dbbc1734e3de53a5f72543305
MD5 347b579a1e6ec630f994f6414a34fe63
BLAKE2b-256 f6bec77f165893f950b452c97c0f6e213ccadd2a9e9a838fc01bc94c00a0e32c

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 214.1 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 058033b385a171b51b715c2b47bc7adf9c6b587867763c91939e027e81df664b
MD5 5355ebbda18441b79411516809613712
BLAKE2b-256 58e3a8d5960c3e2931daa4e53b3fa29e8cc97f6fd894f87d419ffc4778cced0a

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp37-cp37m-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp37-cp37m-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 520.2 kB
  • Tags: CPython 3.7m, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 7510123014ee70ed2724387ce3c9ea22a5608792f97e9275dc8e9a615d1baf77
MD5 4fd9fe6a9ac7dff5fa9bd5374aaec005
BLAKE2b-256 0a7885e78bc8309585570d8be9dc3c7a05960af548e166d4f9b2481782b011ad

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp37-cp37m-musllinux_1_1_i686.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp37-cp37m-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 505.0 kB
  • Tags: CPython 3.7m, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 83773e970468d2d0e0fdca785cd93c522159458f23d1929802f16f8bfc1d21fe
MD5 2e4cb7215fa4ee738c1a645ec9bc9a1b
BLAKE2b-256 f070aae4e53f7847f3b5b59988f1662d76c5815f93e96d8b03f4f30624b49cdc

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bb3431521e64344482eb9535818746c8e3045b77eb82128972cb7f990a7d78a5
MD5 c0375fc451dee42d0d909c42921ec301
BLAKE2b-256 850f45f8851e1a344cb3a0a9bb26419499674abf532cc30a23f612b47ad77bb5

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 213.9 kB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2b5a13f1dd05fa4c0b2038c5dc6be14b0c929c287014d6a5581e10c9ca68c1db
MD5 ac505ed52535be0e44584b18c5330623
BLAKE2b-256 a1480a678d65b7509cb0e678972f159dd42747dff040883f389f2f36ab5ae3ba

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 214.1 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 d3d25b1948adfb14a82630cd03c7b77e42cf5fedfc6f87e7d9bbe229740c3ded
MD5 ab9f9eb28aea0230573b103162e2dbce
BLAKE2b-256 60f997dd13e61c19187cb280f84e6a6e7ee412d6ce4005cced0764dba32562c5

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp36-cp36m-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp36-cp36m-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 519.4 kB
  • Tags: CPython 3.6m, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 ee777c875d58c35d080c5f017ebbcaeead308ef74ce66473dc060e4a832463b8
MD5 dfeebf6dda583190940f286e1ec0b6cb
BLAKE2b-256 e028aed0207f3b0a31c4ab1b4b4da4d67abf66e645650f86ac87e9fd7c71453f

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp36-cp36m-musllinux_1_1_i686.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp36-cp36m-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 502.9 kB
  • Tags: CPython 3.6m, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp36-cp36m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 6dd87876f9b89f9cf2c6c2ceb20ee4fd524a2fa60174eafee6953f39542417c3
MD5 92a1865df882afaa860dfffda0fd2f66
BLAKE2b-256 498361b638a34bdd0c371d582cc0b6fcd6d021085161dccb04eb1272b079e69d

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 791f0db6a768d9d334047f5556d1fe600d86c26ed7f1e07790e20a450dbeb76e
MD5 f515f0ccd3ef122b473eb7b8c50cb721
BLAKE2b-256 7220f288d97efd780ac886c39afb41ba022a5ab78c142b5aa36b1d31e2ee82dc

See more details on using hashes here.

File details

Details for the file quantized_mesh_encoder-0.4.2-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: quantized_mesh_encoder-0.4.2-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 213.6 kB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quantized_mesh_encoder-0.4.2-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e4ee7e07d7060baa749c8b9b2f10f4849ce6776cf0fa13624304d8423be78d02
MD5 1d5664f59d2a4b6c3db8d3c31a9d8e3b
BLAKE2b-256 f5b02597c6382cc27aafeec344ea544df0a7156ab15a0bfe47b04a4f7021b114

See more details on using hashes here.

Supported by

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