[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [2499] branches/geodesic_domes/tests/ 2011test.py: Testfile of 20 oct.

Peter K.H. Gragert pkhgragert at gmail.com
Fri Oct 21 07:33:10 CEST 2011


Revision: 2499
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=2499
Author:   pkhg
Date:     2011-10-21 05:33:10 +0000 (Fri, 21 Oct 2011)
Log Message:
-----------
Testfile of 20 oct. creating a tetrahedron
creategeo did not work, so the relevant parts are loaded
directly
works with all the files without import sys!

Added Paths:
-----------
    branches/geodesic_domes/tests/2011test.py

Added: branches/geodesic_domes/tests/2011test.py
===================================================================
--- branches/geodesic_domes/tests/2011test.py	                        (rev 0)
+++ branches/geodesic_domes/tests/2011test.py	2011-10-21 05:33:10 UTC (rev 2499)
@@ -0,0 +1,116 @@
+import unittest
+from mathutils import Vector #needed to check vertex.vector values
+from geodesic_domes import geodesic_classes_259
+from geodesic_domes import vefm_259
+from geodesic_domes import forms_259
+print("\n--------------------start  test GEODESIC-------------\n\n")
+
+def check_contains(cl,name , print_value = False):
+    dir_class = dir(cl)
+    for el in dir_class:
+        if el.startswith("_"):
+            pass
+        else:
+            if print_value:
+                tmp = getattr(cl,el)
+                print(name , " contains ==>",el," value = ", tmp)
+            else:
+                print(name , " contains ==>",el)
+    print("\ncheck_contains finished\n\n")
+    
+#check_contains(dir(geodesic_classes_259),name = "geodesic_classes")
+        
+class geodesic_259_Test(unittest.TestCase):
+
+#    def setUp(self):
+#        unittest.TestCase.setUp(self)
+#        self.geodesic = geodesic_classes_259.geodesic(vefm_259.mesh)
+#        self.vefm = geodesic_classes_259.vefm_259
+#        self.tetrahedron = geodesic_classes_259.tetrahedron(self.geodesic)
+#        self.tetraface =  geodesic_classes_259.tetraface(self.geodesic)
+#        self.tetraedge =  geodesic_classes_259.tetraedge(self.geodesic)
+
+#        print("\n-=-=-=-=-=",dir(self.tetrahedron))
+#        print(type(self.geodesic))
+#        self.parameters = (1,)*15
+#        self.superformparam = [3, 10.0, 10.0, 10.0, 1.0, 1.0, 4, 10.0,10.0, 10.0, 1.0, 1.0, 0, 0, 0.0, 0.0, 0.0, 0.0]
+
+        
+    def test_content_modules(self):
+#        mygeodesic = geodesic_259
+#        myvefm = vefm_259
+#        print("\n-=-=-=-=-=",dir(self.tetrahedron))
+#        print("type of mygeodesic =",type(mygeodesic))
+
+        try:
+            parameter = (4,)*15
+            sform = superformparam = [3, 10.0, 10.0, 10.0, 1.0, 1.0, 4, 10.0,10.0, 10.0, 1.0, 1.0, 0, 0, 0.0, 0.0, 0.0, 0.0]
+
+            vefmmesh = vefm_259.mesh()
+            check_contains(vefmmesh,name="test")
+            #!!!PKHG class geodesic_259 changed: paramter now needed!
+            geodesic = geodesic_classes_259.geodesic(parameter)
+            #check_contains(geodesic,name="goedsic")
+            geodesic.setparameters() #NEEDED does not work directly could be done!
+            self.assertTrue(geodesic.frequency == 4)
+        finally:
+            print("\ntest_content_modules  done\n\n")
+
+    def test_creat_tetrahedron(self):
+
+        try:
+            parameters = (4,)*15
+            sform = superformparam = [3, 10.0, 10.0, 10.0, 1.0, 1.0, 4, 10.0,10.0, 10.0, 1.0, 1.0, 0, 0, 0.0, 0.0, 0.0, 0.0]
+            geodesic = geodesic_classes_259.geodesic(parameters)
+            geodesic.setparameters() #!!!PKHGnow needed!
+            self.assertTrue(geodesic.frequency == parameters[0])
+            tetrahedron = geodesic_classes_259.tetrahedron(geodesic)
+            tetrahedron.vertedgefacedata()
+            tetrahedron.config()
+            vefm_259.vefm_add_object(tetrahedron)
+            pp = tetrahedron.panelpoints[0]
+#            tetrahedron.geodesic.config()
+            self.assertTrue(pp == [0,1,2])
+            self.assertTrue(tetrahedron)
+            verts_of_tetrahedron = tetrahedron.vertskeleton[:]
+#            print(verts_of_tetrahedron)
+            self.assertTrue(4 == len(verts_of_tetrahedron))
+            vert_0 = verts_of_tetrahedron[0]
+#            check_contains(vert_0,name='vertex 0')
+            verts_point =[Vector(( 0.0 , 0.0 , 1.73205080757 )),
+                          Vector(( 0.0 , -1.63299316185 , -0.577350269185 )),
+                          Vector(( 1.41421356237 , 0.816496580927 , -0.57735026919 )),
+                          Vector(( -1.41421356237 , 0.816496580927 , -0.57735026919 ))    
+                        ]
+            for i, el in enumerate(verts_point):
+                self.assertEqual(verts_of_tetrahedron[i].vector, el)
+            check_contains(tetrahedron,"tetrahedron",True)
+            #vefm_259.vefm_add_object(tetrahedron)
+
+#            verts_of_tetrahedron = tetraface.vertskeleton[:]
+#            print("\n+++++++++++ verts_of_tetrahedron",verts_of_tetrahedron)
+            ''' voor tetraface!
+            vertex = Vector #beeing lazy
+            verts_face = [vertex(( -1.41421356237 , -0.816496580927 , 0.57735026919 )),
+                          vertex(( 1.41421356237 , -0.816496580927 , 0.57735026919 )),
+                          vertex(( 0.0 , 1.63299316185 , 0.577350269185 )),
+                          vertex(( 0.0 , 0.0 , -1.73205080757 ))
+                          ]
+            for i, el in enumerate(verts_face):
+                self.assertEqual(verts_of_tetrahedron[i].vector,el)
+            verts_of_tetrahedron = tetraedge.vertskeleton[:]
+            verts_edge = [vertex(( 0.0 , -1.41421356237 , 1.0 )),
+                          vertex(( 0.0 , 1.41421356237 , 1.0 )),
+                          vertex(( 1.41421356237 , 0.0 , -1.0 )),
+                          vertex(( -1.41421356237 , 0.0 , -1.0 ))    
+                          ]
+            for i, el in enumerate(verts_edge):
+                self.assertEqual(verts_of_tetrahedron[i].vector,el)
+            #'''
+        finally:
+            pass
+if __name__ == '__main__':
+#if main use: exit=False    unittest.main(exit=False)
+    suite =     unittest.TestLoader().loadTestsFromTestCase(geodesic_259_Test)
+    unittest.TextTestRunner(verbosity=3).run(suite)
+    



More information about the Bf-extensions-cvs mailing list