1 USING: accessors arrays euler.b-rep.examples
2 euler.b-rep.triangulation math.vectors.simd.cords sequences
3 tools.test gml kernel ;
4 IN: euler.b-rep.triangulation.tests
6 : triangle-vx-positions ( triangles -- positions )
7 [ [ position>> ] { } map-as ] { } map-as ;
12 double-4{ 1.0 1.0 -1.0 0.0 }
13 double-4{ -1.0 -1.0 -1.0 0.0 }
14 double-4{ -1.0 1.0 -1.0 0.0 }
17 double-4{ -1.0 -1.0 -1.0 0.0 }
18 double-4{ 1.0 1.0 -1.0 0.0 }
19 double-4{ 1.0 -1.0 -1.0 0.0 }
22 ] [ valid-cube-b-rep faces>> first triangulate-face triangle-vx-positions ] unit-test
24 [ { } ] [ degenerate-incomplete-face faces>> first triangulate-face triangle-vx-positions ] unit-test
27 double-4{ 1.0 1.0 0.0 0.0 }
28 double-4{ -1.0 -1.0 0.0 0.0 }
29 double-4{ -1.0 1.0 0.0 0.0 }
32 double-4{ -1.0 -1.0 0.0 0.0 }
33 double-4{ 1.0 1.0 0.0 0.0 }
34 double-4{ 1.0 -1.0 0.0 0.0 }
36 } ] [ partially-degenerate-second-face faces>> second triangulate-face triangle-vx-positions ] unit-test
41 double-4{ -1.0 1.0 0.0 0.0 }
42 double-4{ -0.5 0.5 0.0 0.0 }
43 double-4{ -1.0 -1.0 0.0 0.0 }
46 double-4{ -0.5 0.5 0.0 0.0 }
47 double-4{ -1.0 1.0 0.0 0.0 }
48 double-4{ 1.0 1.0 0.0 0.0 }
51 double-4{ -0.5 0.5 0.0 0.0 }
52 double-4{ 1.0 1.0 0.0 0.0 }
53 double-4{ 0.5 0.5 0.0 0.0 }
56 double-4{ 0.5 0.5 0.0 0.0 }
57 double-4{ 1.0 1.0 0.0 0.0 }
58 double-4{ 0.5 -0.5 0.0 0.0 }
61 double-4{ -1.0 -1.0 0.0 0.0 }
62 double-4{ -0.5 -0.5 0.0 0.0 }
63 double-4{ 1.0 -1.0 0.0 0.0 }
66 double-4{ -0.5 -0.5 0.0 0.0 }
67 double-4{ -1.0 -1.0 0.0 0.0 }
68 double-4{ -0.5 0.5 0.0 0.0 }
71 double-4{ 1.0 -1.0 0.0 0.0 }
72 double-4{ -0.5 -0.5 0.0 0.0 }
73 double-4{ 0.5 -0.5 0.0 0.0 }
76 double-4{ 1.0 -1.0 0.0 0.0 }
77 double-4{ 0.5 -0.5 0.0 0.0 }
78 double-4{ 1.0 1.0 0.0 0.0 }
82 [ "vocab:gml/examples/torus.gml" run-gml-file ] make-gml nip
83 faces>> first triangulate-face triangle-vx-positions