1//
2// time: Wed Mar 12 15:25:10 1997
3//
4// version: 3.1.1 (format), 3.1.4 (DX Beta)
5//
6//
7// MODULE main
8//
9// comment: This visual program is intended to be a general purpose program for viewing two-dimensional data.
10// comment:
11// comment: For multivariate data, you can choose which variable to  see. For series data you can use the sequencer to step through the series. Scattered data will be connected using the Connect module. A colormap editor can be used to color the data (choose Open All Colormap Editors from the Windows menu). Contour lines will be drawn (only if the data are scalar and position-dependent).
12// comment:
13// comment: If you would like to modify or use this visual program in the future, choose Open Visual Program Editor from the Windows menu, and then choose Save As from the File menu of the VPE.
14// page assignment: CreateImage	order=10, windowed=0, showing=1
15// page assignment: color	order=6, windowed=0, showing=0
16// page assignment: con_or_glyph	order=9, windowed=0, showing=0
17// page assignment: connect	order=5, windowed=0, showing=0
18// page assignment: deform	order=8, windowed=0, showing=0
19// page assignment: import	order=2, windowed=0, showing=0
20// page assignment: is_scalar	order=7, windowed=0, showing=0
21// page assignment: one_frame	order=4, windowed=0, showing=0
22// page assignment: select_var	order=3, windowed=0, showing=0
23// workspace: width = 622, height = 414
24// layout: snap = 0, width = 50, height = 50, align = NN
25//
26macro main(
27) -> (
28) {
29    //
30    // node FileSelector[3]: x = 154, y = 76, inputs = 0, label = FileSelector
31    // output[1]: visible = 1, type = 32, value = "_filename_"
32    // output[2]: visible = 1, type = 32, value = "_filename_"
33    // page group: import
34    //
35    //
36    // node String[1]: x = 251, y = 78, inputs = 0, label = String
37    // output[1]: visible = 1, type = 32, value = "_filetype_"
38    // page group: import
39    //
40    //
41    // node Import[1]: x = 183, y = 252, inputs = 6, label = Import
42    // page group: import
43    //
44main_Import_1_out_1 =
45    Import(
46    main_FileSelector_3_out_1,
47    main_Import_1_in_2,
48    main_String_1_out_1,
49    main_Import_1_in_4,
50    main_Import_1_in_5,
51    main_Import_1_in_6
52    ) [instance: 1, cache: 1];
53    //
54    // node Transmitter[38]: x = 298, y = 509, inputs = 1, label = imported
55    // page group: import
56    //
57imported = main_Import_1_out_1;
58    //
59    // node Receiver[43]: x = 341, y = 98, inputs = 1, label = imported
60    // page group: select_var
61    //
62main_Receiver_43_out_1[cache: 0] = imported;
63    //
64    // node Inquire[3]: x = 298, y = 212, inputs = 3, label = Inquire
65    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is generic group +1"
66    // page group: select_var
67    //
68main_Inquire_3_out_1 =
69    Inquire(
70    main_Receiver_43_out_1,
71    main_Inquire_3_in_2,
72    main_Inquire_3_in_3
73    ) [instance: 3, cache: 1];
74    //
75    // node Selector[2]: x = 479, y = 219, inputs = 7, label = Selector
76    // input[1]: defaulting = 0, visible = 0, type = 32, value = "Selector_2"
77    // input[2]: defaulting = 0, visible = 0, type = 32, value = "normal ascii"
78    // input[3]: defaulting = 0, visible = 0, type = 29, value = 0
79    // input[4]: defaulting = 1, visible = 1, type = 16777248, value = { "normal ascii" "full ascii" "normal text" }
80    // input[5]: defaulting = 1, visible = 0, type = 16777245, value = { 0 1 2 }
81    // output[1]: visible = 1, type = 29, value = 0
82    // output[2]: visible = 1, type = 32, value = "normal ascii"
83    // page group: select_var
84    //
85main_Selector_2_out_1[cache: 2],
86main_Selector_2_out_2[cache: 2] =
87    Selector(
88    main_Selector_2_in_1,
89    main_Selector_2_in_2,
90    main_Selector_2_in_3,
91    main_Receiver_43_out_1,
92    main_Selector_2_in_5,
93    main_Selector_2_in_6,
94    main_Selector_2_in_7
95    ) [instance: 2, cache: 1];
96    //
97    // node Select[1]: x = 410, y = 280, inputs = 3, label = Select
98    // page group: select_var
99    //
100main_Select_1_out_1 =
101    Select(
102    main_Receiver_43_out_1,
103    main_Selector_2_out_1,
104    main_Select_1_in_3
105    ) [instance: 1, cache: 1];
106    //
107    // node Switch[6]: x = 321, y = 364, inputs = 3, label = Switch
108    // page group: select_var
109    //
110main_Switch_6_out_1 =
111    Switch(
112    main_Inquire_3_out_1,
113    main_Receiver_43_out_1,
114    main_Select_1_out_1
115    ) [instance: 6, cache: 1];
116    //
117    // node Transmitter[39]: x = 311, y = 492, inputs = 1, label = selected_variable
118    // page group: select_var
119    //
120selected_variable = main_Switch_6_out_1;
121    //
122    // node Receiver[44]: x = 229, y = 101, inputs = 1, label = selected_variable
123    // page group: one_frame
124    //
125main_Receiver_44_out_1[cache: 0] = selected_variable;
126    //
127    // node Inquire[4]: x = 174, y = 263, inputs = 3, label = Inquire
128    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is series + 1"
129    // page group: one_frame
130    //
131main_Inquire_4_out_1 =
132    Inquire(
133    main_Receiver_44_out_1,
134    main_Inquire_4_in_2,
135    main_Inquire_4_in_3
136    ) [instance: 4, cache: 1];
137    //
138    // node Inquire[5]: x = 388, y = 282, inputs = 3, label = Inquire
139    // input[2]: defaulting = 0, visible = 1, type = 32, value = "member count -1"
140    // page group: one_frame
141    //
142main_Inquire_5_out_1 =
143    Inquire(
144    main_Receiver_44_out_1,
145    main_Inquire_5_in_2,
146    main_Inquire_5_in_3
147    ) [instance: 5, cache: 1];
148    //
149    // node Sequencer[1]: x = 357, y = 381, inputs = 7, label = Sequencer
150    // input[1]: defaulting = 0, visible = 0, type = 32, value = "Sequencer_1"
151    // input[4]: defaulting = 0, visible = 1, type = 1, value = 0
152    // input[5]: defaulting = 1, visible = 1, type = 1, value = 52
153    // input[6]: defaulting = 1, visible = 0, type = 1, value = 1
154    // input[7]: defaulting = 0, visible = 0, type = 16777217, value = { 0 52 1 0 52 1 }
155    // page group: one_frame
156    // vcr[1]: min = 0, max = 52, beg = 0, end = 52, cur = 0, inc = 1, loop = off, step = off, pal = off
157    // window: position = (0.2844,0.8350), size = 0.2188x0.0781
158    //
159    main_Sequencer_1_in_3 = @frame;
160main_Sequencer_1_out_1[cache: 2] =
161    Sequencer(
162    main_Sequencer_1_in_1,
163    main_Sequencer_1_in_2,
164    main_Sequencer_1_in_3,
165    main_Sequencer_1_in_4,
166    main_Inquire_5_out_1,
167    main_Sequencer_1_in_6,
168    main_Sequencer_1_in_7
169    ) [instance: 1, cache: 1];
170    //
171    // node Select[2]: x = 295, y = 417, inputs = 3, label = Select
172    // page group: one_frame
173    //
174main_Select_2_out_1 =
175    Select(
176    main_Receiver_44_out_1,
177    main_Sequencer_1_out_1,
178    main_Select_2_in_3
179    ) [instance: 2, cache: 1];
180    //
181    // node Switch[7]: x = 189, y = 453, inputs = 3, label = Switch
182    // page group: one_frame
183    //
184main_Switch_7_out_1 =
185    Switch(
186    main_Inquire_4_out_1,
187    main_Receiver_44_out_1,
188    main_Select_2_out_1
189    ) [instance: 7, cache: 1];
190    //
191    // node Transmitter[40]: x = 255, y = 538, inputs = 1, label = single_frame
192    // page group: one_frame
193    //
194single_frame = main_Switch_7_out_1;
195    //
196    // node Receiver[45]: x = 126, y = 99, inputs = 1, label = single_frame
197    // page group: connect
198    //
199main_Receiver_45_out_1[cache: 0] = single_frame;
200    //
201    // node Inquire[1]: x = 111, y = 267, inputs = 3, label = Inquire
202    // input[2]: defaulting = 0, visible = 1, type = 32, value = "has component + 1"
203    // input[3]: defaulting = 0, visible = 1, type = 32, value = "connections"
204    // page group: connect
205    //
206main_Inquire_1_out_1 =
207    Inquire(
208    main_Receiver_45_out_1,
209    main_Inquire_1_in_2,
210    main_Inquire_1_in_3
211    ) [instance: 1, cache: 1];
212    //
213    // node Connect[1]: x = 255, y = 220, inputs = 3, label = Connect
214    // page group: connect
215    //
216main_Connect_1_out_1 =
217    Connect(
218    main_Receiver_45_out_1,
219    main_Connect_1_in_2,
220    main_Connect_1_in_3
221    ) [instance: 1, cache: 1];
222    //
223    // node Switch[1]: x = 295, y = 305, inputs = 3, label = Switch
224    // page group: connect
225    //
226main_Switch_1_out_1 =
227    Switch(
228    main_Inquire_1_out_1,
229    main_Connect_1_out_1,
230    main_Receiver_45_out_1
231    ) [instance: 1, cache: 1];
232    //
233    // node Transmitter[1]: x = 274, y = 438, inputs = 1, label = FieldToVisualize
234    // page group: connect
235    //
236FieldToVisualize = main_Switch_1_out_1;
237    //
238    // node Receiver[1]: x = 150, y = 121, inputs = 1, label = FieldToVisualize
239    // page group: color
240    //
241main_Receiver_1_out_1[cache: 0] = FieldToVisualize;
242    //
243    // node Inquire[2]: x = 73, y = 220, inputs = 3, label = Inquire
244    // input[2]: defaulting = 0, visible = 1, type = 32, value = "has component +1"
245    // input[3]: defaulting = 0, visible = 1, type = 32, value = "colors"
246    // page group: color
247    //
248main_Inquire_2_out_1 =
249    Inquire(
250    main_Receiver_1_out_1,
251    main_Inquire_2_in_2,
252    main_Inquire_2_in_3
253    ) [instance: 2, cache: 1];
254    //
255    // node Transmitter[2]: x = 432, y = 536, inputs = 1, label = EntireField
256    // page group: one_frame
257    //
258EntireField = main_Receiver_44_out_1;
259    //
260    // node Receiver[2]: x = 415, y = 173, inputs = 1, label = EntireField
261    // page group: color
262    //
263main_Receiver_2_out_1[cache: 0] = EntireField;
264    //
265    // node Colormap[1]: x = 321, y = 209, inputs = 19, label = Colormap
266    // input[1]: defaulting = 0, visible = 0, type = 16777224, value = { [0.0 0.666667] [1.0 0.0] }
267    // input[2]: defaulting = 0, visible = 0, type = 16777224, value = { [0.0 1.0] [1.0 1.0] }
268    // input[3]: defaulting = 0, visible = 0, type = 16777224, value = { [0.0 1.0] [1.0 1.0] }
269    // input[4]: defaulting = 0, visible = 0, type = 16777224, value = { [0.0 1.0] [1.0 1.0] }
270    // input[5]: defaulting = 0, visible = 0, type = 32, value = "Colormap_1"
271    // input[7]: defaulting = 1, visible = 0, type = 5, value = -5498.0
272    // input[8]: defaulting = 1, visible = 0, type = 5, value = 407.0
273    // input[9]: defaulting = 1, visible = 0, type = 1, value = 20
274    // input[12]: defaulting = 0, visible = 0, type = 16777221, value = { -5498.0 407.0 }
275    // input[17]: defaulting = 0, visible = 0, type = 5, value = -5498.0
276    // input[18]: defaulting = 0, visible = 0, type = 5, value = 407.0
277    // page group: color
278    // window: position = (0.4453,0.0068), size = 0.5367x0.4404
279    //
280main_Colormap_1_out_1[cache: 2],
281main_Colormap_1_out_2[cache: 2] =
282    Colormap(
283    main_Colormap_1_in_1,
284    main_Colormap_1_in_2,
285    main_Colormap_1_in_3,
286    main_Colormap_1_in_4,
287    main_Colormap_1_in_5,
288    main_Receiver_2_out_1,
289    main_Colormap_1_in_7,
290    main_Colormap_1_in_8,
291    main_Colormap_1_in_9,
292    main_Colormap_1_in_10,
293    main_Colormap_1_in_11,
294    main_Colormap_1_in_12,
295    main_Colormap_1_in_13,
296    main_Colormap_1_in_14,
297    main_Colormap_1_in_15,
298    main_Colormap_1_in_16,
299    main_Colormap_1_in_17,
300    main_Colormap_1_in_18,
301    main_Colormap_1_in_19
302    ) [instance: 1, cache: 1];
303    //
304    // node Color[1]: x = 303, y = 306, inputs = 5, label = Color
305    // page group: color
306    //
307main_Color_1_out_1 =
308    Color(
309    main_Receiver_1_out_1,
310    main_Colormap_1_out_1,
311    main_Color_1_in_3,
312    main_Color_1_in_4,
313    main_Color_1_in_5
314    ) [instance: 1, cache: 1];
315    //
316    // node Switch[2]: x = 228, y = 474, inputs = 3, label = Switch
317    // page group: color
318    //
319main_Switch_2_out_1 =
320    Switch(
321    main_Inquire_2_out_1,
322    main_Color_1_out_1,
323    main_Receiver_1_out_1
324    ) [instance: 2, cache: 1];
325    //
326    // node Transmitter[41]: x = 244, y = 564, inputs = 1, label = colored
327    // page group: color
328    //
329colored = main_Switch_2_out_1;
330    //
331    // node Receiver[51]: x = 153, y = 81, inputs = 1, label = colored
332    // page group: is_scalar
333    //
334main_Receiver_51_out_1[cache: 0] = colored;
335    //
336    // node Inquire[14]: x = 149, y = 185, inputs = 3, label = Inquire
337    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is scalar"
338    // page group: is_scalar
339    //
340main_Inquire_14_out_1 =
341    Inquire(
342    main_Receiver_51_out_1,
343    main_Inquire_14_in_2,
344    main_Inquire_14_in_3
345    ) [instance: 14, cache: 1];
346    //
347    // node Transmitter[46]: x = 153, y = 289, inputs = 1, label = is_scalar
348    // page group: is_scalar
349    //
350is_scalar = main_Inquire_14_out_1;
351    //
352    // node Receiver[55]: x = 280, y = 73, inputs = 1, label = is_scalar
353    // page group: deform
354    //
355main_Receiver_55_out_1[cache: 0] = is_scalar;
356    //
357    // node Receiver[46]: x = 462, y = 70, inputs = 1, label = colored
358    // page group: deform
359    //
360main_Receiver_46_out_1[cache: 0] = colored;
361    //
362    // node Compute[1]: x = 357, y = 193, inputs = 3, label = Compute
363    // input[1]: defaulting = 0, visible = 0, type = 32, value = "$0 ? $1 : mag($1)"
364    // page group: deform
365    // expression: value = is_scalar ? colored : mag(colored)
366    // name[2]: value = is_scalar
367    // name[3]: value = colored
368    //
369main_Compute_1_out_1 =
370    Compute(
371    main_Compute_1_in_1,
372    main_Receiver_55_out_1,
373    main_Receiver_46_out_1
374    ) [instance: 1, cache: 1];
375    //
376    // node RubberSheet[1]: x = 279, y = 293, inputs = 4, label = RubberSheet
377    // page group: deform
378    //
379main_RubberSheet_1_out_1 =
380    RubberSheet(
381    main_Compute_1_out_1,
382    main_RubberSheet_1_in_2,
383    main_RubberSheet_1_in_3,
384    main_RubberSheet_1_in_4
385    ) [instance: 1, cache: 1];
386    //
387    // node Transmitter[42]: x = 292, y = 375, inputs = 1, label = deformed
388    // page group: deform
389    //
390deformed = main_RubberSheet_1_out_1;
391    //
392    // node Receiver[47]: x = 222, y = 121, inputs = 1, label = deformed
393    // page group: con_or_glyph
394    //
395main_Receiver_47_out_1[cache: 0] = deformed;
396    //
397    // node Sample[1]: x = 493, y = 252, inputs = 2, label = Sample
398    // page group: con_or_glyph
399    //
400main_Sample_1_out_1 =
401    Sample(
402    main_Receiver_47_out_1,
403    main_Sample_1_in_2
404    ) [instance: 1, cache: 1];
405    //
406    // node AutoGlyph[1]: x = 480, y = 351, inputs = 7, label = AutoGlyph
407    // page group: con_or_glyph
408    //
409main_AutoGlyph_1_out_1 =
410    AutoGlyph(
411    main_Sample_1_out_1,
412    main_AutoGlyph_1_in_2,
413    main_AutoGlyph_1_in_3,
414    main_AutoGlyph_1_in_4,
415    main_AutoGlyph_1_in_5,
416    main_AutoGlyph_1_in_6,
417    main_AutoGlyph_1_in_7
418    ) [instance: 1, cache: 1];
419    //
420    // node Inquire[15]: x = 162, y = 280, inputs = 3, label = Inquire
421    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is data dependent"
422    // input[3]: defaulting = 0, visible = 1, type = 32, value = "positions"
423    // page group: con_or_glyph
424    //
425main_Inquire_15_out_1 =
426    Inquire(
427    main_Receiver_47_out_1,
428    main_Inquire_15_in_2,
429    main_Inquire_15_in_3
430    ) [instance: 15, cache: 1];
431    //
432    // node Reset[2]: x = 416, y = 215, inputs = 6, label = Reset
433    // input[1]: defaulting = 0, visible = 0, type = 32, value = "main_Reset_2_out_1"
434    // input[2]: defaulting = 0, visible = 0, type = 29, value = 1
435    // input[3]: defaulting = 0, visible = 0, type = 3, value = 1
436    // input[4]: defaulting = 1, visible = 0, type = 29, value = 1
437    // input[5]: defaulting = 1, visible = 0, type = 29, value = 0
438    // output[1]: visible = 1, type = 29, value = 1
439    // page group: con_or_glyph
440    // toggle : 1
441    //
442    //
443    // node ScalarList[2]: x = 316, y = 209, inputs = 11, label = ScalarList
444    // input[1]: defaulting = 0, visible = 0, type = 32, value = "ScalarList_2"
445    // input[3]: defaulting = 0, visible = 0, type = 16777221, value = { -5498.0 -4907.5 -4317.0 -3726.5 -3136.0 -2545.5 -1955.0 -1364.5 -774.0 -183.5 407.0 }
446    // input[4]: defaulting = 1, visible = 1, type = 3, value = 0
447    // input[5]: defaulting = 1, visible = 0, type = 5, value = -5498.0
448    // input[6]: defaulting = 1, visible = 0, type = 5, value = 407.0
449    // input[7]: defaulting = 1, visible = 0, type = 5, value = 1.0
450    // input[9]: defaulting = 1, visible = 0, type = 1, value = 1
451    // output[1]: visible = 1, type = 16777221, value = { -5498.0 -4907.5 -4317.0 -3726.5 -3136.0 -2545.5 -1955.0 -1364.5 -774.0 -183.5 407.0 }
452    // page group: con_or_glyph
453    //
454main_ScalarList_2_out_1[cache: 2] =
455    ScalarList(
456    main_ScalarList_2_in_1,
457    main_Receiver_47_out_1,
458    main_ScalarList_2_in_3,
459    main_Reset_2_out_1,
460    main_ScalarList_2_in_5,
461    main_ScalarList_2_in_6,
462    main_ScalarList_2_in_7,
463    main_ScalarList_2_in_8,
464    main_ScalarList_2_in_9,
465    main_ScalarList_2_in_10,
466    main_ScalarList_2_in_11
467    ) [instance: 2, cache: 1];
468    //
469    // node Isosurface[1]: x = 245, y = 284, inputs = 6, label = Isosurface
470    // page group: con_or_glyph
471    //
472main_Isosurface_1_out_1 =
473    Isosurface(
474    main_Receiver_47_out_1,
475    main_ScalarList_2_out_1,
476    main_Isosurface_1_in_3,
477    main_Isosurface_1_in_4,
478    main_Isosurface_1_in_5,
479    main_Isosurface_1_in_6
480    ) [instance: 1, cache: 1];
481    //
482    // node Color[2]: x = 311, y = 354, inputs = 5, label = Color
483    // input[2]: defaulting = 0, visible = 1, type = 32, value = "black"
484    // page group: con_or_glyph
485    //
486main_Color_2_out_1 =
487    Color(
488    main_Isosurface_1_out_1,
489    main_Color_2_in_2,
490    main_Color_2_in_3,
491    main_Color_2_in_4,
492    main_Color_2_in_5
493    ) [instance: 2, cache: 1];
494    //
495    // node Switch[12]: x = 215, y = 382, inputs = 3, label = Switch
496    // page group: con_or_glyph
497    //
498main_Switch_12_out_1 =
499    Switch(
500    main_Inquire_15_out_1,
501    main_Color_2_out_1,
502    main_Switch_12_in_3
503    ) [instance: 12, cache: 1];
504    //
505    // node Collect[1]: x = 133, y = 368, inputs = 2, label = Collect
506    // page group: con_or_glyph
507    //
508main_Collect_1_out_1 =
509    Collect(
510    main_Receiver_47_out_1,
511    main_Switch_12_out_1
512    ) [instance: 1, cache: 1];
513    //
514    // node Receiver[52]: x = 42, y = 128, inputs = 1, label = is_scalar
515    // page group: con_or_glyph
516    //
517main_Receiver_52_out_1[cache: 0] = is_scalar;
518    //
519    // node Compute[10]: x = 28, y = 415, inputs = 2, label = Compute
520    // input[1]: defaulting = 0, visible = 0, type = 32, value = "$0 ? 1 : 2"
521    // page group: con_or_glyph
522    // expression: value = is_scalar ? 1 : 2
523    // name[2]: value = is_scalar
524    //
525main_Compute_10_out_1 =
526    Compute(
527    main_Compute_10_in_1,
528    main_Receiver_52_out_1
529    ) [instance: 10, cache: 1];
530    //
531    // node Switch[11]: x = 171, y = 507, inputs = 3, label = Switch
532    // page group: con_or_glyph
533    //
534main_Switch_11_out_1 =
535    Switch(
536    main_Compute_10_out_1,
537    main_Collect_1_out_1,
538    main_AutoGlyph_1_out_1
539    ) [instance: 11, cache: 1];
540    //
541    // node Transmitter[37]: x = 263, y = 564, inputs = 1, label = realized_data
542    // page group: con_or_glyph
543    //
544realized_data = main_Switch_11_out_1;
545    //
546    // node Receiver[42]: x = 153, y = 144, inputs = 1, label = realized_data
547    // page group: CreateImage
548    //
549main_Receiver_42_out_1[cache: 0] = realized_data;
550    //
551    // node Reset[1]: x = 321, y = 256, inputs = 6, label = Reset
552    // input[1]: defaulting = 0, visible = 0, type = 32, value = "main_Reset_1_out_1"
553    // input[2]: defaulting = 0, visible = 0, type = 29, value = 1
554    // input[3]: defaulting = 0, visible = 0, type = 3, value = 1
555    // input[4]: defaulting = 1, visible = 0, type = 29, value = 1
556    // input[5]: defaulting = 1, visible = 0, type = 29, value = 0
557    // output[1]: visible = 1, type = 29, value = 1
558    // page group: CreateImage
559    // toggle : 1
560    //
561    //
562    // node Image[1]: x = 212, y = 352, inputs = 48, label = Image
563    // input[1]: defaulting = 0, visible = 0, type = 67108863, value = "Image_1"
564    // input[4]: defaulting = 0, visible = 0, type = 1, value = 1
565    // input[5]: defaulting = 0, visible = 0, type = 8, value = [275 29.1667 -1.16071]
566    // input[6]: defaulting = 0, visible = 0, type = 8, value = [275 29.1667 59.2654]
567    // input[7]: defaulting = 0, visible = 0, type = 5, value = 32.3824
568    // input[8]: defaulting = 0, visible = 0, type = 1, value = 504
569    // input[9]: defaulting = 0, visible = 0, type = 5, value = 0.844
570    // input[10]: defaulting = 0, visible = 0, type = 8, value = [0 1 0]
571    // input[11]: defaulting = 1, visible = 0, type = 5, value = 30.0001
572    // input[12]: defaulting = 0, visible = 0, type = 1, value = 0
573    // input[14]: defaulting = 0, visible = 0, type = 1, value = 1
574    // input[15]: defaulting = 1, visible = 0, type = 32, value = "none"
575    // input[16]: defaulting = 1, visible = 0, type = 32, value = "none"
576    // input[17]: defaulting = 1, visible = 0, type = 1, value = 1
577    // input[18]: defaulting = 1, visible = 0, type = 1, value = 1
578    // input[19]: defaulting = 0, visible = 0, type = 3, value = 0
579    // input[21]: visible = 1
580    // input[29]: defaulting = 1, visible = 0, type = 3, value = 0
581    // input[41]: defaulting = 0, visible = 0, type = 32, value = "rotate"
582    // input[42]: defaulting = 0, visible = 0, type = 32, value = "Basic2D"
583    // page group: CreateImage
584    // title: value = Basic2D
585    // depth: value = 8
586    // window: position = (0.5430,0.4658), size = 0.4047x0.4580
587    // internal caching: 1
588    //
589main_Image_1_out_1,
590main_Image_1_out_2,
591main_Image_1_out_3 =
592    Image(
593    main_Image_1_in_1,
594    main_Receiver_42_out_1,
595    main_Image_1_in_3,
596    main_Image_1_in_4,
597    main_Image_1_in_5,
598    main_Image_1_in_6,
599    main_Image_1_in_7,
600    main_Image_1_in_8,
601    main_Image_1_in_9,
602    main_Image_1_in_10,
603    main_Image_1_in_11,
604    main_Image_1_in_12,
605    main_Image_1_in_13,
606    main_Image_1_in_14,
607    main_Image_1_in_15,
608    main_Image_1_in_16,
609    main_Image_1_in_17,
610    main_Image_1_in_18,
611    main_Image_1_in_19,
612    main_Image_1_in_20,
613    main_Reset_1_out_1,
614    main_Image_1_in_22,
615    main_Image_1_in_23,
616    main_Image_1_in_24,
617    main_Image_1_in_25,
618    main_Image_1_in_26,
619    main_Image_1_in_27,
620    main_Image_1_in_28,
621    main_Image_1_in_29,
622    main_Image_1_in_30,
623    main_Image_1_in_31,
624    main_Image_1_in_32,
625    main_Image_1_in_33,
626    main_Image_1_in_34,
627    main_Image_1_in_35,
628    main_Image_1_in_36,
629    main_Image_1_in_37,
630    main_Image_1_in_38,
631    main_Image_1_in_39,
632    main_Image_1_in_40,
633    main_Image_1_in_41,
634    main_Image_1_in_42,
635    main_Image_1_in_43,
636    main_Image_1_in_44,
637    main_Image_1_in_45,
638    main_Image_1_in_46,
639    main_Image_1_in_47,
640    main_Image_1_in_48
641    ) [instance: 1, cache: 1];
642    //
643    // node Switch[4]: x = 63, y = 387, inputs = 3, label = Switch
644    // input[2]: defaulting = 0, visible = 1, type = 67108863, value = 1
645    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 0
646    // page group: color
647    //
648main_Switch_4_out_1 =
649    Switch(
650    main_Inquire_2_out_1,
651    main_Switch_4_in_2,
652    main_Switch_4_in_3
653    ) [instance: 4, cache: 1];
654    //
655    // node ManageColormapEditor[1]: x = 39, y = 478, inputs = 3, label = ManageColormapEditor
656    // input[2]: defaulting = 1, visible = 1, type = 3, value = 1
657    // page group: color
658    //
659    ManageColormapEditor(
660    main_ManageColormapEditor_1_in_1,
661    main_Switch_4_out_1,
662    main_ManageColormapEditor_1_in_3
663    ) [instance: 1, cache: 1];
664    //
665    // node Switch[9]: x = 103, y = 326, inputs = 3, label = Switch
666    // input[2]: defaulting = 0, visible = 1, type = 67108863, value = 0
667    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 1
668    // page group: select_var
669    //
670main_Switch_9_out_1 =
671    Switch(
672    main_Inquire_3_out_1,
673    main_Switch_9_in_2,
674    main_Switch_9_in_3
675    ) [instance: 9, cache: 1];
676    //
677    // node ManageControlPanel[1]: x = 71, y = 423, inputs = 2, label = ManageControlPanel
678    // input[1]: defaulting = 0, visible = 1, type = 16777248, value = {"Variable Selection"}
679    // page group: select_var
680    //
681    ManageControlPanel(
682    main_ManageControlPanel_1_in_1,
683    main_Switch_9_out_1
684    ) [instance: 1, cache: 1];
685    //
686    // node Switch[8]: x = 47, y = 377, inputs = 3, label = Switch
687    // input[2]: defaulting = 0, visible = 1, type = 67108863, value = 0
688    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 1
689    // page group: one_frame
690    //
691main_Switch_8_out_1 =
692    Switch(
693    main_Inquire_4_out_1,
694    main_Switch_8_in_2,
695    main_Switch_8_in_3
696    ) [instance: 8, cache: 1];
697    //
698    // node ManageSequencer[1]: x = 0, y = 463, inputs = 1, label = ManageSequencer
699    // page group: one_frame
700    //
701    ManageSequencer(
702    main_Switch_8_out_1
703    ) [instance: 1, cache: 1];
704    //
705    // decorator Annotate	pos=(125,32) size=185x28 style(Label), font=bold, value = <NULL>
706    // annotation user_begin: 25
707    // annotation user: This page views the data.
708    // annotation user_end: <NULL>
709    // page group: CreateImage
710    //
711    // decorator Annotate	pos=(62,32) size=547x44 style(Label), font=bold, value = <NULL>
712    // annotation user_begin: 147
713    // annotation user: If the imported data set consists of more than one variable, this page pops up
714    // annotation user: a control panel which allows the user to choose which one to import.
715    // annotation user_end: <NULL>
716    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
717    // page group: select_var
718    //
719    // decorator Annotate	pos=(59,33) size=566x44 style(Label), font=bold, value = <NULL>
720    // annotation user_begin: 108
721    // annotation user: This page checks if the imported variable is a sequence (e.g. time series). If so, it
722    // annotation user: enables the sequencer.
723    // annotation user_end: <NULL>
724    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
725    // page group: one_frame
726    //
727    // decorator Annotate	pos=(52,43) size=518x44 style(Label), font=bold, value = <NULL>
728    // annotation user_begin: 102
729    // annotation user: This page checks whether or not the data has connections. If it does not,
730    // annotation user: it adds them using Connect.
731    // annotation user_end: <NULL>
732    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
733    // page group: connect
734    //
735    // decorator Annotate	pos=(48,52) size=552x44 style(Label), font=bold, value = <NULL>
736    // annotation user_begin: 106
737    // annotation user: This page checks whether the data have colors. If not, it enables the Colormap
738    // annotation user: Editor and colors the data.
739    // annotation user_end: <NULL>
740    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
741    // page group: color
742    //
743    // decorator Annotate	pos=(116,40) size=375x28 style(Label), font=bold, value = <NULL>
744    // annotation user_begin: 54
745    // annotation user: This page determines if the data are scalar or vector.
746    // annotation user_end: <NULL>
747    // page group: is_scalar
748    //
749    // decorator Annotate	pos=(94,28) size=477x44 style(Label), font=bold, value = <NULL>
750    // annotation user_begin: 116
751    // annotation user: If the data are scalar, then contour lines are created. Otherwise, the
752    // annotation user: field is sampled and glyphs are placed on it.
753    // annotation user_end: <NULL>
754    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
755    // page group: con_or_glyph
756    //
757    // decorator Annotate	pos=(35,180) size=246x110 style(Label), font=small_normal, value = <NULL>
758    // annotation user_begin: 253
759    // annotation user: This Inquire module finds out whether
760    // annotation user: the data set is a generic group (that is,
761    // annotation user: contains more than one variable). If so,
762    // annotation user: then an interactor is enabled, using
763    // annotation user: ManageControlPanel, which allows
764    // annotation user: the user to select one of the variables to
765    // annotation user: be visualized.
766    // annotation user_end: <NULL>
767    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
768    // page group: select_var
769    //
770    // decorator Annotate	pos=(480,267) size=174x68 style(Label), font=small_normal, value = <NULL>
771    // annotation user_begin: 99
772    // annotation user: This Inquire determines
773    // annotation user: the limits of the sequence
774    // annotation user: (that is, the number of steps
775    // annotation user: in the series).
776    // annotation user_end: <NULL>
777    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
778    // page group: one_frame
779    //
780    // decorator Annotate	pos=(2,249) size=157x82 style(Label), font=small_normal, value = <NULL>
781    // annotation user_begin: 124
782    // annotation user: This Inquire determines
783    // annotation user: whether or not the input
784    // annotation user: is a series of data. If so,
785    // annotation user: the Sequencer is enabled
786    // annotation user: using ManageSequencer.
787    // annotation user_end: <NULL>
788    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
789    // page group: one_frame
790    //
791    // decorator Annotate	pos=(78,11) size=526x44 style(Label), font=bold, value = <NULL>
792    // annotation user_begin: 118
793    // annotation user: This page deforms the data using RubberSheet. If the data are non-scalar,
794    // annotation user: it computes the magnitude of the data first.
795    // annotation user_end: <NULL>
796    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
797    // page group: deform
798    //
799    // decorator Annotate	pos=(27,175) size=262x82 style(Label), font=small_normal, value = <NULL>
800    // annotation user_begin: 199
801    // annotation user: This Compute module contains a conditional
802    // annotation user: expression. If the data are scalar, they are
803    // annotation user: passed through unmodified. If the data are
804    // annotation user: non-scalar, the magnitude is computed and
805    // annotation user: passed on to RubberSheet.
806    // annotation user_end: <NULL>
807    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
808    // page group: deform
809    //
810    // decorator Annotate	pos=(381,264) size=241x54 style(Label), font=small_normal, value = <NULL>
811    // annotation user_begin: 108
812    // annotation user: This interactor resets the viewpoint. This
813    // annotation user: would be necessary, for example, if a
814    // annotation user: new data set were imported.
815    // annotation user_end: <NULL>
816    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
817    // page group: CreateImage
818    //
819    // decorator Annotate	pos=(57,13) size=491x44 style(Label), font=bold, value = <NULL>
820    // annotation user_begin: 119
821    // annotation user: This page imports the data. The result is passed to other pages in the
822    // annotation user: visual program using the "imported" transmitter.
823    // annotation user_end: <NULL>
824    // resource *decorator.alignment:XmALIGNMENT_BEGINNING
825    // page group: import
826    //
827    // decorator Annotate	pos=(309,427) size=28x28 style(Marker), value = <NULL>
828    // annotation user_begin: 74
829    // annotation user: Isosurface is switched off if the data
830    // annotation user: are dep connections (cell-centered)
831    // annotation user_end: <NULL>
832    // page group: con_or_glyph
833// network: end of macro body
834CacheScene("Image_1", main_Image_1_out_1, main_Image_1_out_2);
835}
836main_FileSelector_3_out_1 = "_filename_";
837main_String_1_out_1 = "_filetype_";
838main_Import_1_in_2 = NULL;
839main_Import_1_in_4 = NULL;
840main_Import_1_in_5 = NULL;
841main_Import_1_in_6 = NULL;
842main_Import_1_out_1 = NULL;
843main_Transmitter_38_out_1 = NULL;
844main_Receiver_43_out_1 = NULL;
845main_Inquire_3_in_2 = "is generic group +1";
846main_Inquire_3_in_3 = NULL;
847main_Inquire_3_out_1 = NULL;
848main_Selector_2_in_1 = "Selector_2";
849main_Selector_2_in_2 = "normal ascii" ;
850main_Selector_2_in_3 = 0 ;
851main_Selector_2_in_5 = NULL;
852main_Selector_2_in_6 = NULL;
853main_Selector_2_in_7 = NULL;
854main_Selector_2_out_1 = 0 ;
855main_Select_1_in_3 = NULL;
856main_Select_1_out_1 = NULL;
857main_Switch_6_out_1 = NULL;
858main_Transmitter_39_out_1 = NULL;
859main_Receiver_44_out_1 = NULL;
860main_Inquire_4_in_2 = "is series + 1";
861main_Inquire_4_in_3 = NULL;
862main_Inquire_4_out_1 = NULL;
863main_Inquire_5_in_2 = "member count -1";
864main_Inquire_5_in_3 = NULL;
865main_Inquire_5_out_1 = NULL;
866main_Sequencer_1_in_1 = "Sequencer_1";
867main_Sequencer_1_in_2 = NULL;
868main_Sequencer_1_in_3 = NULL;
869main_Sequencer_1_in_4 = 0;
870main_Sequencer_1_in_6 = NULL;
871main_Sequencer_1_in_7 = { 0 52 1 0 52 1 };
872main_Sequencer_1_out_1 = NULL;
873
874@startframe = 0;
875@nextframe  = @startframe;
876@endframe   = 52;
877@deltaframe = 1;
878main_Select_2_in_3 = NULL;
879main_Select_2_out_1 = NULL;
880main_Switch_7_out_1 = NULL;
881main_Transmitter_40_out_1 = NULL;
882main_Receiver_45_out_1 = NULL;
883main_Inquire_1_in_2 = "has component + 1";
884main_Inquire_1_in_3 = "connections";
885main_Inquire_1_out_1 = NULL;
886main_Connect_1_in_2 = NULL;
887main_Connect_1_in_3 = NULL;
888main_Connect_1_out_1 = NULL;
889main_Switch_1_out_1 = NULL;
890main_Transmitter_1_out_1 = NULL;
891main_Receiver_1_out_1 = NULL;
892main_Inquire_2_in_2 = "has component +1";
893main_Inquire_2_in_3 = "colors";
894main_Inquire_2_out_1 = NULL;
895main_Transmitter_2_out_1 = NULL;
896main_Receiver_2_out_1 = NULL;
897main_Colormap_1_in_1 = { [0.0 0.666667] [1.0 0.0] };
898main_Colormap_1_in_2 = { [0.0 1.0] [1.0 1.0] };
899main_Colormap_1_in_3 = { [0.0 1.0] [1.0 1.0] };
900main_Colormap_1_in_4 = { [0.0 1.0] [1.0 1.0] };
901main_Colormap_1_in_5 = "Colormap_1";
902main_Colormap_1_in_7 = NULL;
903main_Colormap_1_in_8 = NULL;
904main_Colormap_1_in_9 = NULL;
905main_Colormap_1_in_10 = NULL;
906main_Colormap_1_in_11 = NULL;
907main_Colormap_1_in_12 = { -5498.0 407.0 };
908main_Colormap_1_in_13 = NULL;
909main_Colormap_1_in_14 = NULL;
910main_Colormap_1_in_15 = NULL;
911main_Colormap_1_in_16 = NULL;
912main_Colormap_1_in_17 = -5498.0;
913main_Colormap_1_in_18 = 407.0;
914main_Colormap_1_in_19 = NULL;
915main_Colormap_1_out_1 = NULL;
916main_Color_1_in_3 = NULL;
917main_Color_1_in_4 = NULL;
918main_Color_1_in_5 = NULL;
919main_Color_1_out_1 = NULL;
920main_Switch_2_out_1 = NULL;
921main_Transmitter_41_out_1 = NULL;
922main_Receiver_51_out_1 = NULL;
923main_Inquire_14_in_2 = "is scalar";
924main_Inquire_14_in_3 = NULL;
925main_Inquire_14_out_1 = NULL;
926main_Transmitter_46_out_1 = NULL;
927main_Receiver_55_out_1 = NULL;
928main_Receiver_46_out_1 = NULL;
929main_Compute_1_in_1 = "$0 ? $1 : mag($1)";
930main_Compute_1_out_1 = NULL;
931main_RubberSheet_1_in_2 = NULL;
932main_RubberSheet_1_in_3 = NULL;
933main_RubberSheet_1_in_4 = NULL;
934main_RubberSheet_1_out_1 = NULL;
935main_Transmitter_42_out_1 = NULL;
936main_Receiver_47_out_1 = NULL;
937main_Sample_1_in_2 = NULL;
938main_Sample_1_out_1 = NULL;
939main_AutoGlyph_1_in_2 = NULL;
940main_AutoGlyph_1_in_3 = NULL;
941main_AutoGlyph_1_in_4 = NULL;
942main_AutoGlyph_1_in_5 = NULL;
943main_AutoGlyph_1_in_6 = NULL;
944main_AutoGlyph_1_in_7 = NULL;
945main_AutoGlyph_1_out_1 = NULL;
946main_Inquire_15_in_2 = "is data dependent";
947main_Inquire_15_in_3 = "positions";
948main_Inquire_15_out_1 = NULL;
949main_Reset_2_in_1 = "main_Reset_2_out_1";
950main_Reset_2_in_2 = 1;
951main_Reset_2_in_3 = 1;
952main_Reset_2_in_4 = NULL;
953main_Reset_2_in_5 = NULL;
954main_Reset_2_in_6 = NULL;
955main_Reset_2_out_1[oneshot:0] = 1;
956main_ScalarList_2_in_1 = "ScalarList_2";
957main_ScalarList_2_in_3 = { -5498.0 -4907.5 -4317.0 -3726.5 -3136.0 -2545.5 -1955.0 -1364.5 -774.0 -183.5 407.0 };
958main_ScalarList_2_in_5 = NULL;
959main_ScalarList_2_in_6 = NULL;
960main_ScalarList_2_in_7 = NULL;
961main_ScalarList_2_in_8 = NULL;
962main_ScalarList_2_in_9 = NULL;
963main_ScalarList_2_in_10 = NULL;
964main_ScalarList_2_in_11 = NULL;
965main_ScalarList_2_out_1 = { -5498.0 -4907.5 -4317.0 -3726.5 -3136.0 -2545.5 -1955.0 -1364.5 -774.0 -183.5 407.0 };
966main_Isosurface_1_in_3 = NULL;
967main_Isosurface_1_in_4 = NULL;
968main_Isosurface_1_in_5 = NULL;
969main_Isosurface_1_in_6 = NULL;
970main_Isosurface_1_out_1 = NULL;
971main_Color_2_in_2 = "black";
972main_Color_2_in_3 = NULL;
973main_Color_2_in_4 = NULL;
974main_Color_2_in_5 = NULL;
975main_Color_2_out_1 = NULL;
976main_Switch_12_in_3 = NULL;
977main_Switch_12_out_1 = NULL;
978main_Collect_1_out_1 = NULL;
979main_Receiver_52_out_1 = NULL;
980main_Compute_10_in_1 = "$0 ? 1 : 2";
981main_Compute_10_out_1 = NULL;
982main_Switch_11_out_1 = NULL;
983main_Transmitter_37_out_1 = NULL;
984main_Receiver_42_out_1 = NULL;
985main_Reset_1_in_1 = "main_Reset_1_out_1";
986main_Reset_1_in_2 = 1;
987main_Reset_1_in_3 = 1;
988main_Reset_1_in_4 = NULL;
989main_Reset_1_in_5 = NULL;
990main_Reset_1_in_6 = NULL;
991main_Reset_1_out_1[oneshot:0] = 1;
992macro Image(
993        id,
994        object,
995        where,
996        useVector,
997        to,
998        from,
999        width,
1000        resolution,
1001        aspect,
1002        up,
1003        viewAngle,
1004        perspective,
1005        options,
1006        buttonState = 1,
1007        buttonUpApprox = "none",
1008        buttonDownApprox = "none",
1009        buttonUpDensity = 1,
1010        buttonDownDensity = 1,
1011        renderMode = 0,
1012        defaultCamera,
1013        reset,
1014        backgroundColor,
1015        throttle,
1016        RECenable = 0,
1017        RECfile,
1018        RECformat,
1019        RECresolution,
1020        RECaspect,
1021        AAenable = 0,
1022        AAlabels,
1023        AAticks,
1024        AAcorners,
1025        AAframe,
1026        AAadjust,
1027        AAcursor,
1028        AAgrid,
1029        AAcolors,
1030        AAannotation,
1031        AAlabelscale,
1032        AAfont,
1033        interactionMode,
1034        title,
1035        AAxTickLocs,
1036        AAyTickLocs,
1037        AAzTickLocs,
1038        AAxTickLabels,
1039        AAyTickLabels,
1040        AAzTickLabels) -> (
1041        object,
1042        camera,
1043        where)
1044{
1045    ImageMessage(
1046        id,
1047        backgroundColor,
1048        throttle,
1049        RECenable,
1050        RECfile,
1051        RECformat,
1052        RECresolution,
1053        RECaspect,
1054        AAenable,
1055        AAlabels,
1056        AAticks,
1057        AAcorners,
1058        AAframe,
1059        AAadjust,
1060        AAcursor,
1061        AAgrid,
1062        AAcolors,
1063        AAannotation,
1064        AAlabelscale,
1065        AAfont,
1066        AAxTickLocs,
1067        AAyTickLocs,
1068        AAzTickLocs,
1069        AAxTickLabels,
1070        AAyTickLabels,
1071        AAzTickLabels,
1072        interactionMode,
1073        title,
1074        renderMode,
1075        buttonUpApprox,
1076        buttonDownApprox,
1077        buttonUpDensity,
1078        buttonDownDensity) [instance: 1, cache: 1];
1079    autoCamera =
1080        AutoCamera(
1081            object,
1082            "front",
1083            object,
1084            resolution,
1085            aspect,
1086            [0,1,0],
1087            perspective,
1088            viewAngle,
1089            backgroundColor) [instance: 1, cache: 1];
1090    realCamera =
1091        Camera(
1092            to,
1093            from,
1094            width,
1095            resolution,
1096            aspect,
1097            up,
1098            perspective,
1099            viewAngle,
1100            backgroundColor) [instance: 1, cache: 1];
1101    coloredDefaultCamera =
1102	 UpdateCamera(defaultCamera,
1103            background=backgroundColor) [instance: 1, cache: 1];
1104    nullDefaultCamera =
1105        Inquire(defaultCamera,
1106            "is null + 1") [instance: 1, cache: 1];
1107    resetCamera =
1108        Switch(
1109            nullDefaultCamera,
1110            coloredDefaultCamera,
1111            autoCamera) [instance: 1, cache: 1];
1112    resetNull =
1113        Inquire(
1114            reset,
1115            "is null + 1") [instance: 2, cache: 1];
1116    reset =
1117        Switch(
1118            resetNull,
1119            reset,
1120            0) [instance: 2, cache: 1];
1121    whichCamera =
1122        Compute(
1123            "($0 != 0 || $1 == 0) ? 1 : 2",
1124            reset,
1125            useVector) [instance: 1, cache: 1];
1126    camera = Switch(
1127            whichCamera,
1128            resetCamera,
1129            realCamera) [instance: 3, cache: 1];
1130    AAobject =
1131        AutoAxes(
1132            object,
1133            camera,
1134            AAlabels,
1135            AAticks,
1136            AAcorners,
1137            AAframe,
1138            AAadjust,
1139            AAcursor,
1140            AAgrid,
1141            AAcolors,
1142            AAannotation,
1143            AAlabelscale,
1144            AAfont,
1145            AAxTickLocs,
1146            AAyTickLocs,
1147            AAzTickLocs,
1148            AAxTickLabels,
1149            AAyTickLabels,
1150            AAzTickLabels) [instance: 1, cache: 1];
1151    switchAAenable = Compute("$0+1",
1152	     AAenable) [instance: 2, cache: 1];
1153    object = Switch(
1154	     switchAAenable,
1155	     object,
1156	     AAobject) [instance:4, cache: 1];
1157    SWapproximation_options =
1158        Switch(
1159            buttonState,
1160            buttonUpApprox,
1161            buttonDownApprox) [instance: 5, cache: 1];
1162    SWdensity_options =
1163        Switch(
1164            buttonState,
1165            buttonUpDensity,
1166            buttonDownDensity) [instance: 6, cache: 1];
1167    HWapproximation_options =
1168        Format(
1169            "%s,%s",
1170            buttonDownApprox,
1171            buttonUpApprox) [instance: 1, cache: 1];
1172    HWdensity_options =
1173        Format(
1174            "%d,%d",
1175            buttonDownDensity,
1176            buttonUpDensity) [instance: 2, cache: 1];
1177    switchRenderMode = Compute(
1178	     "$0+1",
1179	     renderMode) [instance: 3, cache: 1];
1180    approximation_options = Switch(
1181	     switchRenderMode,
1182            SWapproximation_options,
1183	     HWapproximation_options) [instance: 7, cache: 1];
1184    density_options = Switch(
1185	     switchRenderMode,
1186            SWdensity_options,
1187            HWdensity_options) [instance: 8, cache: 1];
1188    renderModeString = Switch(
1189            switchRenderMode,
1190            "software",
1191            "hardware")[instance: 9, cache: 1];
1192    object_tag = Inquire(
1193            object,
1194            "object tag")[instance: 3, cache: 1];
1195    annoted_object =
1196        Options(
1197            object,
1198            "send boxes",
1199            0,
1200            "cache",
1201            1,
1202            "object tag",
1203            object_tag,
1204            "ddcamera",
1205            whichCamera,
1206            "rendering approximation",
1207            approximation_options,
1208            "render every",
1209            density_options,
1210            "button state",
1211            buttonState,
1212            "rendering mode",
1213            renderModeString) [instance: 1, cache: 1];
1214    RECresNull =
1215        Inquire(
1216            RECresolution,
1217            "is null + 1") [instance: 4, cache: 1];
1218    ImageResolution =
1219        Inquire(
1220            camera,
1221            "camera resolution") [instance: 5, cache: 1];
1222    RECresolution =
1223        Switch(
1224            RECresNull,
1225            RECresolution,
1226            ImageResolution) [instance: 10, cache: 1];
1227    RECaspectNull =
1228        Inquire(
1229            RECaspect,
1230            "is null + 1") [instance: 6, cache: 1];
1231    ImageAspect =
1232        Inquire(
1233            camera,
1234            "camera aspect") [instance: 7, cache: 1];
1235    RECaspect =
1236        Switch(
1237            RECaspectNull,
1238            RECaspect,
1239            ImageAspect) [instance: 11, cache: 1];
1240    switchRECenable = Compute(
1241          "$0 == 0 ? 1 : (($2 == $3) && ($4 == $5)) ? ($1 == 1 ? 2 : 3) : 4",
1242            RECenable,
1243            switchRenderMode,
1244            RECresolution,
1245            ImageResolution,
1246            RECaspect,
1247	     ImageAspect) [instance: 4, cache: 1];
1248    NoRECobject, RECNoRerenderObject, RECNoRerHW, RECRerenderObject = Route(switchRECenable, annoted_object);
1249    Display(
1250        NoRECobject,
1251        camera,
1252        where,
1253        throttle) [instance: 1, cache: 1];
1254    image =
1255        Render(
1256            RECNoRerenderObject,
1257            camera) [instance: 1, cache: 1];
1258    Display(
1259        image,
1260        NULL,
1261        where,
1262        throttle) [instance: 2, cache: 1];
1263    WriteImage(
1264        image,
1265        RECfile,
1266        RECformat) [instance: 1, cache: 1];
1267    rec_where = Display(
1268        RECNoRerHW,
1269        camera,
1270        where,
1271        throttle) [instance: 1, cache: 0];
1272    rec_image = ReadImageWindow(
1273        rec_where) [instance: 1, cache: 1];
1274    WriteImage(
1275        rec_image,
1276        RECfile,
1277        RECformat) [instance: 1, cache: 1];
1278    RECupdateCamera =
1279	UpdateCamera(
1280	    camera,
1281	    resolution=RECresolution,
1282	    aspect=RECaspect) [instance: 2, cache: 1];
1283    Display(
1284        RECRerenderObject,
1285        camera,
1286        where,
1287        throttle) [instance: 1, cache: 1];
1288    RECRerenderObject =
1289	ScaleScreen(
1290	    RECRerenderObject,
1291	    NULL,
1292	    RECresolution,
1293	    camera) [instance: 1, cache: 1];
1294    image =
1295        Render(
1296            RECRerenderObject,
1297            RECupdateCamera) [instance: 2, cache: 1];
1298    WriteImage(
1299        image,
1300        RECfile,
1301        RECformat) [instance: 2, cache: 1];
1302}
1303main_Image_1_in_1 = "Image_1";
1304main_Image_1_in_3 = "X8,,Basic2D";
1305main_Image_1_in_4 = 1;
1306main_Image_1_in_5 = [275 29.1667 -1.16071];
1307main_Image_1_in_6 = [275 29.1667 59.2654];
1308main_Image_1_in_7 = 32.3824;
1309main_Image_1_in_8 = 504;
1310main_Image_1_in_9 = 0.844;
1311main_Image_1_in_10 = [0 1 0];
1312main_Image_1_in_11 = NULL;
1313main_Image_1_in_12 = 0;
1314main_Image_1_in_13 = NULL;
1315main_Image_1_in_14 = 1;
1316main_Image_1_in_15 = NULL;
1317main_Image_1_in_16 = NULL;
1318main_Image_1_in_17 = NULL;
1319main_Image_1_in_18 = NULL;
1320main_Image_1_in_19 = 0;
1321main_Image_1_in_20 = NULL;
1322main_Image_1_in_22 = NULL;
1323main_Image_1_in_23 = NULL;
1324main_Image_1_in_25 = NULL;
1325main_Image_1_in_26 = NULL;
1326main_Image_1_in_27 = NULL;
1327main_Image_1_in_28 = NULL;
1328main_Image_1_in_29 = NULL;
1329main_Image_1_in_30 = NULL;
1330main_Image_1_in_31 = NULL;
1331main_Image_1_in_32 = NULL;
1332main_Image_1_in_33 = NULL;
1333main_Image_1_in_34 = NULL;
1334main_Image_1_in_35 = NULL;
1335main_Image_1_in_36 = NULL;
1336main_Image_1_in_37 = NULL;
1337main_Image_1_in_38 = NULL;
1338main_Image_1_in_39 = NULL;
1339main_Image_1_in_40 = NULL;
1340main_Image_1_in_41 = "rotate";
1341main_Image_1_in_42 = "Basic2D";
1342main_Image_1_in_43 = NULL;
1343main_Image_1_in_44 = NULL;
1344main_Image_1_in_45 = NULL;
1345main_Image_1_in_46 = NULL;
1346main_Image_1_in_47 = NULL;
1347main_Image_1_in_48 = NULL;
1348main_Switch_4_in_2 = 1;
1349main_Switch_4_in_3 = 0;
1350main_Switch_4_out_1 = NULL;
1351main_ManageColormapEditor_1_in_1 = NULL;
1352main_ManageColormapEditor_1_in_3 = NULL;
1353main_Switch_9_in_2 = 0;
1354main_Switch_9_in_3 = 1;
1355main_Switch_9_out_1 = NULL;
1356main_ManageControlPanel_1_in_1 = {"Variable Selection"};
1357main_Switch_8_in_2 = 0;
1358main_Switch_8_in_3 = 1;
1359main_Switch_8_out_1 = NULL;
1360Executive("product version 3 1 4");
1361$sync
1362
1363sequence main();
1364play;
1365