]> gitweb.factorcode.org Git - factor.git/blob - unmaintained/adsoda/adsoda.tests
tools.test: Make the flag public. Finish porting tester changes to fuzzer.
[factor.git] / unmaintained / adsoda / adsoda.tests
1 ! : init-4D-demo ( -- space )\r
2 ! OK\r
3 ! espace de dimension 4 et de couleur 0,3 0.3 0.3\r
4 <space> \r
5     4 >>dimension\r
6     { 0.3 0.3 0.3 } >>ambient-color\r
7     { 100 150 100  150 100 150 100 150 } "4cube1" 4cube suffix-solids\r
8    { 160 180  160 180 160 180 160 180 } "4cube2" 4cube suffix-solids\r
9     <light>\r
10         { -100 -100 -100 -100 } >>position\r
11         { 0.2 0.7 0.1 } >>color\r
12         suffix-lights\r
13 ! ;\r
14 ! : init-3D-demo ( -- space )\r
15 ! OK\r
16 ! espace de dimension 4 et de couleur 0,3 0.3 0.3\r
17 <space> \r
18     3 >>dimension\r
19     { 0.3 0.3 0.3 } >>ambient-color\r
20     { 100 150 100  150 100 150 } "3cube1" 3cube suffix-solids\r
21   !  { -150 -10  -150 -10 -150 -10 -150 -10 } "4cube2" 4cube suffix-solids\r
22     <light>\r
23         { -100 -100 -100 -100 } >>position\r
24         { 0.2 0.7 0.1 } >>color\r
25         suffix-lights\r
26 ! ;\r
27 \r
28 \r
29 : s1 ( -- solid )\r
30     <solid> \r
31     2 >>dimension\r
32     "s1" >>name\r
33     { 1 1 1 } >>color\r
34     { 1 -1 -5 } cut-solid \r
35     { -1 -1 -21 } cut-solid \r
36     { -1 0 -12 } cut-solid \r
37     { 1 2 16 } cut-solid\r
38 ;\r
39 : solid1 ( -- solid )\r
40     <solid> \r
41     2 >>dimension\r
42     "solid1" >>name\r
43     { 1 -1 -5 } cut-solid \r
44     { -1 -1 -21 } cut-solid \r
45     { -1 0 -12 } cut-solid \r
46     { 1 2 16 } cut-solid\r
47     ensure-adjacencies\r
48     \r
49 ;\r
50 : solid2 ( -- solid )\r
51     <solid> \r
52     2 >>dimension\r
53     "solid2" >>name\r
54     { -1 1 -10 } cut-solid \r
55     { -1 -1 -28 } cut-solid \r
56     { 1 0 13 } cut-solid \r
57  !   { 1 2 16 } cut-solid\r
58     ensure-adjacencies\r
59     \r
60 ;\r
61 \r
62 : solid3 ( -- solid )\r
63       <solid> \r
64     2 >>dimension\r
65     "solid3" >>name\r
66     { 1 1 1 } >>color\r
67     { 1 0 16 } cut-solid \r
68     { -1 0 -36 } cut-solid \r
69     { 0 1 1 } cut-solid \r
70     { 0 -1  -17 } cut-solid \r
71  !   { 1 2 16 } cut-solid\r
72     ensure-adjacencies\r
73     \r
74 \r
75 ;\r
76 \r
77 : solid4 ( -- solid )\r
78       <solid> \r
79     2 >>dimension\r
80     "solid4" >>name\r
81     { 1 1 1 } >>color\r
82     { 1 0 21 } cut-solid \r
83     { -1 0 -36 } cut-solid \r
84     { 0 1 1 } cut-solid \r
85     { 0 -1  -17 } cut-solid \r
86     ensure-adjacencies\r
87     \r
88 ;\r
89 \r
90 : solid5 ( -- solid )\r
91       <solid> \r
92     2 >>dimension\r
93     "solid5" >>name\r
94     { 1 1 1 } >>color\r
95     { 1 0 6 } cut-solid \r
96     { -1 0 -17 } cut-solid \r
97     { 0 1 17 } cut-solid \r
98     { 0 -1  -19 } cut-solid \r
99     ensure-adjacencies\r
100     \r
101 ;\r
102 \r
103 : solid7 ( -- solid )\r
104       <solid> \r
105     2 >>dimension\r
106     "solid7" >>name\r
107     { 1 1 1 } >>color\r
108     { 1 0 38 } cut-solid \r
109     { 1 -5 -66 } cut-solid \r
110     { -2 1 -75 } cut-solid\r
111     ensure-adjacencies\r
112     \r
113 ;\r
114 \r
115 : solid6s ( -- seq )\r
116   solid3 clone solid2 clone subtract\r
117 ;\r
118 \r
119 : space1 ( -- space )\r
120     <space>\r
121         2 >>dimension\r
122      !    solid3 suffix-solids\r
123         solid1 suffix-solids\r
124         solid2 suffix-solids\r
125     !   solid6s [ suffix-solids ] each \r
126         solid4 suffix-solids\r
127      !   solid5 suffix-solids\r
128         solid7 suffix-solids\r
129         { 1 1 1 } >>ambient-color\r
130             <light>\r
131         { -100 -100 } >>position\r
132         { 0.2 0.7 0.1 } >>color\r
133         suffix-lights\r
134 ;\r
135 \r
136 : space2 ( -- space )\r
137     <space>\r
138         4 >>dimension\r
139        ! 4cube suffix-solids\r
140         { 1 1 1 } >>ambient-color\r
141             <light>\r
142         { -100 -100 } >>position\r
143         { 0.2 0.7 0.1 } >>color\r
144         suffix-lights\r
145 \r
146        ;\r
147 \r