MCPcopy Create free account
hub / github.com/PyMesh/PyMesh / compress

Function compress

python/pymesh/compression.py:6–33  ·  view source on GitHub ↗

Compress mesh data. Args: mesh (:class:`Mesh`): Input mesh. engine_name (``string``): Valid engines are: * ``draco``: `Google's Draco engine `_ [#]_ Returns: A binary string representing the compressed mes

(mesh, engine_name="draco")

Source from the content-addressed store, hash-verified

4from .Mesh import Mesh
5
6def compress(mesh, engine_name="draco"):
7 """ Compress mesh data.
8
9 Args:
10 mesh (:class:`Mesh`): Input mesh.
11 engine_name (``string``): Valid engines are:
12
13 * ``draco``: `Google&#x27;s Draco engine <https://google.github.io/draco/>`_
14 [#]_
15
16 Returns:
17 A binary string representing the compressed mesh data.
18
19 A simple usage example:
20
21 >>> mesh = pymesh.generate_icosphere(1.0, [0, 0, 0])
22 >>> data = pymesh.compress(mesh)
23 >>> with open("out.drc", 'wb') as fout:
24 ... fout.write(data)
25
26 .. [#] Draco uses lossy compression. Both accuarcy and
27 vertices/face order will be lost due to compression. Draco only works
28 with triangular mesh or point cloud.
29
30 """
31 engine = PyMesh.CompressionEngine.create(engine_name)
32 data = engine.compress(mesh.raw_mesh)
33 return data
34
35def decompress(data, engine_name="draco"):
36 """ Decompress mesh data.

Callers

nothing calls this directly

Calls 2

createMethod · 0.45
compressMethod · 0.45

Tested by

no test coverage detected