]> SALOME platform Git repositories - modules/smesh.git/commitdiff
Salome HOME
Add some unit tests
authorjfa <jfa@opencascade.com>
Thu, 11 Jul 2024 15:46:22 +0000 (16:46 +0100)
committerjfa <jfa@opencascade.com>
Thu, 11 Jul 2024 15:46:22 +0000 (16:46 +0100)
src/StdMeshers.test/HexahedronTest.cxx
test/data/HexahedronTest/NRTM1.brep

index 8467ac857426a3369e17eb45e08f292161b2e68b..e5037897fda70afebacf6ee59ce641b9ba13a71f 100644 (file)
 #include <cppunit/TestAssert.h>
 
 // OCC 
-#include<BRep_Builder.hxx>
-#include<BRepTools.hxx>
+#include <BRep_Builder.hxx>
+#include <BRepTools.hxx>
+#include <BRepPrimAPI_MakeBox.hxx>
+#include <BRepPrimAPI_MakeCylinder.hxx>
+#include <BRepPrimAPI_MakeSphere.hxx>
+#include <BRepPrimAPI_MakeCone.hxx>
 
-#include<iostream>
+#include <iostream>
 #include <memory>
 
 // Helper functions!
@@ -72,8 +76,12 @@ void loadBrepShape( std::string shapeName, TopoDS_Shape & shape )
 }
 
 // Initialize the grid and intesersectors of grid with the geometry
-void GridInitAndInterserctWithShape( Grid& grid, double gridSpacing, TopoDS_Shape& theShape, 
-                                      std::map< TGeomID, vector< TGeomID > >& edge2faceIDsMap, const int numOfThreads )
+void GridInitAndIntersectWithShape( Grid& grid,
+                                    double gridSpacing,
+                                    double theSizeThreshold,
+                                    const TopoDS_Shape theShape, 
+                                    std::map< TGeomID, vector< TGeomID > >& edge2faceIDsMap,
+                                    const int /*numOfThreads*/ )
 {
   std::vector< TopoDS_Shape > faceVec;
   TopTools_MapOfShape faceMap;
@@ -110,7 +118,7 @@ void GridInitAndInterserctWithShape( Grid& grid, double gridSpacing, TopoDS_Shap
   myHypo->SetGridSpacing(grdSpace, intPnts, 0 ); // Spacing in dir 0
   myHypo->SetGridSpacing(grdSpace, intPnts, 1 ); // Spacing in dir 1
   myHypo->SetGridSpacing(grdSpace, intPnts, 2 ); // Spacing in dir 2
-  myHypo->SetSizeThreshold(4.0);                 // set threshold
+  myHypo->SetSizeThreshold(theSizeThreshold);    // set threshold
   myHypo->GetCoordinates(xCoords, yCoords, zCoords, shapeBox);
   grid.SetCoordinates( xCoords, yCoords, zCoords, axisDirs, shapeBox );
 
@@ -146,7 +154,7 @@ bool testNRTM1()
       grid.InitGeometry( myShape );
       
       std::map< TGeomID, vector< TGeomID > > edge2faceIDsMap;
-      GridInitAndInterserctWithShape( grid, 1.0, myShape, edge2faceIDsMap, numOfThreads );
+      GridInitAndIntersectWithShape( grid, 1.0, 4.0, myShape, edge2faceIDsMap, numOfThreads );
       Hexahedron hex( &grid );
       int nbAdded = hex.MakeElements( helper, edge2faceIDsMap, numOfThreads );
       CPPUNIT_ASSERT_MESSAGE( "Number of computed elements does not match", nbAdded == 1024 );
@@ -155,9 +163,151 @@ bool testNRTM1()
   return true;
 }
 
+// Test fitting of the given shape
+bool testShape (const TopoDS_Shape theShape,
+                const bool toAddEdges,
+                const bool toCreateFaces,
+                const double theGridSpacing,
+                const double theSizeThreshold,
+                const int theNbCreatedExpected)
+{
+  std::unique_ptr<SMESH_Mesh> aMesh( new SMESH_Mesh_Test() );
+  aMesh->ShapeToMesh( theShape );
+  SMESH_MesherHelper helper( *aMesh );
+  Grid grid;
+  grid._helper = &helper;
+  grid._toAddEdges = toAddEdges;
+  grid._toCreateFaces = toCreateFaces;
+  grid._toConsiderInternalFaces = false;
+  grid._toUseThresholdForInternalFaces = false;
+  grid._toUseQuanta = false;
+  grid._sizeThreshold = theSizeThreshold;
+  grid.InitGeometry( theShape );
+
+  std::map< TGeomID, vector< TGeomID > > edge2faceIDsMap;
+  GridInitAndIntersectWithShape( grid, theGridSpacing, theSizeThreshold,
+                                 theShape, edge2faceIDsMap, 1 );
+  Hexahedron hex( &grid );
+  int nbAdded = hex.MakeElements( helper, edge2faceIDsMap, 1 );
+  if (nbAdded != theNbCreatedExpected) {
+    std::stringstream buffer;
+    buffer << "Number of computed elements does not match: obtained " << nbAdded << " != expected " << theNbCreatedExpected;
+    //CPPUNIT_ASSERT_MESSAGE(buffer.str().c_str(), nbAdded == theNbCreatedExpected );
+    //MESSAGE(buffer.str().c_str());
+    //CppUnitTestFramework::Logger::WriteMessage(buffer.str().c_str());
+    std::cerr << buffer.str() << std::endl;
+    return false;
+  }
+
+  return true;
+}
+
+// Test some primitive shapes
+bool testPrimitives()
+{
+  bool isOK = true;
+
+  // Test fitting of a box
+  BRepPrimAPI_MakeBox aMakeBox (10, 20, 30);
+  aMakeBox.Build();
+  CPPUNIT_ASSERT_MESSAGE( "Could not create the box!", aMakeBox.IsDone() );      
+  TopoDS_Shape aShape = aMakeBox.Shape();
+
+  // Test exact fitting of a box
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/4, /*theNbCreatedExpected*/6))
+    isOK = false;
+  if (!testShape (aShape, /*toAddEdges*/true, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/4, /*theNbCreatedExpected*/6))
+    isOK = false;
+
+  // TODO: debug this case
+  //if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/true,
+  //                /*gridSpacing*/10, /*theSizeThreshold*/4, /*theNbCreatedExpected*/8))
+  //  isOK = false;
+
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/5, /*theSizeThreshold*/4, /*theNbCreatedExpected*/48))
+    isOK = false;
+
+  // Test not exact fitting of a box
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/7, /*theSizeThreshold*/4, /*theNbCreatedExpected*/12))
+    isOK = false;
+
+  // Test fitting of a cylinder
+  gp_Ax2 anAxes (gp::Origin(), gp::DZ());
+  BRepPrimAPI_MakeCylinder aMakeCyl (anAxes, 20., 30.);
+  aMakeCyl.Build();
+  CPPUNIT_ASSERT_MESSAGE( "Could not create the cylinder!", aMakeCyl.IsDone() );      
+  aShape = aMakeCyl.Shape();
+
+  // test for different threshold values
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/4, /*theNbCreatedExpected*/48))
+    isOK = false;
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/2, /*theNbCreatedExpected*/36))
+    isOK = false;
+
+  // Test fitting of a sphere
+  BRepPrimAPI_MakeSphere aMakeSph (anAxes, 30.);
+  aMakeSph.Build();
+  CPPUNIT_ASSERT_MESSAGE( "Could not create the sphere!", aMakeSph.IsDone() );      
+  aShape = aMakeSph.Shape();
+
+  // test for different threshold values
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/4, /*theNbCreatedExpected*/136))
+    isOK = false;
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/2, /*theNbCreatedExpected*/88))
+    isOK = false;
+
+  // Test fitting of a cone
+  BRepPrimAPI_MakeCone aMakeCon (anAxes, 30., 0., 40.);
+  aMakeCon.Build();
+  CPPUNIT_ASSERT_MESSAGE( "Could not create the cone!", aMakeCon.IsDone() );      
+  aShape = aMakeCon.Shape();
+
+  // test for different threshold values
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/100, /*theNbCreatedExpected*/72))
+    isOK = false;
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/4, /*theNbCreatedExpected*/40))
+    isOK = false;
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/1.5, /*theNbCreatedExpected*/32))
+    isOK = false;
+
+  // truncated cone
+  aMakeCon = BRepPrimAPI_MakeCone(anAxes, 30., 15., 20.);
+  aMakeCon.Build();
+  CPPUNIT_ASSERT_MESSAGE( "Could not create the cone!", aMakeCon.IsDone() );      
+  aShape = aMakeCon.Shape();
+
+  // test for different threshold values
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/100, /*theNbCreatedExpected*/56))
+    isOK = false;
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/4, /*theNbCreatedExpected*/36))
+    isOK = false;
+  if (!testShape (aShape, /*toAddEdges*/false, /*toCreateFaces*/false,
+                  /*gridSpacing*/10, /*theSizeThreshold*/1.5, /*theNbCreatedExpected*/28))
+    isOK = false;
+
+  return isOK;
+}
+
 // Entry point for test
 int main()
 {
-  auto t0 = testNRTM1();
-  return 0;
-}
\ No newline at end of file
+  bool isOK = testNRTM1();
+
+  if (!testPrimitives())
+    isOK = false;
+
+  return isOK ? 0 : 1;
+}
index 2508f0ca63dffe5bb276f8059838665f349b4121..1807a694db0ef231c9bfc2618d7b8cb4a826a4de 100644 (file)
@@ -1,8 +1,8 @@
 DBRep_DrawableShape
 
-CASCADE Topology V3, (c) Open Cascade
+CASCADE Topology V1, (c) Matra-Datavision
 Locations 0
-Curve2ds 32
+Curve2ds 36
 1 0 0 1 0 
 1 0 0 1 0 
 1 10 0 0 -1 
@@ -13,29 +13,33 @@ Curve2ds 32
 1 0 0 0 1 
 1 0 0 0 1 
 1 0 0 1 0 
-1 0 0 1 0 
 1 0 10 1 0 
-1 10 0 0 1 
 1 0 0 1 0 
 1 10 0 0 1 
+1 0 0 1 0 
 1 0 10 1 0 
-1 10 0 0 -1 
 1 10 0 0 1 
+1 10 0 0 1 
+1 10 0 0 -1 
 1 0 0 0 1 
 1 0 10 1 0 
-1 0 -10 1 0 
 1 0 10 1 0 
-1 0 0 0 -1 
+1 0 -10 1 0 
 1 10 0 0 1 
+1 0 0 0 -1 
+2 5 5 1 0 -0 1 1
+1 0 6 1 0 
 2 5 5 1 0 -0 1 1
 1 0 6 1 0 
 1 6.2831853071795862 -0 0 1 
 1 0 -0 0 1 
 1 0 9 1 0 
 2 0 0 1 0 -0 1 1
+1 6.2831853071795862 -0 0 1 
+1 0 -0 0 1 
 1 0 0 1 0 
 2 0 0 1 0 -0 1 1
-Curves 16
+Curves 17
 1 -5 -5 0 0 0 1 
 1 -5 -5 10 -0 1 0 
 1 -5 5 0 0 0 1 
@@ -51,82 +55,11 @@ Curves 16
 2 0 0 0 0 0 1 1 0 -0 -0 1 0 1
 1 1 -2.4492935982947064e-16 -6 0 0 1 
 2 0 0 3 0 0 1 1 0 -0 -0 1 0 1
+1 1 -2.4492935982947064e-16 -6 0 0 1 
 2 0 0 -6 0 0 1 1 0 -0 -0 1 0 1
 Polygon3D 0
-PolygonOnTriangulations 36
-2 1 2 
-p 0.0640000008 1 0 10 
-2 1 3 
-p 0.0640000008 1 0 10 
-2 2 4 
-p 0.0640000008 1 0 10 
-2 1 2 
-p 0.0640000008 1 0 10 
-2 3 4 
-p 0.0640000008 1 0 10 
-2 1 3 
-p 0.0640000008 1 0 10 
-2 1 3 
-p 0.0640000008 1 0 10 
-2 1 2 
-p 0.0640000008 1 0 10 
-2 1 2 
-p 0.0640000008 1 0 10 
-2 1 3 
-p 0.0640000008 1 0 10 
-2 2 4 
-p 0.0640000008 1 0 10 
-2 1 2 
-p 0.0640000008 1 0 10 
-2 3 4 
-p 0.0640000008 1 0 10 
-2 1 3 
-p 0.0640000008 1 0 10 
-2 2 4 
-p 0.0640000008 1 0 10 
-2 3 4 
-p 0.0640000008 1 0 10 
-2 3 4 
-p 0.0640000008 1 0 10 
-2 2 4 
-p 0.0640000008 1 0 10 
-2 1 2 
-p 0.0640000008 1 0 10 
-2 2 4 
-p 0.0640000008 1 0 10 
-2 2 4 
-p 0.0640000008 1 0 10 
-2 3 4 
-p 0.0640000008 1 0 10 
-2 3 4 
-p 0.0640000008 1 0 10 
-2 1 3 
-p 0.0640000008 1 0 10 
-37 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 1 
-p 0.0640000008 1 0 0.174532925199433 0.349065850398866 0.523598775598299 0.698131700797732 0.872664625997165 1.0471975511966 1.22173047639603 1.39626340159546 1.5707963267949 1.74532925199433 1.91986217719376 2.0943951023932 2.26892802759263 2.44346095279206 2.61799387799149 2.79252680319093 2.96705972839036 3.14159265358979 3.31612557878922 3.49065850398866 3.66519142918809 3.83972435438752 4.01425727958696 4.18879020478639 4.36332312998582 4.53785605518525 4.71238898038469 4.88692190558412 5.06145483078355 5.23598775598299 5.41052068118242 5.58505360638185 5.75958653158128 5.93411945678072 6.10865238198015 6.28318530717959 
-37 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 
-p 0.0640000008 1 0 0.174532925199433 0.349065850398866 0.523598775598299 0.698131700797732 0.872664625997165 1.0471975511966 1.22173047639603 1.39626340159546 1.5707963267949 1.74532925199433 1.91986217719376 2.0943951023932 2.26892802759263 2.44346095279206 2.61799387799149 2.79252680319093 2.96705972839036 3.14159265358979 3.31612557878922 3.49065850398866 3.66519142918809 3.83972435438752 4.01425727958696 4.18879020478639 4.36332312998582 4.53785605518525 4.71238898038469 4.88692190558412 5.06145483078355 5.23598775598299 5.41052068118242 5.58505360638185 5.75958653158128 5.93411945678072 6.10865238198015 6.28318530717959 
-37 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 5 
-p 0.0640000008 1 0 0.174532925199433 0.349065850398866 0.523598775598299 0.698131700797732 0.872664625997165 1.0471975511966 1.22173047639603 1.39626340159546 1.5707963267949 1.74532925199433 1.91986217719376 2.0943951023932 2.26892802759263 2.44346095279206 2.61799387799149 2.79252680319093 2.96705972839036 3.14159265358979 3.31612557878922 3.49065850398866 3.66519142918809 3.83972435438752 4.01425727958696 4.18879020478639 4.36332312998582 4.53785605518525 4.71238898038469 4.88692190558412 5.06145483078355 5.23598775598299 5.41052068118242 5.58505360638185 5.75958653158128 5.93411945678072 6.10865238198015 6.28318530717959 
-37 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 1 
-p 0.0640000008 1 0 0.174532925199433 0.349065850398866 0.523598775598299 0.698131700797732 0.872664625997165 1.0471975511966 1.22173047639603 1.39626340159546 1.5707963267949 1.74532925199433 1.91986217719376 2.0943951023932 2.26892802759263 2.44346095279206 2.61799387799149 2.79252680319093 2.96705972839036 3.14159265358979 3.31612557878922 3.49065850398866 3.66519142918809 3.83972435438752 4.01425727958696 4.18879020478639 4.36332312998582 4.53785605518525 4.71238898038469 4.88692190558412 5.06145483078355 5.23598775598299 5.41052068118242 5.58505360638185 5.75958653158128 5.93411945678072 6.10865238198015 6.28318530717959 
-2 1 2 
-p 0.0640000008 1 6 9 
-2 39 3 
-p 0.0640000008 1 6 9 
-37 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 2 
-p 0.0640000008 1 0 0.174532925199433 0.349065850398866 0.523598775598299 0.698131700797732 0.872664625997165 1.0471975511966 1.22173047639603 1.39626340159546 1.5707963267949 1.74532925199433 1.91986217719376 2.0943951023932 2.26892802759263 2.44346095279206 2.61799387799149 2.79252680319093 2.96705972839036 3.14159265358979 3.31612557878922 3.49065850398866 3.66519142918809 3.83972435438752 4.01425727958696 4.18879020478639 4.36332312998582 4.53785605518525 4.71238898038469 4.88692190558412 5.06145483078355 5.23598775598299 5.41052068118242 5.58505360638185 5.75958653158128 5.93411945678072 6.10865238198015 6.28318530717959 
-37 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 1 
-p 0.0640000008 1 0 0.174532925199433 0.349065850398866 0.523598775598299 0.698131700797732 0.872664625997165 1.0471975511966 1.22173047639603 1.39626340159546 1.5707963267949 1.74532925199433 1.91986217719376 2.0943951023932 2.26892802759263 2.44346095279206 2.61799387799149 2.79252680319093 2.96705972839036 3.14159265358979 3.31612557878922 3.49065850398866 3.66519142918809 3.83972435438752 4.01425727958696 4.18879020478639 4.36332312998582 4.53785605518525 4.71238898038469 4.88692190558412 5.06145483078355 5.23598775598299 5.41052068118242 5.58505360638185 5.75958653158128 5.93411945678072 6.10865238198015 6.28318530717959 
-2 38 1 
-p 0.0640000008 1 0 6 
-2 74 37 
-p 0.0640000008 1 0 6 
-37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 
-p 0.0640000008 1 0 0.174532925199433 0.349065850398866 0.523598775598299 0.698131700797732 0.872664625997165 1.0471975511966 1.22173047639603 1.39626340159546 1.5707963267949 1.74532925199433 1.91986217719376 2.0943951023932 2.26892802759263 2.44346095279206 2.61799387799149 2.79252680319093 2.96705972839036 3.14159265358979 3.31612557878922 3.49065850398866 3.66519142918809 3.83972435438752 4.01425727958696 4.18879020478639 4.36332312998582 4.53785605518525 4.71238898038469 4.88692190558412 5.06145483078355 5.23598775598299 5.41052068118242 5.58505360638185 5.75958653158128 5.93411945678072 6.10865238198015 6.28318530717959 
-37 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 1 
-p 0.0640000008 1 0 0.174532925199433 0.349065850398866 0.523598775598299 0.698131700797732 0.872664625997165 1.0471975511966 1.22173047639603 1.39626340159546 1.5707963267949 1.74532925199433 1.91986217719376 2.0943951023932 2.26892802759263 2.44346095279206 2.61799387799149 2.79252680319093 2.96705972839036 3.14159265358979 3.31612557878922 3.49065850398866 3.66519142918809 3.83972435438752 4.01425727958696 4.18879020478639 4.36332312998582 4.53785605518525 4.71238898038469 4.88692190558412 5.06145483078355 5.23598775598299 5.41052068118242 5.58505360638185 5.75958653158128 5.93411945678072 6.10865238198015 6.28318530717959 
-Surfaces 9
+PolygonOnTriangulations 0
+Surfaces 11
 1 -5 -5 0 1 0 -0 0 0 1 0 -1 0 
 1 -5 -5 0 -0 1 0 0 0 1 1 0 -0 
 1 -5 -5 10 0 0 1 1 0 -0 -0 1 0 
@@ -134,31 +67,11 @@ Surfaces 9
 1 -5 -5 0 0 0 1 1 0 -0 -0 1 0 
 1 5 -5 0 1 0 -0 0 0 1 0 -1 0 
 2 0 0 -6 0 0 1 1 0 -0 -0 1 0 1
+1 -5 -5 0 0 0 1 1 0 -0 -0 1 0 
+2 0 0 -6 0 0 1 1 0 -0 -0 1 0 1
 1 0 0 3 0 0 1 1 0 -0 -0 1 0 
 1 0 0 -6 0 0 1 1 0 -0 -0 1 0 
-Triangulations 11
-4 2 1 0 2.22044604925031e-16
--5 -5 0 -5 -5 10 -5 5 0 -5 5 10 0 0 10 0 0 -10 10 -10 2 1 3 2 3 4 
-4 2 1 0 2.22044604925031e-16
--5 -5 0 5 -5 0 -5 -5 10 5 -5 10 0 0 0 10 10 0 10 10 4 2 1 4 1 3 
-4 2 1 0 3.14018491736755e-16
--5 -5 10 -5 5 10 5 -5 10 5 5 10 0 0 0 10 10 0 10 10 4 2 1 4 1 3 
-4 2 1 0 2.22044604925031e-16
--5 5 0 5 5 0 -5 5 10 5 5 10 0 0 0 10 10 0 10 10 4 2 1 4 1 3 
-40 40 1 0 9.93013661298909e-16
--5 -5 0 -5 5 0 5 -5 0 5 5 0 1 -2.44929359829471e-16 0 0.984807753012208 0.17364817766693 0 0.939692620785908 0.342020143325669 0 0.866025403784439 0.5 0 0.766044443118978 0.642787609686539 0 0.642787609686539 0.766044443118978 0 0.5 0.866025403784439 0 0.342020143325669 0.939692620785908 0 0.17364817766693 0.984807753012208 0 6.12323399573677e-17 1 0 -0.17364817766693 0.984807753012208 0 -0.342020143325669 0.939692620785908 0 -0.5 0.866025403784439 0 -0.642787609686539 0.766044443118978 0 -0.766044443118978 0.64278760968654 0 -0.866025403784438 0.500000000000001 0 -0.939692620785908 0.34202014332567 0 -0.984807753012208 0.173648177666932 0 -1 1.45473230946492e-15 0 -0.984807753012208 -0.173648177666929 0 -0.939692620785909 -0.342020143325667 0 -0.86602540378444 -0.499999999999998 0 -0.766044443118979 -0.642787609686538 0 -0.642787609686541 -0.766044443118977 0 -0.500000000000002 -0.866025403784437 0 -0.342020143325671 -0.939692620785908 0 -0.173648177666933 -0.984807753012208 0 -2.84823227897248e-15 -1 0 0.173648177666927 -0.984807753012209 0 0.342020143325666 -0.93969262078591 0 0.499999999999997 -0.86602540378444 0 0.642787609686536 -0.76604444311898 0 0.766044443118976 -0.642787609686542 0 0.866025403784437 -0.500000000000004 0 0.939692620785907 -0.342020143325673 0 0.984807753012207 -0.173648177666935 0 0 0 0 10 10 0 10 10 6 5 5.98480775301221 5.17364817766693 5.93969262078591 5.34202014332567 5.86602540378444 5.5 5.76604444311898 5.64278760968654 5.64278760968654 5.76604444311898 5.5 5.86602540378444 5.34202014332567 5.93969262078591 5.17364817766693 5.98480775301221 5 6 4.82635182233307 5.98480775301221 4.65797985667433 5.93969262078591 4.5 5.86602540378444 4.35721239031346 5.76604444311898 4.23395555688102 5.64278760968654 4.13397459621556 5.5 4.06030737921409 5.34202014332567 4.01519224698779 5.17364817766693 4 5 4.01519224698779 4.82635182233307 4.06030737921409 4.65797985667433 4.13397459621556 4.5 4.23395555688102 4.35721239031346 4.35721239031346 4.23395555688102 4.5 4.13397459621556 4.65797985667433 4.06030737921409 4.82635182233307 4.01519224698779 5 4 5.17364817766693 4.01519224698779 5.34202014332567 4.06030737921409 5.5 4.13397459621556 5.64278760968654 4.23395555688102 5.76604444311898 4.35721239031346 5.86602540378444 4.5 5.93969262078591 4.65797985667433 5.98480775301221 4.82635182233307 27 1 28 29 28 1 26 1 27 30 29 1 25 1 26 31 30 1 24 1 25 32 31 1 23 1 24 2 20 19 2 21 20 2 22 21 2 23 22 2 1 23 3 33 32 3 34 33 3 35 34 3 36 35 3 32 1 37 36 3 18 2 19 38 37 3 17 2 18 39 38 3 16 2 17 40 39 3 15 2 16 5 40 3 14 2 15 4 5 3 4 6 5 4 7 6 4 8 7 4 9 8 4 10 9 4 11 10 4 12 11 4 13 12 4 14 13 4 2 14 
-4 2 1 0 2.22044604925031e-16
-5 -5 0 5 -5 10 5 5 0 5 5 10 0 0 10 0 0 -10 10 -10 2 1 3 2 3 4 
-74 72 1 0 0.00380530190825463
-1 -2.44929359829471e-16 0 1 -2.44929359829471e-16 3 1 -2.44929359829471e-16 3 0.984807753012208 0.17364817766693 3 0.939692620785908 0.342020143325669 3 0.866025403784439 0.5 3 0.766044443118978 0.642787609686539 3 0.642787609686539 0.766044443118978 3 0.5 0.866025403784439 3 0.342020143325669 0.939692620785908 3 0.17364817766693 0.984807753012208 3 6.12323399573677e-17 1 3 -0.17364817766693 0.984807753012208 3 -0.342020143325669 0.939692620785908 3 -0.5 0.866025403784439 3 -0.642787609686539 0.766044443118978 3 -0.766044443118978 0.64278760968654 3 -0.866025403784438 0.500000000000001 3 -0.939692620785908 0.34202014332567 3 -0.984807753012208 0.173648177666932 3 -1 1.45473230946492e-15 3 -0.984807753012208 -0.173648177666929 3 -0.939692620785909 -0.342020143325667 3 -0.86602540378444 -0.499999999999998 3 -0.766044443118979 -0.642787609686538 3 -0.642787609686541 -0.766044443118977 3 -0.500000000000002 -0.866025403784437 3 -0.342020143325671 -0.939692620785908 3 -0.173648177666933 -0.984807753012208 3 -2.84823227897248e-15 -1 3 0.173648177666927 -0.984807753012209 3 0.342020143325666 -0.93969262078591 3 0.499999999999997 -0.86602540378444 3 0.642787609686536 -0.76604444311898 3 0.766044443118976 -0.642787609686542 3 0.866025403784437 -0.500000000000004 3 0.939692620785907 -0.342020143325673 3 0.984807753012207 -0.173648177666935 3 1 -2.44929359829471e-16 0 0.984807753012208 0.17364817766693 0 0.939692620785908 0.342020143325669 0 0.866025403784439 0.5 0 0.766044443118978 0.642787609686539 0 0.642787609686539 0.766044443118978 0 0.5 0.866025403784439 0 0.342020143325669 0.939692620785908 0 0.17364817766693 0.984807753012208 0 6.12323399573677e-17 1 0 -0.17364817766693 0.984807753012208 0 -0.342020143325669 0.939692620785908 0 -0.5 0.866025403784439 0 -0.642787609686539 0.766044443118978 0 -0.766044443118978 0.64278760968654 0 -0.866025403784438 0.500000000000001 0 -0.939692620785908 0.34202014332567 0 -0.984807753012208 0.173648177666932 0 -1 1.45473230946492e-15 0 -0.984807753012208 -0.173648177666929 0 -0.939692620785909 -0.342020143325667 0 -0.86602540378444 -0.499999999999998 0 -0.766044443118979 -0.642787609686538 0 -0.642787609686541 -0.766044443118977 0 -0.500000000000002 -0.866025403784437 0 -0.342020143325671 -0.939692620785908 0 -0.173648177666933 -0.984807753012208 0 -2.84823227897248e-15 -1 0 0.173648177666927 -0.984807753012209 0 0.342020143325666 -0.93969262078591 0 0.499999999999997 -0.86602540378444 0 0.642787609686536 -0.76604444311898 0 0.766044443118976 -0.642787609686542 0 0.866025403784437 -0.500000000000004 0 0.939692620785907 -0.342020143325673 0 0.984807753012207 -0.173648177666935 0 6.28318530717959 6 6.28318530717959 9 0 9 0.174532925199433 9 0.349065850398866 9 0.523598775598299 9 0.698131700797732 9 0.872664625997165 9 1.0471975511966 9 1.22173047639603 9 1.39626340159546 9 1.5707963267949 9 1.74532925199433 9 1.91986217719376 9 2.0943951023932 9 2.26892802759263 9 2.44346095279206 9 2.61799387799149 9 2.79252680319093 9 2.96705972839036 9 3.14159265358979 9 3.31612557878922 9 3.49065850398866 9 3.66519142918809 9 3.83972435438752 9 4.01425727958696 9 4.18879020478639 9 4.36332312998582 9 4.53785605518525 9 4.71238898038469 9 4.88692190558412 9 5.06145483078355 9 5.23598775598299 9 5.41052068118242 9 5.58505360638185 9 5.75958653158128 9 5.93411945678072 9 6.10865238198015 9 0 6 0.174532925199433 6 0.349065850398866 6 0.523598775598299 6 0.698131700797732 6 0.872664625997165 6 1.0471975511966 6 1.22173047639603 6 1.39626340159546 6 1.5707963267949 6 1.74532925199433 6 1.91986217719376 6 2.0943951023932 6 2.26892802759263 6 2.44346095279206 6 2.61799387799149 6 2.79252680319093 6 2.96705972839036 6 3.14159265358979 6 3.31612557878922 6 3.49065850398866 6 3.66519142918809 6 3.83972435438752 6 4.01425727958696 6 4.18879020478639 6 4.36332312998582 6 4.53785605518525 6 4.71238898038469 6 4.88692190558412 6 5.06145483078355 6 5.23598775598299 6 5.41052068118242 6 5.58505360638185 6 5.75958653158128 6 5.93411945678072 6 6.10865238198015 6 4 3 39 4 39 40 5 40 41 5 4 40 6 41 42 6 5 41 7 42 43 7 43 44 7 6 42 8 44 45 8 7 44 9 8 45 10 9 45 10 45 46 10 46 47 11 10 47 11 47 48 12 11 48 13 12 48 13 48 49 14 13 49 14 49 50 14 50 51 15 14 51 16 15 51 16 51 52 16 52 53 17 16 53 18 17 53 18 53 54 19 18 54 19 54 55 20 19 55 20 55 56 21 20 56 21 56 57 22 21 57 22 57 58 22 58 59 23 22 59 24 59 60 24 23 59 25 60 61 25 61 62 25 24 60 26 25 62 27 62 63 27 26 62 28 63 64 28 27 63 29 64 65 29 28 64 30 65 66 30 29 65 31 66 67 31 30 66 32 67 68 32 31 67 33 68 69 33 32 68 34 33 69 34 69 70 34 70 71 35 34 71 36 35 71 36 71 72 37 36 72 37 72 73 38 37 73 38 73 74 2 38 74 2 74 1 
-74 72 1 0 0.00380530190825463
-1 -2.44929359829471e-16 0 0.984807753012208 0.17364817766693 0 0.939692620785908 0.342020143325669 0 0.866025403784439 0.5 0 0.766044443118978 0.642787609686539 0 0.642787609686539 0.766044443118978 0 0.5 0.866025403784439 0 0.342020143325669 0.939692620785908 0 0.17364817766693 0.984807753012208 0 6.12323399573677e-17 1 0 -0.17364817766693 0.984807753012208 0 -0.342020143325669 0.939692620785908 0 -0.5 0.866025403784439 0 -0.642787609686539 0.766044443118978 0 -0.766044443118978 0.64278760968654 0 -0.866025403784438 0.500000000000001 0 -0.939692620785908 0.34202014332567 0 -0.984807753012208 0.173648177666932 0 -1 1.45473230946492e-15 0 -0.984807753012208 -0.173648177666929 0 -0.939692620785909 -0.342020143325667 0 -0.86602540378444 -0.499999999999998 0 -0.766044443118979 -0.642787609686538 0 -0.642787609686541 -0.766044443118977 0 -0.500000000000002 -0.866025403784437 0 -0.342020143325671 -0.939692620785908 0 -0.173648177666933 -0.984807753012208 0 -2.84823227897248e-15 -1 0 0.173648177666927 -0.984807753012209 0 0.342020143325666 -0.93969262078591 0 0.499999999999997 -0.86602540378444 0 0.642787609686536 -0.76604444311898 0 0.766044443118976 -0.642787609686542 0 0.866025403784437 -0.500000000000004 0 0.939692620785907 -0.342020143325673 0 0.984807753012207 -0.173648177666935 0 1 -2.44929359829471e-16 0 1 -2.44929359829471e-16 -6 0.984807753012208 0.17364817766693 -6 0.939692620785908 0.342020143325669 -6 0.866025403784439 0.5 -6 0.766044443118978 0.642787609686539 -6 0.642787609686539 0.766044443118978 -6 0.5 0.866025403784439 -6 0.342020143325669 0.939692620785908 -6 0.17364817766693 0.984807753012208 -6 6.12323399573677e-17 1 -6 -0.17364817766693 0.984807753012208 -6 -0.342020143325669 0.939692620785908 -6 -0.5 0.866025403784439 -6 -0.642787609686539 0.766044443118978 -6 -0.766044443118978 0.64278760968654 -6 -0.866025403784438 0.500000000000001 -6 -0.939692620785908 0.34202014332567 -6 -0.984807753012208 0.173648177666932 -6 -1 1.45473230946492e-15 -6 -0.984807753012208 -0.173648177666929 -6 -0.939692620785909 -0.342020143325667 -6 -0.86602540378444 -0.499999999999998 -6 -0.766044443118979 -0.642787609686538 -6 -0.642787609686541 -0.766044443118977 -6 -0.500000000000002 -0.866025403784437 -6 -0.342020143325671 -0.939692620785908 -6 -0.173648177666933 -0.984807753012208 -6 -2.84823227897248e-15 -1 -6 0.173648177666927 -0.984807753012209 -6 0.342020143325666 -0.93969262078591 -6 0.499999999999997 -0.86602540378444 -6 0.642787609686536 -0.76604444311898 -6 0.766044443118976 -0.642787609686542 -6 0.866025403784437 -0.500000000000004 -6 0.939692620785907 -0.342020143325673 -6 0.984807753012207 -0.173648177666935 -6 1 -2.44929359829471e-16 -6 0 6 0.174532925199433 6 0.349065850398866 6 0.523598775598299 6 0.698131700797732 6 0.872664625997165 6 1.0471975511966 6 1.22173047639603 6 1.39626340159546 6 1.5707963267949 6 1.74532925199433 6 1.91986217719376 6 2.0943951023932 6 2.26892802759263 6 2.44346095279206 6 2.61799387799149 6 2.79252680319093 6 2.96705972839036 6 3.14159265358979 6 3.31612557878922 6 3.49065850398866 6 3.66519142918809 6 3.83972435438752 6 4.01425727958696 6 4.18879020478639 6 4.36332312998582 6 4.53785605518525 6 4.71238898038469 6 4.88692190558412 6 5.06145483078355 6 5.23598775598299 6 5.41052068118242 6 5.58505360638185 6 5.75958653158128 6 5.93411945678072 6 6.10865238198015 6 6.28318530717959 6 0 0 0.174532925199433 0 0.349065850398866 0 0.523598775598299 0 0.698131700797732 0 0.872664625997165 0 1.0471975511966 0 1.22173047639603 0 1.39626340159546 0 1.5707963267949 0 1.74532925199433 0 1.91986217719376 0 2.0943951023932 0 2.26892802759263 0 2.44346095279206 0 2.61799387799149 0 2.79252680319093 0 2.96705972839036 0 3.14159265358979 0 3.31612557878922 0 3.49065850398866 0 3.66519142918809 0 3.83972435438752 0 4.01425727958696 0 4.18879020478639 0 4.36332312998582 0 4.53785605518525 0 4.71238898038469 0 4.88692190558412 0 5.06145483078355 0 5.23598775598299 0 5.41052068118242 0 5.58505360638185 0 5.75958653158128 0 5.93411945678072 0 6.10865238198015 0 6.28318530717959 0 2 1 38 2 38 39 3 39 40 3 2 39 4 40 41 4 3 40 5 41 42 5 4 41 6 42 43 6 5 42 7 6 43 7 43 44 8 7 44 8 44 45 9 8 45 9 45 46 10 9 46 10 46 47 11 10 47 11 47 48 12 11 48 12 48 49 13 12 49 13 49 50 14 13 50 14 50 51 15 14 51 15 51 52 16 15 52 16 52 53 17 16 53 17 53 54 17 54 55 18 17 55 19 18 55 19 55 56 20 56 57 20 19 56 21 57 58 21 20 57 22 58 59 22 21 58 23 59 60 23 22 59 24 60 61 24 23 60 25 61 62 25 24 61 26 62 63 26 25 62 27 63 64 27 26 63 28 64 65 28 27 64 29 65 66 29 28 65 30 66 67 30 29 66 31 67 68 31 30 67 32 31 68 32 68 69 33 32 69 33 69 70 34 33 70 34 70 71 35 34 71 35 71 72 36 35 72 36 72 73 36 73 74 37 36 74 
-36 34 1 0 1.38026443154486e-15
-1 -2.44929359829471e-16 0 0.984807753012208 0.17364817766693 0 0.939692620785908 0.342020143325669 0 0.866025403784439 0.5 0 0.766044443118978 0.642787609686539 0 0.642787609686539 0.766044443118978 0 0.5 0.866025403784439 0 0.342020143325669 0.939692620785908 0 0.17364817766693 0.984807753012208 0 6.12323399573677e-17 1 0 -0.17364817766693 0.984807753012208 0 -0.342020143325669 0.939692620785908 0 -0.5 0.866025403784439 0 -0.642787609686539 0.766044443118978 0 -0.766044443118978 0.64278760968654 0 -0.866025403784438 0.500000000000001 0 -0.939692620785908 0.34202014332567 0 -0.984807753012208 0.173648177666932 0 -1 1.45473230946492e-15 0 -0.984807753012208 -0.173648177666929 0 -0.939692620785909 -0.342020143325667 0 -0.86602540378444 -0.499999999999998 0 -0.766044443118979 -0.642787609686538 0 -0.642787609686541 -0.766044443118977 0 -0.500000000000002 -0.866025403784437 0 -0.342020143325671 -0.939692620785908 0 -0.173648177666933 -0.984807753012208 0 -2.84823227897248e-15 -1 0 0.173648177666927 -0.984807753012209 0 0.342020143325666 -0.93969262078591 0 0.499999999999997 -0.86602540378444 0 0.642787609686536 -0.76604444311898 0 0.766044443118976 -0.642787609686542 0 0.866025403784437 -0.500000000000004 0 0.939692620785907 -0.342020143325673 0 0.984807753012207 -0.173648177666935 0 6 5 5.98480775301221 5.17364817766693 5.93969262078591 5.34202014332567 5.86602540378444 5.5 5.76604444311898 5.64278760968654 5.64278760968654 5.76604444311898 5.5 5.86602540378444 5.34202014332567 5.93969262078591 5.17364817766693 5.98480775301221 5 6 4.82635182233307 5.98480775301221 4.65797985667433 5.93969262078591 4.5 5.86602540378444 4.35721239031346 5.76604444311898 4.23395555688102 5.64278760968654 4.13397459621556 5.5 4.06030737921409 5.34202014332567 4.01519224698779 5.17364817766693 4 5 4.01519224698779 4.82635182233307 4.06030737921409 4.65797985667433 4.13397459621556 4.5 4.23395555688102 4.35721239031346 4.35721239031346 4.23395555688102 4.5 4.13397459621556 4.65797985667433 4.06030737921409 4.82635182233307 4.01519224698779 5 4 5.17364817766693 4.01519224698779 5.34202014332567 4.06030737921409 5.5 4.13397459621556 5.64278760968654 4.23395555688102 5.76604444311898 4.35721239031346 5.86602540378444 4.5 5.93969262078591 4.65797985667433 5.98480775301221 4.82635182233307 22 23 24 27 24 25 27 25 26 27 22 24 17 18 19 31 27 28 31 28 29 31 29 30 15 16 17 33 31 32 33 27 31 13 14 15 13 19 20 13 17 19 13 15 17 35 33 34 11 12 13 8 9 10 8 10 11 8 11 13 4 1 2 4 2 3 4 35 36 4 36 1 4 33 35 6 8 13 6 4 5 6 33 4 6 7 8 6 20 21 6 21 22 6 22 27 6 27 33 6 13 20 
-36 34 1 0 1.57009245868378e-16
-1 -2.44929359829471e-16 3 0.984807753012208 0.17364817766693 3 0.939692620785908 0.342020143325669 3 0.866025403784439 0.5 3 0.766044443118978 0.642787609686539 3 0.642787609686539 0.766044443118978 3 0.5 0.866025403784439 3 0.342020143325669 0.939692620785908 3 0.17364817766693 0.984807753012208 3 6.12323399573677e-17 1 3 -0.17364817766693 0.984807753012208 3 -0.342020143325669 0.939692620785908 3 -0.5 0.866025403784439 3 -0.642787609686539 0.766044443118978 3 -0.766044443118978 0.64278760968654 3 -0.866025403784438 0.500000000000001 3 -0.939692620785908 0.34202014332567 3 -0.984807753012208 0.173648177666932 3 -1 1.45473230946492e-15 3 -0.984807753012208 -0.173648177666929 3 -0.939692620785909 -0.342020143325667 3 -0.86602540378444 -0.499999999999998 3 -0.766044443118979 -0.642787609686538 3 -0.642787609686541 -0.766044443118977 3 -0.500000000000002 -0.866025403784437 3 -0.342020143325671 -0.939692620785908 3 -0.173648177666933 -0.984807753012208 3 -2.84823227897248e-15 -1 3 0.173648177666927 -0.984807753012209 3 0.342020143325666 -0.93969262078591 3 0.499999999999997 -0.86602540378444 3 0.642787609686536 -0.76604444311898 3 0.766044443118976 -0.642787609686542 3 0.866025403784437 -0.500000000000004 3 0.939692620785907 -0.342020143325673 3 0.984807753012207 -0.173648177666935 3 1 -2.22044604925031e-16 0.984807753012208 0.17364817766693 0.939692620785908 0.342020143325669 0.866025403784439 0.5 0.766044443118978 0.642787609686539 0.642787609686539 0.766044443118978 0.5 0.866025403784439 0.342020143325669 0.939692620785908 0.173648177666931 0.984807753012208 0 1 -0.17364817766693 0.984807753012208 -0.342020143325669 0.939692620785908 -0.5 0.866025403784439 -0.642787609686539 0.766044443118978 -0.766044443118978 0.64278760968654 -0.866025403784438 0.500000000000001 -0.939692620785908 0.34202014332567 -0.984807753012208 0.173648177666932 -1 1.55431223447522e-15 -0.984807753012208 -0.173648177666929 -0.939692620785909 -0.342020143325667 -0.86602540378444 -0.499999999999998 -0.766044443118979 -0.642787609686538 -0.642787609686541 -0.766044443118977 -0.500000000000002 -0.866025403784437 -0.342020143325671 -0.939692620785908 -0.173648177666933 -0.984807753012208 -2.88657986402541e-15 -1 0.173648177666927 -0.984807753012209 0.342020143325666 -0.93969262078591 0.499999999999997 -0.86602540378444 0.642787609686537 -0.76604444311898 0.766044443118976 -0.642787609686542 0.866025403784437 -0.500000000000004 0.939692620785907 -0.342020143325673 0.984807753012207 -0.173648177666935 21 22 23 27 25 26 15 16 17 33 31 32 13 14 15 1 30 31 1 33 34 1 34 35 1 35 36 1 31 33 8 9 10 8 10 11 7 8 11 4 1 2 4 2 3 6 4 5 6 11 12 6 12 13 6 17 18 6 18 19 6 19 20 6 20 21 6 23 24 6 24 25 6 27 28 6 28 29 6 29 30 6 25 27 6 21 23 6 15 17 6 13 15 6 30 1 6 1 4 6 7 11 
-36 34 1 0 1.57009245868378e-16
-1 -2.44929359829471e-16 -6 0.984807753012208 0.17364817766693 -6 0.939692620785908 0.342020143325669 -6 0.866025403784439 0.5 -6 0.766044443118978 0.642787609686539 -6 0.642787609686539 0.766044443118978 -6 0.5 0.866025403784439 -6 0.342020143325669 0.939692620785908 -6 0.17364817766693 0.984807753012208 -6 6.12323399573677e-17 1 -6 -0.17364817766693 0.984807753012208 -6 -0.342020143325669 0.939692620785908 -6 -0.5 0.866025403784439 -6 -0.642787609686539 0.766044443118978 -6 -0.766044443118978 0.64278760968654 -6 -0.866025403784438 0.500000000000001 -6 -0.939692620785908 0.34202014332567 -6 -0.984807753012208 0.173648177666932 -6 -1 1.45473230946492e-15 -6 -0.984807753012208 -0.173648177666929 -6 -0.939692620785909 -0.342020143325667 -6 -0.86602540378444 -0.499999999999998 -6 -0.766044443118979 -0.642787609686538 -6 -0.642787609686541 -0.766044443118977 -6 -0.500000000000002 -0.866025403784437 -6 -0.342020143325671 -0.939692620785908 -6 -0.173648177666933 -0.984807753012208 -6 -2.84823227897248e-15 -1 -6 0.173648177666927 -0.984807753012209 -6 0.342020143325666 -0.93969262078591 -6 0.499999999999997 -0.86602540378444 -6 0.642787609686536 -0.76604444311898 -6 0.766044443118976 -0.642787609686542 -6 0.866025403784437 -0.500000000000004 -6 0.939692620785907 -0.342020143325673 -6 0.984807753012207 -0.173648177666935 -6 1 -2.22044604925031e-16 0.984807753012208 0.17364817766693 0.939692620785908 0.342020143325669 0.866025403784439 0.5 0.766044443118978 0.642787609686539 0.642787609686539 0.766044443118978 0.5 0.866025403784439 0.342020143325669 0.939692620785908 0.173648177666931 0.984807753012208 0 1 -0.17364817766693 0.984807753012208 -0.342020143325669 0.939692620785908 -0.5 0.866025403784439 -0.642787609686539 0.766044443118978 -0.766044443118978 0.64278760968654 -0.866025403784438 0.500000000000001 -0.939692620785908 0.34202014332567 -0.984807753012208 0.173648177666932 -1 1.55431223447522e-15 -0.984807753012208 -0.173648177666929 -0.939692620785909 -0.342020143325667 -0.86602540378444 -0.499999999999998 -0.766044443118979 -0.642787609686538 -0.642787609686541 -0.766044443118977 -0.500000000000002 -0.866025403784437 -0.342020143325671 -0.939692620785908 -0.173648177666933 -0.984807753012208 -2.88657986402541e-15 -1 0.173648177666927 -0.984807753012209 0.342020143325666 -0.93969262078591 0.499999999999997 -0.86602540378444 0.642787609686537 -0.76604444311898 0.766044443118976 -0.642787609686542 0.866025403784437 -0.500000000000004 0.939692620785907 -0.342020143325673 0.984807753012207 -0.173648177666935 21 22 23 27 25 26 15 16 17 33 31 32 13 14 15 1 30 31 1 33 34 1 34 35 1 35 36 1 31 33 8 9 10 8 10 11 7 8 11 4 1 2 4 2 3 6 4 5 6 11 12 6 12 13 6 17 18 6 18 19 6 19 20 6 20 21 6 23 24 6 24 25 6 27 28 6 28 29 6 29 30 6 25 27 6 21 23 6 15 17 6 13 15 6 30 1 6 1 4 6 7 11 
+Triangulations 0
 
 TShapes 58
 Ve
@@ -180,8 +93,6 @@ Ed
 1  1 0 0 10
 2  1 1 0 0 10
 2  2 2 0 0 10
-6  1 1 0
-6  2 2 0
 0
 
 0101000
@@ -198,8 +109,6 @@ Ed
 1  2 0 0 10
 2  3 1 0 0 10
 2  4 3 0 0 10
-6  3 1 0
-6  4 3 0
 0
 
 0101000
@@ -216,8 +125,6 @@ Ed
 1  3 0 0 10
 2  5 1 0 0 10
 2  6 4 0 0 10
-6  5 1 0
-6  6 4 0
 0
 
 0101000
@@ -227,8 +134,6 @@ Ed
 1  4 0 0 10
 2  7 1 0 0 10
 2  8 5 0 0 10
-6  7 1 0
-6  8 5 0
 0
 
 0101000
@@ -239,7 +144,7 @@ Wi
 -56 0 -54 0 +52 0 +51 0 *
 Fa
 0  1e-07 1 0
-2  1
+
 0101000
 +50 0 *
 Ve
@@ -254,8 +159,6 @@ Ed
 1  5 0 0 10
 2  9 2 0 0 10
 2  10 5 0 0 10
-6  9 2 0
-6  10 5 0
 0
 
 0101000
@@ -270,10 +173,8 @@ Ve
 Ed
  1e-07 1 1 0
 1  6 0 0 10
-2  11 6 0 0 10
-2  12 2 0 0 10
-6  11 2 0
-6  12 6 0
+2  11 2 0 0 10
+2  12 6 0 0 10
 0
 
 0101000
@@ -283,8 +184,6 @@ Ed
 1  7 0 0 10
 2  13 2 0 0 10
 2  14 3 0 0 10
-6  13 2 0
-6  14 3 0
 0
 
 0101000
@@ -295,7 +194,7 @@ Wi
 -47 0 -45 0 +44 0 +56 0 *
 Fa
 0  1e-07 2 0
-2  2
+
 0101000
 +43 0 *
 Ve
@@ -308,10 +207,8 @@ Ve
 Ed
  1e-07 1 1 0
 1  8 0 0 10
-2  15 4 0 0 10
-2  16 3 0 0 10
-6  15 3 0
-6  16 4 0
+2  15 3 0 0 10
+2  16 4 0 0 10
 0
 
 0101000
@@ -319,10 +216,8 @@ Ed
 Ed
  1e-07 1 1 0
 1  9 0 0 10
-2  17 6 0 0 10
-2  18 3 0 0 10
-6  17 3 0
-6  18 6 0
+2  17 3 0 0 10
+2  18 6 0 0 10
 0
 
 0101000
@@ -333,7 +228,7 @@ Wi
 -54 0 -40 0 +39 0 +44 0 *
 Fa
 0  1e-07 3 0
-2  3
+
 0101000
 +38 0 *
 Ve
@@ -348,8 +243,6 @@ Ed
 1  10 0 0 10
 2  19 4 0 0 10
 2  20 5 0 0 10
-6  19 4 0
-6  20 5 0
 0
 
 0101000
@@ -357,10 +250,8 @@ Ed
 Ed
  1e-07 1 1 0
 1  11 0 0 10
-2  21 6 0 0 10
-2  22 4 0 0 10
-6  21 4 0
-6  22 6 0
+2  21 4 0 0 10
+2  22 6 0 0 10
 0
 
 0101000
@@ -371,16 +262,14 @@ Wi
 -35 0 -34 0 +40 0 +52 0 *
 Fa
 0  1e-07 4 0
-2  4
+
 0101000
 +33 0 *
 Ed
  1e-07 1 1 0
 1  12 0 0 10
-2  23 6 0 0 10
-2  24 5 0 0 10
-6  23 5 0
-6  24 6 0
+2  23 5 0 0 10
+2  24 6 0 0 10
 0
 
 0101000
@@ -401,10 +290,8 @@ Ed
 1  13 0 0 6.28318530717959
 2  25 5 0 0 6.28318530717959
 2  26 7 0 0 6.28318530717959
-6  25 7 0
-6  26 8 0
-6  27 5 0
-6  28 9 0
+2  27 8 0 0 6.28318530717959
+2  28 9 0 0 6.28318530717959
 0
 
 0101000
@@ -415,7 +302,7 @@ Wi
 -28 0 *
 Fa
 0  1e-07 5 0
-2  5
+
 0101000
 +30 0 +27 0 *
 Wi
@@ -424,7 +311,7 @@ Wi
 -45 0 -39 0 +34 0 +31 0 *
 Fa
 0  1e-07 6 0
-2  6
+
 0101000
 +25 0 *
 Ve
@@ -437,8 +324,7 @@ Ve
 Ed
  1e-07 1 1 0
 1  14 0 6 9
-3  27 28CN 7 0 6 9
-7  29 30 7 0
+3  29 30CN 7 0 6 9
 0
 
 0101000
@@ -446,10 +332,8 @@ Ed
 Ed
  1e-07 1 1 0
 1  15 0 0 6.28318530717959
-2  29 7 0 0 6.28318530717959
-2  30 8 0 0 6.28318530717959
-6  31 7 0
-6  32 10 0
+2  31 7 0 0 6.28318530717959
+2  32 10 0 0 6.28318530717959
 0
 
 0101000
@@ -460,7 +344,7 @@ Wi
 +22 0 +28 0 -22 0 -21 0 *
 Fa
 0  1e-07 7 0
-2  7
+
 0101000
 +20 0 *
 Wi
@@ -468,8 +352,8 @@ Wi
 0101100
 +21 0 *
 Fa
-0  1e-07 8 0
-2  10
+0  1e-07 10 0
+
 0101000
 +18 0 *
 Sh
@@ -485,8 +369,8 @@ Wi
 0101100
 +28 0 *
 Fa
-0  1e-07 5 0
-2  9
+0  1e-07 8 0
+
 0101000
 +14 0 *
 Sh
@@ -506,20 +390,17 @@ Ve
 *
 Ed
  1e-07 1 1 0
-1  14 0 0 6
-3  27 28CN 7 0 0 6
-7  33 34 8 0
+1  16 0 0 6
+3  33 34CN 9 0 0 6
 0
 
 0101000
 +10 0 -29 0 *
 Ed
  1e-07 1 1 0
-1  16 0 0 6.28318530717959
-2  31 7 0 0 6.28318530717959
-2  32 9 0 0 6.28318530717959
-6  35 8 0
-6  36 11 0
+1  17 0 0 6.28318530717959
+2  35 9 0 0 6.28318530717959
+2  36 11 0 0 6.28318530717959
 0
 
 0101000
@@ -529,8 +410,8 @@ Wi
 0101100
 -28 0 +9 0 +8 0 -9 0 *
 Fa
-0  1e-07 7 0
-2  8
+0  1e-07 9 0
+
 0101000
 +7 0 *
 Wi
@@ -538,8 +419,8 @@ Wi
 0101100
 -8 0 *
 Fa
-0  1e-07 9 0
-2  11
+0  1e-07 11 0
+
 0101000
 -5 0 *
 Sh
@@ -555,4 +436,6 @@ Co
 1100000
 +15 0 +11 0 +2 0 *
 
-+1 0 
\ No newline at end of file
++1 0 
+0
+