1#Inventor V2.1 ascii
2
3# Check all aspects of SoCone rendering.
4#
5# State change nodes which does not influence Cone rendering:
6#   SoNormal, SoNormalBinding, SoShapeHints
7#
8# 19990414 mortene
9
10Separator {
11   # (ROW 0) Check cone on its own.
12   Separator {
13      Cone { }
14
15      Translation { translation +2 0 0 }
16      Cone { parts SIDES }
17
18      Translation { translation +2 0 0 }
19      Cone { parts BOTTOM }
20
21      Translation { translation +2 0 0 }
22      Cone { bottomRadius 1.5 }
23
24      Translation { translation +2 0 0 }
25      Cone { height 4 }
26   }
27
28   # (ROW 1) With different LightModel settings.
29   Translation { translation 0 +4 0 }
30   Separator {
31      LightModel { model BASE_COLOR }
32      Cone { }
33
34      Translation { translation +2 0 0 }
35      LightModel { model PHONG }
36      Cone { }
37   }
38
39   # (ROW 2) With different DrawStyle settings.
40   Translation { translation 0 +4 0 }
41   Separator {
42      Translation { translation +2 0 0 }
43      DrawStyle { style INVISIBLE }
44      Cone { }
45
46      Translation { translation +2 0 0 }
47      DrawStyle { style LINES }
48      Cone { }
49
50      Translation { translation +2 0 0 }
51      DrawStyle { style LINES lineWidth 1 }
52      Cone { }
53
54      Translation { translation +2 0 0 }
55      DrawStyle { style LINES lineWidth 2 }
56      Cone { }
57
58      Translation { translation +2 0 0 }
59      DrawStyle { style LINES lineWidth 4 }
60      Cone { }
61
62      Translation { translation +2 0 0 }
63      DrawStyle { style LINES lineWidth 2 linePattern 0x0180 }
64      Cone { }
65
66      Translation { translation +2 0 0 }
67      DrawStyle { style POINTS }
68      Cone { }
69
70      Translation { translation +2 0 0 }
71      DrawStyle { style POINTS pointSize 3 }
72      Cone { }
73
74      Translation { translation +2 0 0 }
75      DrawStyle { style FILLED }
76      Cone { }
77   }
78
79   # (ROW 3) With different MaterialBinding settings.
80   Translation { translation 0 +4 0 }
81   Separator {
82      Material { diffuseColor [ 0.8 0.8 0, 0.8 0.0 0.8 ] }
83
84      Cone { }
85
86      Translation { translation +2 0 0 }
87      MaterialBinding { value OVERALL }
88      Cone { }
89
90      Translation { translation +2 0 0 }
91      MaterialBinding { value PER_PART }
92      Cone { }
93
94      Translation { translation +2 0 0 }
95      MaterialBinding { value PER_PART_INDEXED }
96      Cone { }
97
98      Translation { translation +2 0 0 }
99      MaterialBinding { value PER_FACE }
100      Cone { }
101
102      Translation { translation +2 0 0 }
103      MaterialBinding { value PER_FACE_INDEXED }
104      Cone { }
105
106      Translation { translation +2 0 0 }
107      MaterialBinding { value PER_VERTEX }
108      Cone { }
109
110      Translation { translation +2 0 0 }
111      MaterialBinding { value PER_VERTEX_INDEXED }
112      Cone { }
113   }
114
115   # (ROW 4) Test how Cone is affected by Complexity.
116   Translation { translation 0 +4 0 }
117   Separator {
118      Complexity { type BOUNDING_BOX }
119      Cone { }
120
121      Translation { translation +2 0 0 }
122      Complexity { type OBJECT_SPACE  value 1.0 }
123      Cone { }
124
125      Translation { translation +2 0 0 }
126      Complexity { type OBJECT_SPACE  value 0.8 }
127      Cone { }
128
129      Translation { translation +2 0 0 }
130      Complexity { type OBJECT_SPACE  value 0.6 }
131      Cone { }
132
133      Translation { translation +2 0 0 }
134      Complexity { type OBJECT_SPACE  value 0.4 }
135      Cone { }
136
137      Translation { translation +2 0 0 }
138      Complexity { type OBJECT_SPACE  value 0.2 }
139      Cone { }
140
141      Translation { translation +2 0 0 }
142      Complexity { type OBJECT_SPACE  value 0.0 }
143      Cone { }
144   }
145
146   # (ROW 5) Test how Cone is affected by texturemapping.
147   Translation { translation 0 +4 0 }
148   Separator {
149      Texture2 {
150	 image 8 6 3
151	 0xff000000 0xff000000 0x00000000 0x00000000 0xff00ff00 0xff00ff00
152	 0xff000000 0xff000000 0x00000000 0x00000000 0xff00ff00 0xff00ff00
153	 0xff000000 0xff000000 0x00000000 0x00000000 0xff00ff00 0xff00ff00
154	 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
155	 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
156	 0xffff0000 0xffff0000 0x00000000 0x00000000 0xffffff00 0xffffff00
157	 0xffff0000 0xffff0000 0x00000000 0x00000000 0xffffff00 0xffffff00
158	 0xffff0000 0xffff0000 0x00000000 0x00000000 0xffffff00 0xffffff00
159      }
160
161      Cone { }
162   }
163
164   # (ROW 6) Ignore flags on the fields.
165   Translation { translation 0 +4 0 }
166   Separator {
167      Cone { parts BOTTOM ~ }
168
169      Translation { translation +2 0 0 }
170      Cone { bottomRadius 0.5 ~ }
171
172      Translation { translation +2 0 0 }
173      Cone { height 0.5 ~ }
174   }
175}
176