OSDN Git Service

fix mqobuilder
[meshio/pymeshio.git] / examples / opengl / vertexarray.py
index ccc304b..b9dee7b 100644 (file)
@@ -61,6 +61,29 @@ class VertexArrayWithUV(object):
         glDisableClientState(GL_TEXTURE_COORD_ARRAY)\r
         glDisableClientState(GL_VERTEX_ARRAY)\r
 \r
+    def get_boundingbox(self):\r
+        vertices_size=len(self.vertices)\r
+        if(vertices_size==0):\r
+            return ([0, 0, 0], [0, 0, 0])\r
+        def vertex_gen_factory():\r
+            for i in range(0, vertices_size, 3):\r
+                yield [\r
+                        self.vertices[i],\r
+                        self.vertices[i+1],\r
+                        self.vertices[i+2]\r
+                        ]\r
+        vertex_gen=vertex_gen_factory()\r
+        v=next(vertex_gen)\r
+        max_v=v[:]\r
+        min_v=v[:]\r
+        for v in vertex_gen:\r
+            min_v[0]=min(min_v[0], v[0]) \r
+            min_v[1]=min(min_v[1], v[1]) \r
+            min_v[2]=min(min_v[2], v[2]) \r
+            max_v[0]=max(max_v[0], v[0]) \r
+            max_v[1]=max(max_v[1], v[1]) \r
+            max_v[2]=max(max_v[2], v[2]) \r
+        return (min_v, max_v)\r
 \r
 '''\r
 インデックス参照頂点配列\r
@@ -129,8 +152,6 @@ class IndexedVertexArray(object):
         vertices_size=len(self.vertices)\r
         if(vertices_size==0):\r
             return ([0, 0, 0], [0, 0, 0])\r
-        print('vertices_size %d' % vertices_size)\r
-        print(self.vertices[0])\r
         def vertex_gen_factory():\r
             for i in range(0, vertices_size, 4):\r
                 yield [\r