2
0

test_geom.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. from panda3d import core
  2. empty_format = core.GeomVertexFormat.get_empty()
  3. def test_geom_decompose_in_place():
  4. vertex_data = core.GeomVertexData("", empty_format, core.GeomEnums.UH_static)
  5. prim = core.GeomTristrips(core.GeomEnums.UH_static)
  6. prim.add_vertex(0)
  7. prim.add_vertex(1)
  8. prim.add_vertex(2)
  9. prim.add_vertex(3)
  10. prim.close_primitive()
  11. geom = core.Geom(vertex_data)
  12. geom.add_primitive(prim)
  13. geom.decompose_in_place()
  14. prim = geom.get_primitive(0)
  15. assert tuple(prim.get_vertex_list()) == (0, 1, 2, 2, 1, 3)
  16. def test_geom_decompose():
  17. vertex_data = core.GeomVertexData("", empty_format, core.GeomEnums.UH_static)
  18. prim = core.GeomTristrips(core.GeomEnums.UH_static)
  19. prim.add_vertex(0)
  20. prim.add_vertex(1)
  21. prim.add_vertex(2)
  22. prim.add_vertex(3)
  23. prim.close_primitive()
  24. geom = core.Geom(vertex_data)
  25. geom.add_primitive(prim)
  26. new_geom = geom.decompose()
  27. new_prim = new_geom.get_primitive(0)
  28. assert tuple(new_prim.get_vertex_list()) == (0, 1, 2, 2, 1, 3)
  29. # Old primitive should still be unchanged
  30. assert prim == geom.get_primitive(0)