]> gitweb.michael.orlitzky.com - spline3.git/blob - src/Tests/Face.hs
Re-enable all of the tests for (2.7).
[spline3.git] / src / Tests / Face.hs
1 module Tests.Face
2 where
3
4
5
6
7
8
9
10 -- -- | Given in Sorokina and Zeilfelder, p. 79.
11 -- prop_c3000_identity :: Cube -> Bool
12 -- prop_c3000_identity cube =
13 -- c t0' 3 0 0 0 ~= c t0' 2 1 0 0 + c t2' 2 1 0 0 - ((c t0' 2 0 1 0 + c t0' 2 0 0 1)/ 2)
14 -- where
15 -- t0 = tetrahedron0 (face0 cube)
16 -- t2 = tetrahedron2 (face5 cube)
17 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
18 -- t2' = Tetrahedron cube (v3 t2) (v2 t2) (v1 t2) (v0 t2)
19
20
21 -- -- | Given in Sorokina and Zeilfelder, p. 79.
22 -- prop_c2010_identity :: Cube -> Bool
23 -- prop_c2010_identity cube =
24 -- c t0' 2 0 1 0 ~= c t0' 1 1 1 0 + c t2' 1 1 1 0 - ((c t0' 1 0 2 0 + c t0' 1 0 1 1)/ 2)
25 -- where
26 -- t0 = tetrahedron0 (face0 cube)
27 -- t2 = tetrahedron2 (face5 cube)
28 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
29 -- t2' = Tetrahedron cube (v3 t2) (v2 t2) (v1 t2) (v0 t2)
30
31
32 -- -- | Given in Sorokina and Zeilfelder, p. 79.
33 -- prop_c2001_identity :: Cube -> Bool
34 -- prop_c2001_identity cube =
35 -- c t0' 2 0 0 1 ~= c t0' 1 1 0 1 + c t2' 1 1 0 1 - ((c t0' 1 0 0 2 + c t0' 1 0 1 1)/ 2)
36 -- where
37 -- t0 = tetrahedron0 (face0 cube)
38 -- t2 = tetrahedron2 (face5 cube)
39 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
40 -- t2' = Tetrahedron cube (v3 t2) (v2 t2) (v1 t2) (v0 t2)
41
42 -- -- | Given in Sorokina and Zeilfelder, p. 79.
43 -- prop_c1020_identity :: Cube -> Bool
44 -- prop_c1020_identity cube =
45 -- c t0' 1 0 2 0 ~= c t0' 0 1 2 0 + c t2' 0 1 2 0 - ((c t0' 0 0 3 0 + c t0' 0 0 2 1)/ 2)
46 -- where
47 -- t0 = tetrahedron0 (face0 cube)
48 -- t2 = tetrahedron2 (face5 cube)
49 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
50 -- t2' = Tetrahedron cube (v3 t2) (v2 t2) (v1 t2) (v0 t2)
51
52
53 -- -- | Given in Sorokina and Zeilfelder, p. 79.
54 -- prop_c1002_identity :: Cube -> Bool
55 -- prop_c1002_identity cube =
56 -- c t0' 1 0 0 2 ~= c t0' 0 1 0 2 + c t2' 0 1 0 2 - ((c t0' 0 0 0 3 + c t0' 0 0 1 2)/ 2)
57 -- where
58 -- t0 = tetrahedron0 (face0 cube)
59 -- t2 = tetrahedron2 (face5 cube)
60 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
61 -- t2' = Tetrahedron cube (v3 t2) (v2 t2) (v1 t2) (v0 t2)
62
63
64 -- -- | Given in Sorokina and Zeilfelder, p. 79.
65 -- prop_c1011_identity :: Cube -> Bool
66 -- prop_c1011_identity cube =
67 -- c t0' 1 0 1 1 ~= c t0' 0 1 1 1 + c t2' 0 1 1 1 - ((c t0' 0 0 1 2 + c t0' 0 0 2 1)/ 2)
68 -- where
69 -- t0 = tetrahedron0 (face0 cube)
70 -- t2 = tetrahedron2 (face5 cube)
71 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
72 -- t2' = Tetrahedron cube (v3 t2) (v2 t2) (v1 t2) (v0 t2)
73
74
75 -- -- | Given in Sorokina and Zeilfelder, p. 80.
76 -- prop_c0120_identity2 :: Cube -> Bool
77 -- prop_c0120_identity2 cube =
78 -- c t0' 0 1 2 0 ~= (c t0' 1 0 2 0 + c t1' 1 0 2 0) / 2
79 -- where
80 -- t0 = tetrahedron0 (face0 cube)
81 -- t1 = tetrahedron0 (face2 (top cube))
82 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
83 -- t1' = Tetrahedron cube (v3 t1) (v2 t1) (v0 t1) (v1 t1)
84
85
86 -- -- | Given in Sorokina and Zeilfelder, p. 80.
87 -- prop_c0102_identity2 :: Cube -> Bool
88 -- prop_c0102_identity2 cube =
89 -- c t0' 0 1 0 2 ~= (c t0' 1 0 0 2 + c t1' 1 0 0 2) / 2
90 -- where
91 -- t0 = tetrahedron0 (face0 cube)
92 -- t1 = tetrahedron0 (face2 (top cube))
93 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
94 -- t1' = Tetrahedron cube (v3 t1) (v2 t1) (v0 t1) (v1 t1)
95
96
97 -- -- | Given in Sorokina and Zeilfelder, p. 80.
98 -- prop_c0111_identity :: Cube -> Bool
99 -- prop_c0111_identity cube =
100 -- c t0' 0 1 1 1 ~= (c t0' 1 0 1 1 + c t1' 1 0 1 1) / 2
101 -- where
102 -- t0 = tetrahedron0 (face0 cube)
103 -- t1 = tetrahedron0 (face2 (top cube))
104 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
105 -- t1' = Tetrahedron cube (v3 t1) (v2 t1) (v0 t1) (v1 t1)
106
107
108 -- -- | Given in Sorokina and Zeilfelder, p. 80.
109 -- prop_c0210_identity2 :: Cube -> Bool
110 -- prop_c0210_identity2 cube =
111 -- c t0 0 2 1 0 ~= (c t0 1 1 1 0 + c t1 1 1 1 0) / 2
112 -- where
113 -- t0 = tetrahedron0 (face0 cube)
114 -- t1 = tetrahedron0 (face2 (top cube))
115 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
116 -- t1' = Tetrahedron cube (v3 t1) (v2 t1) (v0 t1) (v1 t1)
117
118
119 -- -- | Given in Sorokina and Zeilfelder, p. 80.
120 -- prop_c0201_identity2 :: Cube -> Bool
121 -- prop_c0201_identity2 cube =
122 -- c t0 0 2 0 1 ~= (c t0 1 1 0 1 + c t1 1 1 0 1) / 2
123 -- where
124 -- t0 = tetrahedron0 (face0 cube)
125 -- t1 = tetrahedron0 (face2 (top cube))
126 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
127 -- t1' = Tetrahedron cube (v3 t1) (v2 t1) (v0 t1) (v1 t1)
128
129
130 -- -- | Given in Sorokina and Zeilfelder, p. 80.
131 -- prop_c0300_identity3 :: Cube -> Bool
132 -- prop_c0300_identity3 cube =
133 -- c t0 0 3 0 0 ~= (c t0 1 2 0 0 + c t1 1 2 0 0) / 2
134 -- where
135 -- t0 = tetrahedron0 (face0 cube)
136 -- t1 = tetrahedron0 (face2 (top cube))
137 -- t0' = Tetrahedron cube (v3 t0) (v2 t0) (v1 t0) (v0 t0)
138 -- t1' = Tetrahedron cube (v3 t1) (v2 t1) (v0 t1) (v1 t1)