polyvox/tests/TestSurfaceExtractor.py
Matt Williams bb3d3c4b68 Add a EXTRACTORS macro to automate the generation of the extractors
Like with VOLUMETYPES it is centralising the definitions of the volume and
voxel types.
2012-11-24 15:37:46 +00:00

26 lines
793 B
Python

# -*- coding: utf-8 -*-
import sys
sys.path.append("../library/bindings/")
import unittest
class TestSurfaceExtractor(unittest.TestCase):
def setUp(self):
import PolyVoxCore
#Create a small volume
r = PolyVoxCore.Region(PolyVoxCore.Vector3DInt32(0,0,0), PolyVoxCore.Vector3DInt32(31,31,31))
vol = PolyVoxCore.SimpleVolumeDensity8(r)
#Set one single voxel to have a reasonably high density
vol.setVoxelAt(PolyVoxCore.Vector3DInt32(5, 5, 5), PolyVoxCore.Density8(200))
self.mesh = PolyVoxCore.SurfaceMeshPositionMaterialNormal()
extractor = PolyVoxCore.MarchingCubesSurfaceExtractorSimpleVolumeDensity8(vol, r, self.mesh)
extractor.execute()
def test_num_vertices(self):
self.assertEqual(self.mesh.getNoOfVertices(), 6)
if __name__ == '__main__':
unittest.main()