tolfak 0.5 rule "Free Tetrahedron" quality 1 mappoints (0, 0, 0); (1, 0, 0); (0.5, 0.866, 0); mapfaces (1, 2, 3) del; newpoints (0.5, 0.288, -0.816) { 0.333 X1, 0.333 X2, 0.333 X3 } { 0.333 Y1, 0.333 Y2, 0.333 Y3 } { }; newfaces (4, 1, 2); (4, 2, 3); (4, 3, 1); elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1.6 P4, -0.2 P1, -0.2 P2, -0.2 P3 }; { -0.5 P1, 0.5 P2, 0.5 P3, 0.5 P4 }; { 0.5 P1, -0.5 P2, 0.5 P3, 0.5 P4 }; { 0.5 P1, 0.5 P2, -0.5 P3, 0.5 P4 }; endrule rule "Tetrahedron 60" quality 1 flags c; mappoints (0, 0, 0); (1, 0, 0) { 0.5 } ; (0.5, 0.866, 0) { 0.5 }; (0.5, 0.288, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; newpoints newfaces (1, 4, 3); (4, 2, 3); elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { -0.35 P1, 0.45 P2, 0.45 P3, 0.45 P4 }; { 0.45 P1, -0.35 P2, 0.45 P3, 0.45 P4 }; { -0.05 P1, -0.05 P2, 0.7 P3, 0.4 P4 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.3333 P2, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P3, 0.3334 P4 }; { 0.65 P3, 0.35 P4 }; endrule rule "Tetrahedron 60 with edge(1)" quality 1 flags c; mappoints (0, 0, 0); (1, 0, 0) { 0.8 }; (0.5, 0.866, 0) { 0.8 }; (0.5, 0.288, -0.816) { 0.8 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; mapedges (3, 4); newpoints newfaces (1, 4, 3); (4, 2, 3); elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.4 P1, 0.4 P4, 0.4 P3, -0.2 P2 }; { 0.4 P2, 0.4 P4, 0.4 P3, -0.2 P1 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.3333 P1, 0.3333 P4, 0.3334 P3 }; { 0.3333 P2, 0.3333 P4, 0.3334 P3 }; endrule rule "Tetrahedron Vis a Vis Point (1)" quality 20 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 0.866, 0) { 0.5 }; (0.5, 0.288, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; newpoints newfaces (4, 3, 1); (4, 2, 3); (4, 1, 2); elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { -0.5 P1, 0.5 P2, 0.5 P3, 0.5 P4 }; { 0.5 P1, -0.5 P2, 0.5 P3, 0.5 P4 }; { 0.5 P1, 0.5 P2, -0.5 P3, 0.5 P4 }; { 0.8 P1, -0.1 P2, -0.1 P3, 0.4 P4 }; { -0.1 P1, 0.8 P2, -0.1 P3, 0.4 P4 }; { -0.1 P1, -0.1 P2, 0.8 P3, 0.4 P4 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.3333 P2, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P2, 0.3334 P4 }; { 0.7 P1, 0.3 P4 }; { 0.7 P2, 0.3 P4 }; { 0.7 P3, 0.3 P4 }; endrule rule "Tetrahedron Vis a Vis Point with edge(1)" quality 1 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 0.866, 0) { 0.5 }; (0.5, 0.288, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; mapedges (1, 4); newpoints newfaces (4, 3, 1); (4, 2, 3); (4, 1, 2); elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { -0.35 P1, 0.45 P2, 0.45 P3, 0.45 P4 }; { 0.45 P1, -0.35 P2, 0.45 P3, 0.45 P4 }; { 0.45 P1, 0.45 P2, -0.35 P3, 0.45 P4 }; { -0.05 P1, 0.7 P2, -0.05 P3, 0.4 P4 }; { -0.05 P1, -0.05 P2, 0.7 P3, 0.4 P4 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.3333 P2, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P2, 0.3334 P4 }; { 0.65 P2, 0.35 P4 }; { 0.65 P3, 0.35 P4 }; endrule rule "Tetrahedron Vis a Vis Point with 2 edges (1)" quality 1 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 0.866, 0) { 0.5 }; (0.5, 0.288, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; mapedges (1, 4); (2, 4); newpoints newfaces (4, 3, 1); (4, 2, 3); (4, 1, 2); elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { -0.35 P1, 0.45 P2, 0.45 P3, 0.45 P4 }; { 0.45 P1, -0.35 P2, 0.45 P3, 0.45 P4 }; { 0.45 P1, 0.45 P2, -0.35 P3, 0.45 P4 }; { -0.05 P1, -0.05 P2, 0.7 P3, 0.4 P4 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.3333 P2, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P2, 0.3334 P4 }; { 0.65 P3, 0.35 P4 }; endrule rule "Tetrahedron Vis a Vis Point with 3 edges (1)" quality 1 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 0.866, 0) { 0.5 }; (0.5, 0.288, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; mapedges (1, 4); (2, 4); (3, 4); newpoints newfaces (4, 3, 1); (4, 2, 3); (4, 1, 2); elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { -0.35 P1, 0.45 P2, 0.45 P3, 0.45 P4 }; { 0.45 P1, -0.35 P2, 0.45 P3, 0.45 P4 }; { 0.45 P1, 0.45 P2, -0.35 P3, 0.45 P4 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.3333 P2, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P3, 0.3334 P4 }; { 0.3333 P1, 0.3333 P2, 0.3334 P4 }; endrule rule "Tetrahedron Vis a Vis Triangle (1)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 0.866, 0) { 0.5 }; (0, 0, -0.816) { 0.5 }; (1, 0, -0.816) { 0.5 }; (0.5, 0.866, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; (4, 6, 5) del; newpoints newfaces (1, 2, 4); (2, 5, 4); (2, 3, 6); (2, 6, 5); (3, 1, 4); (3, 4, 6); elements (1, 2, 3, 4); (4, 2, 3, 6); (4, 2, 6, 5); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1 P6 }; { -0.2 P1, 0.35 P2, 0.35 P3, -0.2 P4, 0.35 P5, 0.35 P6 }; { 0.35 P1, -0.2 P2, 0.35 P3, 0.35 P4, -0.2 P5, 0.35 P6 }; { 0.35 P1, 0.35 P2, -0.2 P3, 0.35 P4, 0.35 P5, -0.2 P6 }; endrule rule "Octaeder 1" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 0.95 }; (0.5, 0.866, 0) { 0.95 }; (0.5, -0.288, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; newpoints (1, 0.578, -0.816) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4} { 0.5 Z3, 0.5 Z4 }; (0, 0.578, -0.816) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4} { 0.5 Z3, 0.5 Z4 }; newfaces (2, 3, 5); (3, 1, 6); (3, 6, 5); (2, 5, 4); (1, 4, 6); (4, 5, 6); elements (3, 4, 1, 2); (3, 4, 2, 5); (3, 4, 5, 6); (3, 4, 6, 1); freezone (0, 0, 0); (1, 0, 0) { 1 X2 } { } { }; (0.5, 0.866, 0) { 1 X3 } { 1 Y3 } { }; (0.5, -0.288, -0.816) { 1 X4 } { 1 Y4 } { 1 Z4 }; (-0.5, 1, -1.5) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4 } { 1 Z4 }; ( 1.5, 1, -1.5) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4 } { 1 Z4 }; endrule rule "Octaeder 2" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 0.95 }; (0.5, 0.866, 0) { 0.95 }; (0.5, -0.288, -0.816) { 0.5 }; (1, 0.578, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; newpoints (0, 0.578, -0.816) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4} { 0.5 Z3, 0.5 Z4 }; newfaces (2, 3, 5); (3, 1, 6); (3, 6, 5); (2, 5, 4); (1, 4, 6); (4, 5, 6); elements (3, 4, 1, 2); (3, 4, 2, 5); (3, 4, 5, 6); (3, 4, 6, 1); freezone (0, 0, 0); (1, 0, 0) { 1 X2 } { } { }; (0.5, 0.866, 0) { 1 X3 } { 1 Y3 } { }; (0.5, -0.288, -0.816) { 1 X4 } { 1 Y4 } { 1 Z4 }; (1, 0.578, -0.816) { 1 X5 } { 1 Y5 } { 1 Z5 }; (0.9, 0.097, -0.544) { 0.333 X2, 0.333 X4, 0.333 X5 } { 0.333 Y2, 0.333 Y4, 0.333 Y5 } { 0.333 Z2, 0.333 Z4, 0.333 Z5 }; (0.9, 0.481, -0.272) { 0.333 X2, 0.333 X3, 0.333 X5 } { 0.333 Y2, 0.333 Y3, 0.333 Y5 } { 0.333 Z2, 0.333 Z3, 0.333 Z5 }; (-0.5, 1, -1.5) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4 } { 0.5 Z4, 0.5 Z5 }; endrule rule "Octaeder 2a" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 0.95 }; (0.5, 0.866, 0) { 0.95 }; (0.5, -0.288, -0.816) { 0.5 }; (1, 0.578, -0.816) { 0.5 }; mapfaces (1, 2, 3) del; (3, 2, 5) del; newpoints (0, 0.578, -0.816) { -1 X2, 1 X3, 1 X4 } { -1 Y2, 1 Y3, 1 Y4 } { -1 Z2, 1 Z3, 1 Z4 }; newfaces (1, 2, 4); (3, 1, 6); (3, 6, 5); (2, 5, 4); (1, 4, 6); (4, 5, 6); elements (3, 4, 1, 2); (3, 4, 2, 5); (3, 4, 5, 6); (3, 4, 6, 1); freezone (0, 0, 0); (1, 0, 0) { 1 X2 } { } { }; (0.5, 0.866, 0) { 1 X3 } { 1 Y3 } { }; (0.5, -0.288, -0.816) { 1 X4 } { 1 Y4 } { 1 Z4 }; (1, 0.578, -0.816) { 1 X5 } { 1 Y5 } { 1 Z5 }; (0.9, 0.097, -0.544) { 0.333 X2, 0.333 X4, 0.333 X5 } { 0.333 Y2, 0.333 Y4, 0.333 Y5 } { 0.333 Z2, 0.333 Z4, 0.333 Z5 }; (0.5, -0.097, -0.272) { 0.333 X2, 0.333 X4, 0.333 X1 } { 0.333 Y2, 0.333 Y4, 0.333 Y1 } { 0.333 Z2, 0.333 Z4, 0.333 Z1 }; (-0.5, 1, -1.5) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4 } { 0.5 Z4, 0.5 Z5 }; endrule rule "Pyramid 1" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 1 }; (0.5, 0.866, 0) { 1 }; (0.5, -0.288, -0.816) { 1 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; newpoints (1, 0.578, -0.816) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4} { 0.5 Z3, 0.5 Z4 }; newfaces (1, 4, 3); (2, 3, 5); (2, 5, 4); (4, 5, 3); elements (1, 2, 3, 4); (4, 2, 3, 5); freezone (0, 0, 0); (1, 0, 0) { 1 X2 } { } { }; (0.5, 0.866, 0) { 1 X3 } { 1 Y3 } { }; (0.5, -0.288, -0.816) { 1 X4 } { 1 Y4 } { 1 Z4 }; (0, 1, -1) { 0.5 X3, 0.5 X4 } { 1 Y3 } { 1 Z4 }; (1.5, 1, -1.5) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4} { 0.5 Z3, 0.5 Z4 }; endrule rule "Tetrahedron 2 times 60" quality 1 mappoints (0, 0, 0); (1, 0, 0) { 0.3 }; (0.5, 0.866, 0) { 0.3 }; (0.5, 0.288, -0.816) { 0.3 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (2, 4, 3) del; newpoints newfaces (1, 4, 3); elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.4 P1, 0.4 P4, 0.4 P3, -0.2 P2 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 0.3333 P1, 0.3333 P3, 0.3334 P4 }; endrule rule "Fill Tetrahedron (1)" quality 1 mappoints (0, 0, 0); (1, 0, 0) { 0.2 }; (0.5, 0.866, 0) { 0.2 }; (0.5, 0.288, -0.816) { 0.2 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (2, 4, 3) del; (3, 4, 1) del; newpoints newfaces elements (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; endrule rule "Tetrahedron 120 (1)" quality 1 mappoints (0, 0, 0); (1, 0, 0) { 1 }; (0.5, 0.866, 0) { 1 }; (0.5, -0.674, -0.544) { 1 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; newpoints (0.5, 0.288, -0.816) { -0.5 X1, -0.5 X2, 1 X3, 1 X4 } { -0.5 Y1, -0.5 Y2, 1 Y3, 1 Y4} { -0.5 Z1, -0.5 Z2, 1 Z3, 1 Z4}; newfaces (1, 5, 3); (3, 5, 2); (1, 4, 5); (2, 5, 4); elements (1, 2, 3, 5); (1, 4, 2, 5); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1.3 P5, -0.3 P1 }; { 1.3 P5, -0.3 P2 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1 P5 }; endrule rule "Tetrahedron 2 times 120 (1)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 1 }; (0.5, 0.866, 0) { 1 }; (0.5, -0.674, -0.544) { 0.8 }; (1.334, 0.77, -0.544) { 0.8 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (3, 2, 5) del; newpoints (0.5, 0.288, -0.816) { 0.25 X1, -0.5 X2, 0.25 X3, 0.5 X4, 0.5 X5 } { 0.25 Y1, -0.5 Y2, 0.25 Y3, 0.5 Y4, 0.5 Y5 } { 0.25 Z1, -0.5 Z2, 0.25 Z3, 0.5 Z4, 0.5 Z5 }; newfaces (6, 3, 1); (6, 1, 4); (6, 4, 2); (6, 2, 5); (6, 5, 3); elements (1, 2, 3, 6); (1, 4, 2, 6); (2, 5, 3, 6); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1.4 P6, -0.4 P2 }; { 1.4 P6, -0.4 P1 }; { 1.4 P6, -0.4 P3 }; endrule rule "four Tetrahedron non convex (4)" quality 4 flags l; mappoints (0, 0, 0); (1, 0, 0) { 0.1 }; (0.5, 1, 0) { 0.1 }; (0.5, 0, -1) { 0.1 }; (0.5, 0.3, -0.3) { 0.1 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (1, 5, 4) del; (1, 3, 5) del; newpoints (0.5, 0.1, -0.1) { 0.333 X1, 0.333 X2, 0.334 X5 } { 0.333 Y1, 0.333 Y2, 0.334 Y5 } { 0.333 Z1, 0.333 Z2, 0.334 Z5 }; newfaces (6, 2, 3) del; (6, 4, 2) del; (6, 5, 4) del; (6, 3, 5) del; elements (1, 2, 3, 6); (1, 4, 2, 6); (1, 5, 4, 6); (1, 3, 5, 6); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1.5 P6, -0.5 P1 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1 P6 }; freeset 1 6 2 3; freeset 1 6 3 5; freeset 1 6 5 4; freeset 1 6 4 2; endrule rule "five Tetrahedron non convex (4)" quality 4 flags l; mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 1, 0) { 0.5 }; (0, 0.8, -0.2) { 0.5 }; (0, 0.2, -0.8) { 0.5 }; (0.5, 0, -1) { 0.5 }; mapfaces (1, 2, 3) del; (1, 3, 4) del; (1, 4, 5) del; (1, 5, 6) del; (1, 6, 2) del; newpoints (0.1, 0.1, -0.1) { 0.75 X1, 0.05 X2, 0.05 X3, 0.05 X4, 0.05 X5, 0.05 X6 } { 0.75 Y1, 0.05 Y2, 0.05 Y3, 0.05 Y4, 0.05 Y5, 0.05 Y6 } { 0.75 Z1, 0.05 Z2, 0.05 Z3, 0.05 Z4, 0.05 Z5, 0.05 Z6 }; newfaces (7, 2, 3); (7, 3, 4); (7, 4, 5); (7, 5, 6); (7, 6, 2); elements (1, 2, 3, 7); (1, 3, 4, 7); (1, 4, 5, 7); (1, 5, 6, 7); (1, 6, 2, 7); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1 P6 }; { 1.5 P7, -0.5 P1 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1 P6 }; { 1 P7 }; freeset 1 7 2 3; freeset 1 7 3 4; freeset 1 7 4 5; freeset 1 7 5 6; freeset 1 7 6 2; endrule rule "four Tetrahedron non convex (6)" quality 6 flags l; mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 1, 0) { 0.5 }; (0.5, 0, -1) { 0.5 }; (0.5, 0.3, -0.3) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (1, 5, 4) del; (1, 3, 5) del; newpoints (0.095, 0.003, -0.003) { 0.9 X1, 0.09 X2, 0.01 X5 } { 0.9 Y1, 0.09 Y2, 0.01 Y5 } { 0.9 Z1, 0.09 Z2, 0.01 Z5 }; newfaces (6, 2, 3) del; (6, 4, 2) del; (6, 5, 4) del; (6, 3, 5) del; elements (1, 2, 3, 6); (1, 4, 2, 6); (1, 5, 4, 6); (1, 3, 5, 6); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1.499 P6, -0.5 P1, 0.001 P2 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1 P6 }; freeset 1 6 2 3; freeset 1 6 3 5; freeset 1 6 5 4; freeset 1 6 4 2; endrule rule "four Tetrahedron non convex (6)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 1, 0) { 0.5 }; (0.5, 0, -1) { 0.5 }; (0.5, 0.4, -0.4) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (4, 5, 2) del; (5, 3, 2) del; newpoints (0.925, 0.02, -0.02) { 0.05 X1, 0.9 X2, 0.05 X5 } { 0.05 Y1, 0.9 Y2, 0.05 Y5 } { 0.05 Z1, 0.9 Z2, 0.05 Z5 }; newfaces (3, 1, 6); (1, 4, 6); (4, 5, 6); (5, 3, 6); elements (3, 1, 2, 6); (1, 4, 2, 6); (4, 5, 2, 6); (5, 3, 2, 6); orientations (3, 1, 2, 5); (1, 4, 2, 5); (2, 4, 5, 1); (3, 2, 5, 1); (5, 4, 2, 3); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1.5 P6, -0.5 P2 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; { 1 P6 }; freeset 3 1 2 6; freeset 1 4 2 6; freeset 4 5 2 6; freeset 5 3 2 6; endrule rule "three Tetrahedron non convex (4)" quality 4 flags l; mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 1, 0) { 0.5 }; (0.5, 0, -1) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (1, 3, 4) del; newpoints (0.5, 0.25, -0.25) { 0.25 X1, 0.25 X2, 0.25 X3, 0.25 X4 } { 0.25 Y1, 0.25 Y2, 0.25 Y3, 0.25 Y4 } { 0.25 Z1, 0.25 Z2, 0.25 Z3, 0.25 Z4 }; newfaces (5, 2, 3); (5, 4, 2); (5, 3, 4); elements (2, 3, 1, 5); (3, 4, 1, 5); (4, 2, 1, 5; orientations (1, 2, 4, 3); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1.5 P5, -0.5 P1 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; freeset 1 2 3 5; freeset 1 3 4 5; freeset 1 4 2 5; endrule rule "three Tetrahedron non convex (6)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 1, 0) { 0.5 }; (0.5, 0, -1) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (1, 3, 4) del; newpoints (0.2, 0.1, -0.1) { 0.7 X1, 0.1 X2, 0.1 X3, 0.1 X4 } { 0.7 Y1, 0.1 Y2, 0.1 Y3, 0.1 Y4 } { 0.7 Z1, 0.1 Z2, 0.1 Z3, 0.1 Z4 }; newfaces (5, 2, 3); (5, 4, 2); (5, 3, 4); elements (2, 3, 1, 5); (3, 4, 1, 5); (4, 2, 1, 5; orientations (1, 2, 3, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1.5 P5, -0.5 P1 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; freeset 1 2 3 5; freeset 1 3 4 5; freeset 1 4 2 5; endrule rule "four Tetrahedron non convex (6)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 1, 0) { 0.5 }; (0.5, 0, -1) { 0.5 }; (0.5, 0.4, -0.4) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; (4, 5, 2) del; (5, 3, 2) del; newpoints (0.7, 0.08, -0.08) { 0.6 X2, 0.2 X5 } { 0.2 Y5 } { 0.2 Z5 }; newfaces (3, 1, 6); (1, 4, 6); (4, 5, 6); (5, 3, 6); elements (3, 1, 2, 6); (1, 4, 2, 6); (4, 5, 2, 6); (5, 3, 2, 6); orientations (3, 1, 2, 5); (5, 1, 2, 4); freezone (0, 0, 0); (1, 0, 0) { 1 X2 } { } { }; (0.5, 1, 0) { 1 X3 } { 1 Y3 } { }; (0.5, 0, -1) { 1 X4 } { 1 Y4 } { 1 Z4 }; (0.5, 0.4, -0.4) { 1 X5 } { 1 Y5 } { 1 Z5 }; (0.55, 0.12, -0.12) { 0.4 X2, 0.3 X5 } { 0.3 Y5 } { 0.3 Z5 }; freeset 3 1 2 6; freeset 1 4 2 6; freeset 4 5 2 6; freeset 5 3 2 6; endrule rule "Tetrahedron 2 in 60 (12)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 0.5 }; (0.5, 1, 0) { 0.5 }; (0.5, 0, -1) { 0.5 }; mapfaces (1, 2, 3) del; (1, 4, 2) del; newpoints (0.5, 0.1, -0.1) { 0.4 X1, 0.4 X2, 0.1 X3, 0.1 X4 } { 0.4 Y1, 0.4 Y2, 0.1 Y3, 0.1 Y4 } { 0.4 Z1, 0.4 Z2, 0.1 Z3, 0.1 Z4 }; newfaces (5, 2, 3); (5, 3, 1); (5, 4, 2); (5, 1, 4); elements (1, 2, 3, 5); (1, 2, 5, 4); freezone2 { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1.5 P5, -0.25 P1, -0.25 P2 }; freezonelimit { 1 P1 }; { 1 P2 }; { 1 P3 }; { 1 P4 }; { 1 P5 }; freeset 1 2 3 5; freeset 1 2 4 5; endrule rule "Tetrahedron 120, but more than 180 (13)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 1 }; (0.5, 0.866, 0) { 1 }; (0.5, -0.866, 0) { 1 }; mapfaces (1, 2, 3) del; (1, 4, 2); newpoints (0.5, 0, -0.3) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4} { 0.5 Z3, 0.5 Z4 }; newfaces (1, 5, 3); (3, 5, 2); (2, 5, 1); elements (1, 2, 3, 5); freezone (0, 0, 0); (1, 0, 0) { 1 X2 } { } { }; (0.5, 0.866, 0) { 1 X3 } { 1 Y3 } { }; (0.5, -0.1, -0.4) { 0.5 X3, 0.5 X4 } { 0.5 Y3, 0.5 Y4} { 0.5 Z3, 0.5 Z4 }; endrule rule "Free Tetrahedron (14)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 1.0 }; (0.5, 0.866, 0) { 1.0 }; mapfaces (1, 2, 3) del; newpoints (0.5, 0.288, -0.2) { 0.333 X2, 0.333 X3 } { 0.333 Y3 } { }; newfaces (4, 1, 2); (4, 2, 3); (4, 3, 1); elements (1, 2, 3, 4); freezone (0, 0, 0); (1, 0, 0) { 1 X2 } { } { }; (0.5, 0.866, 0) { 1 X3 } { 1 Y3 } { }; (0.5, 0.288, -0.25) { 0.333 X2, 0.333 X3 } { 0.333 Y3 } { }; endrule rule "Free Tetrahedron (15)" quality 100 mappoints (0, 0, 0); (1, 0, 0) { 1.0 }; (0.5, 0.866, 0) { 1.0 }; mapfaces (1, 2, 3) del; newpoints (0.5, 0.288, -0.1) { 0.333 X2, 0.333 X3 } { 0.333 Y3 } { }; newfaces (4, 1, 2); (4, 2, 3); (4, 3, 1); elements (1, 2, 3, 4); freezone (0, 0, 0); (1, 0, 0) { 1 X2 } { } { }; (0.5, 0.866, 0) { 1 X3 } { 1 Y3 } { }; (0.5, 0.288, -0.15) { 0.333 X2, 0.333 X3 } { 0.333 Y3 } { }; endrule