MCPcopy Create free account
hub / github.com/MeshInspector/MeshLib / test_numpy_voxels

Function test_numpy_voxels

test_python/test_numpy_voxels.py:8–27  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

6
7
8def test_numpy_voxels():
9 sphere = mrmesh.makeSphere(mrmesh.SphereParams())
10 params = mrmesh.MeshToDistanceVolumeParams()
11 voxelSize = 0.01
12 box = sphere.computeBoundingBox()
13 expansion = mrmesh.Vector3f.diagonal(3 * voxelSize)
14
15 params.vol.origin = box.min - expansion
16 params.vol.voxelSize = mrmesh.Vector3f.diagonal(0.01)
17 dimensionsF = (box.max + expansion - params.vol.origin) / voxelSize
18 params.vol.dimensions = mrmesh.Vector3i(
19 int(dimensionsF.x), int(dimensionsF.y), int(dimensionsF.z)
20 ) + mrmesh.Vector3i.diagonal(1)
21 params.dist.signMode = mrmesh.SignDetectionMode.HoleWindingRule
22 params.dist.maxDistSq = 3 * voxelSize
23 volume = mrmesh.meshToDistanceVolume(sphere, params)
24 npArray = mrmeshnumpy.getNumpy3Darray(volume)
25 assert npArray.shape[0] == params.vol.dimensions.x
26 assert npArray.shape[1] == params.vol.dimensions.y
27 assert npArray.shape[2] == params.vol.dimensions.z

Callers

nothing calls this directly

Calls 2

computeBoundingBoxMethod · 0.45
diagonalMethod · 0.45

Tested by

no test coverage detected