Package lib :: Package software :: Package opendx :: Module files
[hide private]
[frames] | no frames]

Source Code for Module lib.software.opendx.files

   1  ############################################################################### 
   2  #                                                                             # 
   3  # Copyright (C) 2002-2008,2013 Edward d'Auvergne                              # 
   4  # Copyright (C) 2014 Troels E. Linnet                                         # 
   5  #                                                                             # 
   6  # This file is part of the program relax (http://www.nmr-relax.com).          # 
   7  #                                                                             # 
   8  # This program is free software: you can redistribute it and/or modify        # 
   9  # it under the terms of the GNU General Public License as published by        # 
  10  # the Free Software Foundation, either version 3 of the License, or           # 
  11  # (at your option) any later version.                                         # 
  12  #                                                                             # 
  13  # This program is distributed in the hope that it will be useful,             # 
  14  # but WITHOUT ANY WARRANTY; without even the implied warranty of              # 
  15  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               # 
  16  # GNU General Public License for more details.                                # 
  17  #                                                                             # 
  18  # You should have received a copy of the GNU General Public License           # 
  19  # along with this program.  If not, see <http://www.gnu.org/licenses/>.       # 
  20  #                                                                             # 
  21  ############################################################################### 
  22   
  23  # Module docstring. 
  24  """Module for generating OpenDX files.""" 
  25   
  26   
  27  # relax module imports. 
  28  from lib.io import open_write_file 
  29   
  30   
31 -def write_config(file_prefix=None, dir=None, date=None):
32 """Creating the OpenDX .cfg program configuration file. 33 34 @keyword file_prefix: The base part of the file name without extension. 35 @type file_prefix: str 36 @keyword dir: The directory to place the file in. 37 @type dir: str or None 38 @keyword date: The date string to include in the configuration. 39 @type date: str 40 """ 41 42 # Print out. 43 print("\nCreating the OpenDX .cfg program configuration file.") 44 45 # Open the file. 46 file = open_write_file(file_name=file_prefix+".cfg", dir=dir, force=True) 47 48 # Generate the text. 49 file.write("//\n") 50 file.write("//\n") 51 file.write("// time: %s\n" % date) 52 file.write("//\n") 53 file.write("// version: 3.2.0 (format), 4.3.2 (DX)\n") 54 file.write("//\n") 55 file.write("//\n") 56 file.write("// panel[0]: position = (0.0164,0.0000), size = 0.2521x0.1933, startup = 1, devstyle = 1\n") 57 file.write("// title: value = Control Panel\n") 58 file.write("//\n") 59 file.write("// workspace: width = 251, height = 142\n") 60 file.write("// layout: snap = 0, width = 50, height = 50, align = NN\n") 61 file.write("//\n") 62 file.write("// interactor Selector[1]: num_components = 1, value = 1 \n") 63 file.write("// selections: maximum = 2, current = 0 \n") 64 file.write("// option[0]: name = \"Colour\", value = 1\n") 65 file.write("// option[1]: name = \"Grey\", value = 2\n") 66 file.write("// instance: panel = 0, x = 81, y = 6, style = Scrolled List, vertical = 1, size = 170x136\n") 67 file.write("// label: value = Colour Selector\n") 68 file.write("//\n") 69 file.write("// node Image[3]:\n") 70 file.write("// title: value = Surface\n") 71 file.write("// depth: value = 24\n") 72 file.write("// window: position = (0.0000,0.0400), size = 0.9929x0.9276\n") 73 74 # Close the file. 75 file.close()
76 77
78 -def write_general(file_prefix=None, dir=None, inc=None):
79 """Create the OpenDX .general file for a 3D map. 80 81 @keyword file_prefix: The base part of the file name without extension. 82 @type file_prefix: str 83 @keyword dir: The directory to place the file in. 84 @type dir: str or None 85 @keyword inc: The number of increments in the 3D map. 86 @type inc: int 87 """ 88 89 # Printout. 90 print("\nCreating the OpenDX .general file.") 91 92 # Open the file. 93 file = open_write_file(file_name=file_prefix+".general", dir=dir, force=True) 94 95 # Write out the text. 96 file.write("file = %s\n" % file_prefix) 97 file.write("grid = %s x %s x %s\n" % (inc+1, inc+1, inc+1)) 98 file.write("format = ascii\n") 99 file.write("interleaving = field\n") 100 file.write("majority = row\n") 101 file.write("field = data\n") 102 file.write("structure = scalar\n") 103 file.write("type = float\n") 104 file.write("dependency = positions\n") 105 file.write("positions = regular, regular, regular, 0, 1, 0, 1, 0, 1\n\n") 106 file.write("end\n") 107 108 # Close the file. 109 file.close()
110 111
112 -def write_point(file_prefix=None, dir=None, inc=None, point=None, num_points=None, bounds=None, N=None):
113 """Creating a sphere at a given position within the map. 114 115 The formula used to calculate the coordinate position is:: 116 117 V - L 118 coord = Inc * ----- 119 U - L 120 121 where: 122 - V is the coordinate or parameter value. 123 - L is the lower bound value. 124 - U is the upper bound value. 125 - Inc is the number of increments. 126 127 Both a data file and .general file will be created. 128 129 130 @keyword file_prefix: The base part of the file name without extension. 131 @type file_prefix: str 132 @keyword dir: The directory to place the file in. 133 @type dir: str or None 134 @keyword inc: The number of increments in the map. 135 @type inc: int 136 @keyword point: The list of coordinates of the point. 137 @type point: numpy rank-1 float array or list of numpy rank-1 float array. 138 @keyword num_points: The number of points. 139 @type num_points: int 140 @keyword bounds: The bounds of the map. 141 @type bounds: numpy rank-2 float array 142 @keyword N: The dimension of the map. 143 @type N: int 144 """ 145 146 # Print out. 147 print("\nCreating the OpenDX .general and data files for the point %s." % point) 148 149 # Open the files. 150 point_file = open_write_file(file_name=file_prefix, dir=dir, force=True) 151 point_file_general = open_write_file(file_name=file_prefix+".general", dir=dir, force=True) 152 153 # Calculate the coordinate values. 154 for i in range(num_points): 155 i_point = point[i] 156 157 coords = inc * (i_point - bounds[:, 0]) / (bounds[:, 1] - bounds[:, 0]) 158 for i in range(N): 159 point_file.write("%-15.5g" % coords[i]) 160 point_file.write("1\n") 161 162 # The text of the point .general file. 163 point_file_general.write("file = %s\n" % file_prefix) 164 point_file_general.write("points = %s\n" % num_points) 165 point_file_general.write("format = ascii\n") 166 point_file_general.write("interleaving = field\n") 167 point_file_general.write("field = locations, field0\n") 168 point_file_general.write("structure = 3-vector, scalar\n") 169 point_file_general.write("type = float, float\n\n") 170 point_file_general.write("end\n") 171 172 # Close the data and .general files. 173 point_file.close() 174 point_file_general.close()
175 176
177 -def write_program(file_prefix=None, point_file=None, dir=None, inc=None, N=None, num_points=None, labels=None, tick_locations=None, tick_values=None, date=None, chi_surface=[7.0, 20.0, 100.0, 500.0]):
178 """Create the OpenDX .net program file. 179 180 @keyword file_prefix: The base part of the file name without extension. 181 @type file_prefix: str 182 @keyword point_file: The name of the point file to be displayed by the program. 183 @type point_file: str or None 184 @keyword dir: The directory to place the file in. 185 @type dir: str or None 186 @keyword inc: The number of increments in the map. 187 @type inc: int 188 @keyword N: The dimension of the map. 189 @type N: int 190 @keyword num_points: The number of points to be displayed by the program. 191 @type num_points: int 192 @keyword labels: The strings associated with the map axes, as an OpenDX string. 193 @type labels: str 194 @keyword tick_locations: The locations of the tick marks, as an OpenDX string. 195 @type tick_locations: str 196 @keyword tick_values: The values of the tick marks, as an OpenDX string. 197 @type tick_values: str 198 @keyword date: The date string to include in the configuration. 199 @type date: str 200 @keyword chi_surface: Chi2 surface level for the Innermost, Inner, Middle and Outer Isosurface. 201 @type chi_surface: list of 4 floats 202 """ 203 204 # Print out. 205 print("\nCreating the OpenDX .net program file.") 206 207 # Open the file. 208 file = open_write_file(file_name=file_prefix+".net", dir=dir, force=True) 209 210 # Corners. 211 corners = "{[0" 212 for i in range(N - 1): 213 corners += " 0" 214 corners += "] [%s" % inc 215 for i in range(N - 1): 216 corners += " %s" % inc 217 corners += "]}" 218 219 # Sphere size. 220 sphere_size = repr(0.025 * (inc + 1.0)) 221 222 # Image setup. 223 image_array1 = "[%s %s %s]" % (0.6 * (inc + 1.0), 0.3 * (inc + 1.0), 0.6 * (inc + 1.0)) 224 image_array2 = "[%s %s %s]" % (0.6 * (inc + 1.0), 0.3 * (inc + 1.0), 6.0 * (inc + 1.0)) 225 image_val = repr(3.0 * (inc + 1.0)) 226 227 # Unpacking the values for the 4 isosurfaces. 228 innermost_isosurface_value, inner_isosurface_value, middle_isosurface_value, outer_isosurface_value = chi_surface 229 230 # Generate the text of the program. 231 ################################### 232 233 file.write("//\n") 234 file.write("// time: %s\n" % date) 235 file.write("//\n") 236 file.write("// version: 3.2.0 (format), 4.3.2 (DX)\n") 237 file.write("//\n") 238 file.write("//\n") 239 file.write("// MODULE main\n") 240 241 # Include the sphere. 242 if num_points > 0: 243 file.write("\n") 244 file.write("// page assignment: Colour Space\torder=3, windowed=0, showing=0\n") 245 file.write("// page assignment: ColourScene\t\torder=5, windowed=0, showing=0\n") 246 file.write("// page assignment: Glyph\t\torder=2, windowed=0, showing=0\n") 247 file.write("// page assignment: Grey Space\t\torder=4, windowed=0, showing=0\n") 248 file.write("// page assignment: GreyScene\t\torder=6, windowed=0, showing=0\n") 249 file.write("// page assignment: Image\t\t\torder=7, windowed=0, showing=0\n") 250 file.write("// page assignment: Isosurfaces\t\torder=1, windowed=0, showing=1\n") 251 252 # No sphere. 253 else: 254 file.write("\n") 255 file.write("// page assignment: Colour Space\torder=4, windowed=0, showing=0\n") 256 file.write("// page assignment: ColourScene\t\torder=6, windowed=0, showing=0\n") 257 file.write("// page assignment: Grey Space\t\torder=5, windowed=0, showing=0\n") 258 file.write("// page assignment: GreyScene\t\torder=7, windowed=0, showing=0\n") 259 file.write("// page assignment: Image\t\t\torder=8, windowed=0, showing=0\n") 260 file.write("// page assignment: Isosurfaces\t\torder=2, windowed=0, showing=1\n") 261 262 # Common code. 263 file.write("\n") 264 file.write("// workspace: width = 474, height = 354\n") 265 file.write("// layout: snap = 0, width = 50, height = 50, align = NN\n") 266 file.write("//\n") 267 file.write("macro main(\n") 268 file.write(") -> (\n") 269 file.write(") {\n") 270 file.write(" // \n") 271 272 # Include the sphere. 273 if num_points > 0: 274 file.write("\n") 275 file.write(" // node Import[4]: x = 177, y = 62, inputs = 6, label = %s\n" % point_file) 276 file.write(" // input[1]: defaulting = 0, visible = 1, type = 32, value = \"%s.general\"\n" % point_file) 277 file.write(" // input[3]: defaulting = 1, visible = 1, type = 32, value = \"general\"\n") 278 file.write(" // page group: Glyph\n") 279 file.write(" //\n") 280 file.write("main_Import_4_out_1 = \n") 281 file.write(" Import(\n") 282 file.write(" main_Import_4_in_1,\n") 283 file.write(" main_Import_4_in_2,\n") 284 file.write(" main_Import_4_in_3,\n") 285 file.write(" main_Import_4_in_4,\n") 286 file.write(" main_Import_4_in_5,\n") 287 file.write(" main_Import_4_in_6\n") 288 file.write(" ) [instance: 4, cache: 1];\n") 289 file.write(" // \n") 290 file.write(" // node Glyph[2]: x = 201, y = 182, inputs = 7, label = Glyph\n") 291 file.write(" // input[2]: defaulting = 0, visible = 1, type = 32, value = \"sphere\"\n") 292 file.write(" // input[3]: defaulting = 1, visible = 1, type = 5, value = 10.0\n") 293 file.write(" // input[4]: defaulting = 0, visible = 1, type = 5, value = %s\n" % sphere_size) 294 file.write(" // input[5]: defaulting = 0, visible = 1, type = 5, value = 0.0\n") 295 file.write(" // page group: Glyph\n") 296 file.write(" //\n") 297 file.write("main_Glyph_2_out_1 = \n") 298 file.write(" Glyph(\n") 299 file.write(" main_Import_4_out_1,\n") 300 file.write(" main_Glyph_2_in_2,\n") 301 file.write(" main_Glyph_2_in_3,\n") 302 file.write(" main_Glyph_2_in_4,\n") 303 file.write(" main_Glyph_2_in_5,\n") 304 file.write(" main_Glyph_2_in_6,\n") 305 file.write(" main_Glyph_2_in_7\n") 306 file.write(" ) [instance: 2, cache: 1];\n") 307 file.write(" // \n") 308 file.write(" // node Color[10]: x = 357, y = 278, inputs = 5, label = Color\n") 309 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [0 0 0]\n") 310 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 1.0\n") 311 file.write(" // page group: Glyph\n") 312 file.write(" //\n") 313 file.write("main_Color_10_out_1 = \n") 314 file.write(" Color(\n") 315 file.write(" main_Glyph_2_out_1,\n") 316 file.write(" main_Color_10_in_2,\n") 317 file.write(" main_Color_10_in_3,\n") 318 file.write(" main_Color_10_in_4,\n") 319 file.write(" main_Color_10_in_5\n") 320 file.write(" ) [instance: 10, cache: 1];\n") 321 file.write(" // \n") 322 file.write(" // node Transmitter[1]: x = 352, y = 386, inputs = 1, label = GreySphere\n") 323 file.write(" // page group: Glyph\n") 324 file.write(" //\n") 325 file.write("GreySphere = main_Color_10_out_1;\n") 326 file.write(" // \n") 327 file.write(" // node Receiver[2]: x = 190, y = 350, inputs = 1, label = GreySphere\n") 328 file.write(" // page group: Grey Space\n") 329 file.write(" //\n") 330 file.write("main_Receiver_2_out_1[cache: 0] = GreySphere;\n") 331 332 # Common code. 333 file.write("\n") 334 file.write(" // \n") 335 file.write(" // node Import[3]: x = 225, y = 84, inputs = 6, label = %s\n" % file_prefix) 336 file.write(" // input[1]: defaulting = 0, visible = 1, type = 32, value = \"%s.general\"\n" % file_prefix) 337 file.write(" // input[3]: defaulting = 1, visible = 1, type = 32, value = \"general\"\n") 338 file.write(" // page group: Isosurfaces\n") 339 file.write(" //\n") 340 file.write("main_Import_3_out_1 = \n") 341 file.write(" Import(\n") 342 file.write(" main_Import_3_in_1,\n") 343 file.write(" main_Import_3_in_2,\n") 344 file.write(" main_Import_3_in_3,\n") 345 file.write(" main_Import_3_in_4,\n") 346 file.write(" main_Import_3_in_5,\n") 347 file.write(" main_Import_3_in_6\n") 348 file.write(" ) [instance: 3, cache: 1];\n") 349 file.write(" // \n") 350 file.write(" // node Isosurface[5]: x = 102, y = 191, inputs = 6, label = Outer Isosurface\n") 351 file.write(" // input[2]: defaulting = 0, visible = 1, type = 5, value = %.1f\n"%(outer_isosurface_value)) 352 file.write(" // page group: Isosurfaces\n") 353 file.write(" //\n") 354 file.write("main_Isosurface_5_out_1 = \n") 355 file.write(" Isosurface(\n") 356 file.write(" main_Import_3_out_1,\n") 357 file.write(" main_Isosurface_5_in_2,\n") 358 file.write(" main_Isosurface_5_in_3,\n") 359 file.write(" main_Isosurface_5_in_4,\n") 360 file.write(" main_Isosurface_5_in_5,\n") 361 file.write(" main_Isosurface_5_in_6\n") 362 file.write(" ) [instance: 5, cache: 1];\n") 363 file.write(" // \n") 364 file.write(" // node Transmitter[7]: x = 110, y = 292, inputs = 1, label = Surface4\n") 365 file.write(" // page group: Isosurfaces\n") 366 file.write(" //\n") 367 file.write("Surface4 = main_Isosurface_5_out_1;\n") 368 file.write(" // \n") 369 file.write(" // node Receiver[14]: x = 123, y = 51, inputs = 1, label = Surface4\n") 370 file.write(" // page group: Grey Space\n") 371 file.write(" //\n") 372 file.write("main_Receiver_14_out_1[cache: 0] = Surface4;\n") 373 file.write(" // \n") 374 file.write(" // node Color[6]: x = 142, y = 145, inputs = 5, label = Color\n") 375 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [0 0 0]\n") 376 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 0.2\n") 377 file.write(" // page group: Grey Space\n") 378 file.write(" //\n") 379 file.write("main_Color_6_out_1 = \n") 380 file.write(" Color(\n") 381 file.write(" main_Receiver_14_out_1,\n") 382 file.write(" main_Color_6_in_2,\n") 383 file.write(" main_Color_6_in_3,\n") 384 file.write(" main_Color_6_in_4,\n") 385 file.write(" main_Color_6_in_5\n") 386 file.write(" ) [instance: 6, cache: 1];\n") 387 file.write(" // \n") 388 file.write(" // node Isosurface[6]: x = 200, y = 191, inputs = 6, label = Middle Isosurface\n") 389 file.write(" // input[2]: defaulting = 0, visible = 1, type = 5, value = %.1f\n"%(middle_isosurface_value)) 390 file.write(" // page group: Isosurfaces\n") 391 file.write(" //\n") 392 file.write("main_Isosurface_6_out_1 = \n") 393 file.write(" Isosurface(\n") 394 file.write(" main_Import_3_out_1,\n") 395 file.write(" main_Isosurface_6_in_2,\n") 396 file.write(" main_Isosurface_6_in_3,\n") 397 file.write(" main_Isosurface_6_in_4,\n") 398 file.write(" main_Isosurface_6_in_5,\n") 399 file.write(" main_Isosurface_6_in_6\n") 400 file.write(" ) [instance: 6, cache: 1];\n") 401 file.write(" // \n") 402 file.write(" // node Transmitter[8]: x = 208, y = 292, inputs = 1, label = Surface3\n") 403 file.write(" // page group: Isosurfaces\n") 404 file.write(" //\n") 405 file.write("Surface3 = main_Isosurface_6_out_1;\n") 406 file.write(" // \n") 407 file.write(" // node Receiver[13]: x = 227, y = 51, inputs = 1, label = Surface3\n") 408 file.write(" // page group: Grey Space\n") 409 file.write(" //\n") 410 file.write("main_Receiver_13_out_1[cache: 0] = Surface3;\n") 411 file.write(" // \n") 412 file.write(" // node Color[7]: x = 246, y = 145, inputs = 5, label = Color\n") 413 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [0.2 0.2 0.2]\n") 414 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 0.4\n") 415 file.write(" // page group: Grey Space\n") 416 file.write(" //\n") 417 file.write("main_Color_7_out_1 = \n") 418 file.write(" Color(\n") 419 file.write(" main_Receiver_13_out_1,\n") 420 file.write(" main_Color_7_in_2,\n") 421 file.write(" main_Color_7_in_3,\n") 422 file.write(" main_Color_7_in_4,\n") 423 file.write(" main_Color_7_in_5\n") 424 file.write(" ) [instance: 7, cache: 1];\n") 425 file.write(" // \n") 426 file.write(" // node Collect[5]: x = 203, y = 236, inputs = 2, label = Collect\n") 427 file.write(" // page group: Grey Space\n") 428 file.write(" //\n") 429 file.write("main_Collect_5_out_1 = \n") 430 file.write(" Collect(\n") 431 file.write(" main_Color_6_out_1,\n") 432 file.write(" main_Color_7_out_1\n") 433 file.write(" ) [instance: 5, cache: 1];\n") 434 file.write(" // \n") 435 file.write(" // node Isosurface[7]: x = 298, y = 191, inputs = 6, label = Inner Isosurface\n") 436 file.write(" // input[2]: defaulting = 0, visible = 1, type = 5, value = %.1f\n"%(inner_isosurface_value)) 437 file.write(" // page group: Isosurfaces\n") 438 file.write(" //\n") 439 file.write("main_Isosurface_7_out_1 = \n") 440 file.write(" Isosurface(\n") 441 file.write(" main_Import_3_out_1,\n") 442 file.write(" main_Isosurface_7_in_2,\n") 443 file.write(" main_Isosurface_7_in_3,\n") 444 file.write(" main_Isosurface_7_in_4,\n") 445 file.write(" main_Isosurface_7_in_5,\n") 446 file.write(" main_Isosurface_7_in_6\n") 447 file.write(" ) [instance: 7, cache: 1];\n") 448 file.write(" // \n") 449 file.write(" // node Transmitter[9]: x = 306, y = 292, inputs = 1, label = Surface2\n") 450 file.write(" // page group: Isosurfaces\n") 451 file.write(" //\n") 452 file.write("Surface2 = main_Isosurface_7_out_1;\n") 453 file.write(" // \n") 454 file.write(" // node Receiver[12]: x = 331, y = 51, inputs = 1, label = Surface2\n") 455 file.write(" // page group: Grey Space\n") 456 file.write(" //\n") 457 file.write("main_Receiver_12_out_1[cache: 0] = Surface2;\n") 458 file.write(" // \n") 459 file.write(" // node Color[8]: x = 350, y = 145, inputs = 5, label = Color\n") 460 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [0.5 0.5 0.5]\n") 461 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 0.5\n") 462 file.write(" // page group: Grey Space\n") 463 file.write(" //\n") 464 file.write("main_Color_8_out_1 = \n") 465 file.write(" Color(\n") 466 file.write(" main_Receiver_12_out_1,\n") 467 file.write(" main_Color_8_in_2,\n") 468 file.write(" main_Color_8_in_3,\n") 469 file.write(" main_Color_8_in_4,\n") 470 file.write(" main_Color_8_in_5\n") 471 file.write(" ) [instance: 8, cache: 1];\n") 472 file.write(" // \n") 473 file.write(" // node Isosurface[8]: x = 396, y = 191, inputs = 6, label = Innermost Isosurface\n") 474 file.write(" // input[2]: defaulting = 0, visible = 1, type = 5, value = %.1f\n"%(innermost_isosurface_value)) 475 file.write(" // page group: Isosurfaces\n") 476 file.write(" //\n") 477 file.write("main_Isosurface_8_out_1 = \n") 478 file.write(" Isosurface(\n") 479 file.write(" main_Import_3_out_1,\n") 480 file.write(" main_Isosurface_8_in_2,\n") 481 file.write(" main_Isosurface_8_in_3,\n") 482 file.write(" main_Isosurface_8_in_4,\n") 483 file.write(" main_Isosurface_8_in_5,\n") 484 file.write(" main_Isosurface_8_in_6\n") 485 file.write(" ) [instance: 8, cache: 1];\n") 486 file.write(" // \n") 487 file.write(" // node Transmitter[10]: x = 404, y = 292, inputs = 1, label = Surface1\n") 488 file.write(" // page group: Isosurfaces\n") 489 file.write(" //\n") 490 file.write("Surface1 = main_Isosurface_8_out_1;\n") 491 file.write(" // \n") 492 file.write(" // node Receiver[11]: x = 434, y = 51, inputs = 1, label = Surface1\n") 493 file.write(" // page group: Grey Space\n") 494 file.write(" //\n") 495 file.write("main_Receiver_11_out_1[cache: 0] = Surface1;\n") 496 file.write(" // \n") 497 file.write(" // node Color[9]: x = 453, y = 145, inputs = 5, label = Color\n") 498 file.write(" // input[2]: defaulting = 0, visible = 1, type = 32, value = \"white\"\n") 499 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 0.7\n") 500 file.write(" // page group: Grey Space\n") 501 file.write(" //\n") 502 file.write("main_Color_9_out_1 = \n") 503 file.write(" Color(\n") 504 file.write(" main_Receiver_11_out_1,\n") 505 file.write(" main_Color_9_in_2,\n") 506 file.write(" main_Color_9_in_3,\n") 507 file.write(" main_Color_9_in_4,\n") 508 file.write(" main_Color_9_in_5\n") 509 file.write(" ) [instance: 9, cache: 1];\n") 510 file.write(" // \n") 511 file.write(" // node Collect[6]: x = 409, y = 236, inputs = 2, label = Collect\n") 512 file.write(" // page group: Grey Space\n") 513 file.write(" //\n") 514 file.write("main_Collect_6_out_1 = \n") 515 file.write(" Collect(\n") 516 file.write(" main_Color_8_out_1,\n") 517 file.write(" main_Color_9_out_1\n") 518 file.write(" ) [instance: 6, cache: 1];\n") 519 file.write(" // \n") 520 file.write(" // node Collect[7]: x = 307, y = 327, inputs = 2, label = Collect\n") 521 file.write(" // page group: Grey Space\n") 522 file.write(" //\n") 523 file.write("main_Collect_7_out_1 = \n") 524 file.write(" Collect(\n") 525 file.write(" main_Collect_5_out_1,\n") 526 file.write(" main_Collect_6_out_1\n") 527 file.write(" ) [instance: 7, cache: 1];\n") 528 file.write(" // \n") 529 530 # Include the sphere. 531 if num_points > 0: 532 file.write("\n") 533 file.write(" // node Collect[8]: x = 293, y = 431, inputs = 2, label = Collect\n") 534 file.write(" // page group: Grey Space\n") 535 file.write(" //\n") 536 file.write("main_Collect_8_out_1 = \n") 537 file.write(" Collect(\n") 538 file.write(" main_Receiver_2_out_1,\n") 539 file.write(" main_Collect_7_out_1\n") 540 file.write(" ) [instance: 8, cache: 1];\n") 541 file.write(" // \n") 542 file.write(" // node Transmitter[4]: x = 282, y = 517, inputs = 1, label = GreySpace\n") 543 544 # No sphere. 545 else: 546 file.write("\n") 547 file.write(" // node Transmitter[4]: x = 296, y = 439, inputs = 1, label = GreySpace\n") 548 549 # Common code. 550 file.write("\n") 551 file.write(" // page group: Grey Space\n") 552 file.write(" // \n") 553 554 # Include the sphere. 555 if num_points > 0: 556 file.write("\n") 557 file.write("GreySpace = main_Collect_8_out_1;\n") 558 559 # No sphere. 560 else: 561 file.write("\n") 562 file.write("GreySpace = main_Collect_7_out_1;\n") 563 564 # Common code. 565 file.write("\n") 566 file.write(" // \n") 567 file.write(" // node Receiver[3]: x = 137, y = 57, inputs = 1, label = GreySpace\n") 568 file.write(" // page group: GreyScene\n") 569 file.write(" //\n") 570 file.write("main_Receiver_3_out_1[cache: 0] = GreySpace;\n") 571 file.write(" // \n") 572 file.write(" // node Scale[3]: x = 163, y = 159, inputs = 2, label = Scale\n") 573 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [1 1 1]\n") 574 file.write(" // page group: GreyScene\n") 575 file.write(" //\n") 576 file.write("main_Scale_3_out_1 = \n") 577 file.write(" Scale(\n") 578 file.write(" main_Receiver_3_out_1,\n") 579 file.write(" main_Scale_3_in_2\n") 580 file.write(" ) [instance: 3, cache: 1];\n") 581 file.write(" // \n") 582 file.write(" // node AutoCamera[2]: x = 273, y = 264, inputs = 9, label = AutoCamera\n") 583 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [1 -1 1]\n") 584 file.write(" // input[3]: defaulting = 1, visible = 1, type = 5, value = 500.0\n") 585 file.write(" // input[4]: defaulting = 0, visible = 0, type = 1, value = 640\n") 586 file.write(" // input[5]: defaulting = 0, visible = 0, type = 5, value = .75\n") 587 file.write(" // input[6]: defaulting = 0, visible = 0, type = 8, value = [-1 1 0 ]\n") 588 file.write(" // input[7]: defaulting = 0, visible = 0, type = 3, value = 0\n") 589 file.write(" // input[8]: defaulting = 0, visible = 0, type = 5, value = 30.0\n") 590 file.write(" // input[9]: defaulting = 0, visible = 1, type = 32, value = \"white\"\n") 591 file.write(" // page group: GreyScene\n") 592 file.write(" //\n") 593 file.write("main_AutoCamera_2_out_1 = \n") 594 file.write(" AutoCamera(\n") 595 file.write(" main_Scale_3_out_1,\n") 596 file.write(" main_AutoCamera_2_in_2,\n") 597 file.write(" main_AutoCamera_2_in_3,\n") 598 file.write(" main_AutoCamera_2_in_4,\n") 599 file.write(" main_AutoCamera_2_in_5,\n") 600 file.write(" main_AutoCamera_2_in_6,\n") 601 file.write(" main_AutoCamera_2_in_7,\n") 602 file.write(" main_AutoCamera_2_in_8,\n") 603 file.write(" main_AutoCamera_2_in_9\n") 604 file.write(" ) [instance: 2, cache: 1];\n") 605 file.write(" // \n") 606 file.write(" // node AutoAxes[2]: x = 175, y = 379, inputs = 19, label = AutoAxes\n") 607 file.write(" // input[3]: defaulting = 0, visible = 1, type = 16777248, value = %s\n" % labels) 608 file.write(" // input[4]: defaulting = 0, visible = 0, type = 1, value = 30\n") 609 file.write(" // input[5]: defaulting = 0, visible = 1, type = 16777224, value = %s\n" % corners) 610 file.write(" // input[6]: defaulting = 0, visible = 1, type = 3, value = 1\n") 611 file.write(" // input[7]: defaulting = 1, visible = 0, type = 3, value = 1\n") 612 file.write(" // input[9]: defaulting = 0, visible = 1, type = 3, value = 1\n") 613 file.write(" // input[10]: defaulting = 0, visible = 1, type = 16777224, value = {[1 1 1] [0.1 0.1 0.1] [0 0 0] [0 0 0]}\n") 614 file.write(" // input[11]: defaulting = 0, visible = 1, type = 16777248, value = {\"background\" \"grid\" \"labels\" \"ticks\"}\n") 615 file.write(" // input[12]: defaulting = 1, visible = 0, type = 5, value = 0.4\n") 616 file.write(" // input[13]: defaulting = 0, visible = 0, type = 32, value = \"area\"\n") 617 file.write(" // input[14]: defaulting = 0, visible = 1, type = 16777221, value = %s\n" % tick_locations[0]) 618 file.write(" // input[15]: defaulting = 0, visible = 1, type = 16777221, value = %s\n" % tick_locations[1]) 619 file.write(" // input[16]: defaulting = 0, visible = 1, type = 16777221, value = %s\n" % tick_locations[2]) 620 file.write(" // input[17]: defaulting = 0, visible = 1, type = 16777248, value = %s\n" % tick_values[0]) 621 file.write(" // input[18]: defaulting = 0, visible = 1, type = 16777248, value = %s\n" % tick_values[1]) 622 file.write(" // input[19]: defaulting = 0, visible = 1, type = 16777248, value = %s\n" % tick_values[2]) 623 file.write(" // page group: GreyScene\n") 624 file.write(" //\n") 625 file.write("main_AutoAxes_2_out_1 = \n") 626 file.write(" AutoAxes(\n") 627 file.write(" main_Scale_3_out_1,\n") 628 file.write(" main_AutoCamera_2_out_1,\n") 629 file.write(" main_AutoAxes_2_in_3,\n") 630 file.write(" main_AutoAxes_2_in_4,\n") 631 file.write(" main_AutoAxes_2_in_5,\n") 632 file.write(" main_AutoAxes_2_in_6,\n") 633 file.write(" main_AutoAxes_2_in_7,\n") 634 file.write(" main_AutoAxes_2_in_8,\n") 635 file.write(" main_AutoAxes_2_in_9,\n") 636 file.write(" main_AutoAxes_2_in_10,\n") 637 file.write(" main_AutoAxes_2_in_11,\n") 638 file.write(" main_AutoAxes_2_in_12,\n") 639 file.write(" main_AutoAxes_2_in_13,\n") 640 file.write(" main_AutoAxes_2_in_14,\n") 641 file.write(" main_AutoAxes_2_in_15,\n") 642 file.write(" main_AutoAxes_2_in_16,\n") 643 file.write(" main_AutoAxes_2_in_17,\n") 644 file.write(" main_AutoAxes_2_in_18,\n") 645 file.write(" main_AutoAxes_2_in_19\n") 646 file.write(" ) [instance: 2, cache: 1];\n") 647 file.write(" // \n") 648 649 # Include the sphere. 650 if num_points > 0: 651 file.write("\n") 652 file.write(" // node Color[11]: x = 133, y = 278, inputs = 5, label = Color\n") 653 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [1 0 0]\n") 654 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 1.0\n") 655 file.write(" // page group: Glyph\n") 656 file.write(" //\n") 657 file.write("main_Color_11_out_1 = \n") 658 file.write(" Color(\n") 659 file.write(" main_Glyph_2_out_1,\n") 660 file.write(" main_Color_11_in_2,\n") 661 file.write(" main_Color_11_in_3,\n") 662 file.write(" main_Color_11_in_4,\n") 663 file.write(" main_Color_11_in_5\n") 664 file.write(" ) [instance: 11, cache: 1];\n") 665 file.write(" // \n") 666 file.write(" // node Transmitter[2]: x = 122, y = 386, inputs = 1, label = ColourSphere\n") 667 file.write(" // page group: Glyph\n") 668 file.write(" //\n") 669 file.write("ColourSphere = main_Color_11_out_1;\n") 670 file.write(" // \n") 671 file.write(" // node Receiver[1]: x = 179, y = 349, inputs = 1, label = ColourSphere\n") 672 file.write(" // page group: Colour Space\n") 673 file.write(" //\n") 674 file.write("main_Receiver_1_out_1[cache: 0] = ColourSphere;\n") 675 676 # Common code. 677 file.write("\n") 678 file.write(" // \n") 679 file.write(" // node Receiver[10]: x = 123, y = 51, inputs = 1, label = Surface4\n") 680 file.write(" // page group: Colour Space\n") 681 file.write(" //\n") 682 file.write("main_Receiver_10_out_1[cache: 0] = Surface4;\n") 683 file.write(" // \n") 684 file.write(" // node Color[12]: x = 142, y = 145, inputs = 5, label = Color\n") 685 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [0 0 0.2]\n") 686 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 0.3\n") 687 file.write(" // input[4]: defaulting = 1, visible = 0, type = 32, value = NULL\n") 688 file.write(" // input[5]: defaulting = 1, visible = 0, type = 3, value = NULL\n") 689 file.write(" // page group: Colour Space\n") 690 file.write(" //\n") 691 file.write("main_Color_12_out_1 = \n") 692 file.write(" Color(\n") 693 file.write(" main_Receiver_10_out_1,\n") 694 file.write(" main_Color_12_in_2,\n") 695 file.write(" main_Color_12_in_3,\n") 696 file.write(" main_Color_12_in_4,\n") 697 file.write(" main_Color_12_in_5\n") 698 file.write(" ) [instance: 12, cache: 1];\n") 699 file.write(" // \n") 700 file.write(" // node Receiver[9]: x = 227, y = 51, inputs = 1, label = Surface3\n") 701 file.write(" // page group: Colour Space\n") 702 file.write(" //\n") 703 file.write("main_Receiver_9_out_1[cache: 0] = Surface3;\n") 704 file.write(" // \n") 705 file.write(" // node Color[13]: x = 246, y = 145, inputs = 5, label = Color\n") 706 file.write(" // input[2]: defaulting = 0, visible = 1, type = 32, value = \"blue\"\n") 707 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 0.3\n") 708 file.write(" // page group: Colour Space\n") 709 file.write(" //\n") 710 file.write("main_Color_13_out_1 = \n") 711 file.write(" Color(\n") 712 file.write(" main_Receiver_9_out_1,\n") 713 file.write(" main_Color_13_in_2,\n") 714 file.write(" main_Color_13_in_3,\n") 715 file.write(" main_Color_13_in_4,\n") 716 file.write(" main_Color_13_in_5\n") 717 file.write(" ) [instance: 13, cache: 1];\n") 718 file.write(" // \n") 719 file.write(" // node Collect[9]: x = 203, y = 236, inputs = 2, label = Collect\n") 720 file.write(" // page group: Colour Space\n") 721 file.write(" //\n") 722 file.write("main_Collect_9_out_1 = \n") 723 file.write(" Collect(\n") 724 file.write(" main_Color_12_out_1,\n") 725 file.write(" main_Color_13_out_1\n") 726 file.write(" ) [instance: 9, cache: 1];\n") 727 file.write(" // \n") 728 file.write(" // node Receiver[8]: x = 331, y = 51, inputs = 1, label = Surface2\n") 729 file.write(" // page group: Colour Space\n") 730 file.write(" //\n") 731 file.write("main_Receiver_8_out_1[cache: 0] = Surface2;\n") 732 file.write(" // \n") 733 file.write(" // node Color[14]: x = 350, y = 145, inputs = 5, label = Color\n") 734 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [0.5 0.5 1]\n") 735 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 0.2\n") 736 file.write(" // page group: Colour Space\n") 737 file.write(" //\n") 738 file.write("main_Color_14_out_1 = \n") 739 file.write(" Color(\n") 740 file.write(" main_Receiver_8_out_1,\n") 741 file.write(" main_Color_14_in_2,\n") 742 file.write(" main_Color_14_in_3,\n") 743 file.write(" main_Color_14_in_4,\n") 744 file.write(" main_Color_14_in_5\n") 745 file.write(" ) [instance: 14, cache: 1];\n") 746 file.write(" // \n") 747 file.write(" // node Receiver[7]: x = 434, y = 51, inputs = 1, label = Surface1\n") 748 file.write(" // page group: Colour Space\n") 749 file.write(" //\n") 750 file.write("main_Receiver_7_out_1[cache: 0] = Surface1;\n") 751 file.write(" // \n") 752 file.write(" // node Color[15]: x = 453, y = 145, inputs = 5, label = Color\n") 753 file.write(" // input[2]: defaulting = 0, visible = 1, type = 32, value = \"white\"\n") 754 file.write(" // input[3]: defaulting = 0, visible = 1, type = 5, value = 0.55\n") 755 file.write(" // input[4]: defaulting = 1, visible = 0, type = 32, value = \"positions\"\n") 756 file.write(" // page group: Colour Space\n") 757 file.write(" //\n") 758 file.write("main_Color_15_out_1 = \n") 759 file.write(" Color(\n") 760 file.write(" main_Receiver_7_out_1,\n") 761 file.write(" main_Color_15_in_2,\n") 762 file.write(" main_Color_15_in_3,\n") 763 file.write(" main_Color_15_in_4,\n") 764 file.write(" main_Color_15_in_5\n") 765 file.write(" ) [instance: 15, cache: 1];\n") 766 file.write(" // \n") 767 file.write(" // node Collect[10]: x = 409, y = 236, inputs = 2, label = Collect\n") 768 file.write(" // page group: Colour Space\n") 769 file.write(" //\n") 770 file.write("main_Collect_10_out_1 = \n") 771 file.write(" Collect(\n") 772 file.write(" main_Color_14_out_1,\n") 773 file.write(" main_Color_15_out_1\n") 774 file.write(" ) [instance: 10, cache: 1];\n") 775 file.write(" // \n") 776 file.write(" // node Collect[11]: x = 307, y = 327, inputs = 2, label = Collect\n") 777 file.write(" // page group: Colour Space\n") 778 file.write(" //\n") 779 file.write("main_Collect_11_out_1 = \n") 780 file.write(" Collect(\n") 781 file.write(" main_Collect_9_out_1,\n") 782 file.write(" main_Collect_10_out_1\n") 783 file.write(" ) [instance: 11, cache: 1];\n") 784 file.write(" // \n") 785 786 # Include the sphere. 787 if num_points > 0: 788 file.write("\n") 789 file.write(" // node Collect[12]: x = 293, y = 431, inputs = 2, label = Collect\n") 790 file.write(" // page group: Colour Space\n") 791 file.write(" //\n") 792 file.write("main_Collect_12_out_1 = \n") 793 file.write(" Collect(\n") 794 file.write(" main_Receiver_1_out_1,\n") 795 file.write(" main_Collect_11_out_1\n") 796 file.write(" ) [instance: 12, cache: 1];\n") 797 file.write(" // \n") 798 file.write(" // node Transmitter[3]: x = 276, y = 517, inputs = 1, label = ColourSpace\n") 799 800 # No sphere. 801 else: 802 file.write("\n") 803 file.write(" // node Transmitter[3]: x = 290, y = 440, inputs = 1, label = ColourSpace\n") 804 805 # Common code. 806 file.write("\n") 807 file.write(" // page group: Colour Space\n") 808 file.write(" // \n") 809 810 # Include the sphere. 811 if num_points > 0: 812 file.write("\n") 813 file.write("ColourSpace = main_Collect_12_out_1;\n") 814 815 # No sphere. 816 else: 817 file.write("\n") 818 file.write("ColourSpace = main_Collect_11_out_1;\n") 819 820 # Common code. 821 file.write("\n") 822 file.write(" // \n") 823 file.write(" // node Receiver[4]: x = 131, y = 58, inputs = 1, label = ColourSpace\n") 824 file.write(" // page group: ColourScene\n") 825 file.write(" //\n") 826 file.write("main_Receiver_4_out_1[cache: 0] = ColourSpace;\n") 827 file.write(" // \n") 828 file.write(" // node Scale[5]: x = 163, y = 159, inputs = 2, label = Scale\n") 829 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [1 1 1]\n") 830 file.write(" // page group: ColourScene\n") 831 file.write(" //\n") 832 file.write("main_Scale_5_out_1 = \n") 833 file.write(" Scale(\n") 834 file.write(" main_Receiver_4_out_1,\n") 835 file.write(" main_Scale_5_in_2\n") 836 file.write(" ) [instance: 5, cache: 1];\n") 837 file.write(" // \n") 838 file.write(" // node AutoCamera[4]: x = 273, y = 264, inputs = 9, label = AutoCamera\n") 839 file.write(" // input[2]: defaulting = 0, visible = 1, type = 8, value = [1 -1 1]\n") 840 file.write(" // input[3]: defaulting = 1, visible = 1, type = 5, value = 500.0\n") 841 file.write(" // input[5]: defaulting = 0, visible = 0, type = 5, value = .75\n") 842 file.write(" // input[6]: defaulting = 0, visible = 0, type = 8, value = [-1 1 0 ]\n") 843 file.write(" // input[7]: defaulting = 0, visible = 0, type = 3, value = 0\n") 844 file.write(" // input[8]: defaulting = 0, visible = 0, type = 5, value = 30.0\n") 845 file.write(" // input[9]: defaulting = 0, visible = 1, type = 32, value = \"black\"\n") 846 file.write(" // page group: ColourScene\n") 847 file.write(" //\n") 848 file.write("main_AutoCamera_4_out_1 = \n") 849 file.write(" AutoCamera(\n") 850 file.write(" main_Scale_5_out_1,\n") 851 file.write(" main_AutoCamera_4_in_2,\n") 852 file.write(" main_AutoCamera_4_in_3,\n") 853 file.write(" main_AutoCamera_4_in_4,\n") 854 file.write(" main_AutoCamera_4_in_5,\n") 855 file.write(" main_AutoCamera_4_in_6,\n") 856 file.write(" main_AutoCamera_4_in_7,\n") 857 file.write(" main_AutoCamera_4_in_8,\n") 858 file.write(" main_AutoCamera_4_in_9\n") 859 file.write(" ) [instance: 4, cache: 1];\n") 860 file.write(" // \n") 861 file.write(" // node AutoAxes[4]: x = 175, y = 379, inputs = 19, label = AutoAxes\n") 862 file.write(" // input[3]: defaulting = 0, visible = 1, type = 16777248, value = %s\n" % labels) 863 file.write(" // input[4]: defaulting = 0, visible = 0, type = 1, value = 30\n") 864 file.write(" // input[5]: defaulting = 0, visible = 1, type = 16777224, value = %s\n" % corners) 865 file.write(" // input[6]: defaulting = 0, visible = 1, type = 3, value = 1\n") 866 file.write(" // input[7]: defaulting = 1, visible = 0, type = 3, value = 1\n") 867 file.write(" // input[9]: defaulting = 0, visible = 1, type = 3, value = 1\n") 868 file.write(" // input[10]: defaulting = 0, visible = 1, type = 16777224, value = {[0.05 0.05 0.05] [0.3 0.3 0.3] [1 1 1] [1 1 0]}\n") 869 file.write(" // input[11]: defaulting = 0, visible = 1, type = 16777248, value = {\"background\" \"grid\" \"labels\" \"ticks\"}\n") 870 file.write(" // input[12]: defaulting = 1, visible = 0, type = 5, value = 0.4\n") 871 file.write(" // input[13]: defaulting = 0, visible = 0, type = 32, value = \"area\"\n") 872 file.write(" // input[14]: defaulting = 0, visible = 1, type = 16777221, value = %s\n" % tick_locations[0]) 873 file.write(" // input[15]: defaulting = 0, visible = 1, type = 16777221, value = %s\n" % tick_locations[1]) 874 file.write(" // input[16]: defaulting = 0, visible = 1, type = 16777221, value = %s\n" % tick_locations[2]) 875 file.write(" // input[17]: defaulting = 0, visible = 1, type = 16777248, value = %s\n" % tick_values[0]) 876 file.write(" // input[18]: defaulting = 0, visible = 1, type = 16777248, value = %s\n" % tick_values[1]) 877 file.write(" // input[19]: defaulting = 0, visible = 1, type = 16777248, value = %s\n" % tick_values[2]) 878 file.write(" // page group: ColourScene\n") 879 file.write(" //\n") 880 file.write("main_AutoAxes_4_out_1 = \n") 881 file.write(" AutoAxes(\n") 882 file.write(" main_Scale_5_out_1,\n") 883 file.write(" main_AutoCamera_4_out_1,\n") 884 file.write(" main_AutoAxes_4_in_3,\n") 885 file.write(" main_AutoAxes_4_in_4,\n") 886 file.write(" main_AutoAxes_4_in_5,\n") 887 file.write(" main_AutoAxes_4_in_6,\n") 888 file.write(" main_AutoAxes_4_in_7,\n") 889 file.write(" main_AutoAxes_4_in_8,\n") 890 file.write(" main_AutoAxes_4_in_9,\n") 891 file.write(" main_AutoAxes_4_in_10,\n") 892 file.write(" main_AutoAxes_4_in_11,\n") 893 file.write(" main_AutoAxes_4_in_12,\n") 894 file.write(" main_AutoAxes_4_in_13,\n") 895 file.write(" main_AutoAxes_4_in_14,\n") 896 file.write(" main_AutoAxes_4_in_15,\n") 897 file.write(" main_AutoAxes_4_in_16,\n") 898 file.write(" main_AutoAxes_4_in_17,\n") 899 file.write(" main_AutoAxes_4_in_18,\n") 900 file.write(" main_AutoAxes_4_in_19\n") 901 file.write(" ) [instance: 4, cache: 1];\n") 902 file.write(" // \n") 903 file.write(" // node Selector[1]: x = 245, y = 66, inputs = 7, label = Selector\n") 904 file.write(" // input[1]: defaulting = 0, visible = 0, type = 32, value = \"Selector_1\"\n") 905 file.write(" // input[2]: defaulting = 0, visible = 0, type = 32, value = \"Colour\" \n") 906 file.write(" // input[3]: defaulting = 0, visible = 0, type = 29, value = 1 \n") 907 file.write(" // input[4]: defaulting = 1, visible = 1, type = 16777248, value = { \"Colour\" \"Grey\" }\n") 908 file.write(" // input[5]: defaulting = 1, visible = 0, type = 16777245, value = { 1 2 }\n") 909 file.write(" // output[1]: visible = 1, type = 29, value = 1 \n") 910 file.write(" // output[2]: visible = 1, type = 32, value = \"Colour\" \n") 911 file.write(" // page group: Image\n") 912 file.write(" //\n") 913 file.write(" // \n") 914 file.write(" // node Transmitter[6]: x = 299, y = 487, inputs = 1, label = ColourImage\n") 915 file.write(" // page group: ColourScene\n") 916 file.write(" //\n") 917 file.write("ColourImage = main_AutoAxes_4_out_1;\n") 918 file.write(" // \n") 919 file.write(" // node Receiver[5]: x = 76, y = 190, inputs = 1, label = ColourImage\n") 920 file.write(" // page group: Image\n") 921 file.write(" //\n") 922 file.write("main_Receiver_5_out_1[cache: 0] = ColourImage;\n") 923 file.write(" // \n") 924 file.write(" // node Transmitter[5]: x = 305, y = 489, inputs = 1, label = GreyImage\n") 925 file.write(" // page group: GreyScene\n") 926 file.write(" //\n") 927 file.write("GreyImage = main_AutoAxes_2_out_1;\n") 928 file.write(" // \n") 929 file.write(" // node Receiver[6]: x = 199, y = 190, inputs = 1, label = GreyImage\n") 930 file.write(" // page group: Image\n") 931 file.write(" //\n") 932 file.write("main_Receiver_6_out_1[cache: 0] = GreyImage;\n") 933 file.write(" // \n") 934 file.write(" // node Switch[1]: x = 177, y = 293, inputs = 3, label = Switch\n") 935 file.write(" // page group: Image\n") 936 file.write(" //\n") 937 file.write("main_Switch_1_out_1 = \n") 938 file.write(" Switch(\n") 939 file.write(" main_Selector_1_out_1,\n") 940 file.write(" main_Receiver_5_out_1,\n") 941 file.write(" main_Receiver_6_out_1\n") 942 file.write(" ) [instance: 1, cache: 1];\n") 943 file.write(" // \n") 944 file.write(" // node Switch[14]: x = 325, y = 293, inputs = 3, label = Switch\n") 945 file.write(" // input[2]: defaulting = 0, visible = 1, type = 67108863, value = \"black\"\n") 946 file.write(" // input[3]: defaulting = 0, visible = 1, type = 67108863, value = \"white\"\n") 947 file.write(" // page group: Image\n") 948 file.write(" //\n") 949 file.write("main_Switch_14_out_1 = \n") 950 file.write(" Switch(\n") 951 file.write(" main_Selector_1_out_1,\n") 952 file.write(" main_Switch_14_in_2,\n") 953 file.write(" main_Switch_14_in_3\n") 954 file.write(" ) [instance: 14, cache: 1];\n") 955 file.write(" // \n") 956 file.write(" // node Image[3]: x = 252, y = 424, inputs = 49, label = Image\n") 957 file.write(" // input[1]: defaulting = 0, visible = 0, type = 67108863, value = \"Image_3\"\n") 958 file.write(" // input[4]: defaulting = 0, visible = 0, type = 1, value = 1\n") 959 file.write(" // input[5]: defaulting = 0, visible = 0, type = 8, value = %s\n" % image_array1) 960 file.write(" // input[6]: defaulting = 0, visible = 0, type = 8, value = %s\n" % image_array2) 961 file.write(" // input[7]: defaulting = 0, visible = 0, type = 5, value = %s\n" % image_val) 962 file.write(" // input[8]: defaulting = 0, visible = 0, type = 1, value = 1376\n") 963 file.write(" // input[9]: defaulting = 0, visible = 0, type = 5, value = 0.678\n") 964 file.write(" // input[10]: defaulting = 0, visible = 0, type = 8, value = [-0.109685 0.243133 0.963772]\n") 965 file.write(" // input[11]: defaulting = 1, visible = 0, type = 5, value = 30.9877\n") 966 file.write(" // input[12]: defaulting = 0, visible = 0, type = 1, value = 0\n") 967 file.write(" // input[14]: defaulting = 0, visible = 0, type = 1, value = 1\n") 968 file.write(" // input[15]: defaulting = 0, visible = 0, type = 32, value = \"none\"\n") 969 file.write(" // input[16]: defaulting = 0, visible = 0, type = 32, value = \"none\"\n") 970 file.write(" // input[17]: defaulting = 1, visible = 0, type = 1, value = 1\n") 971 file.write(" // input[18]: defaulting = 1, visible = 0, type = 1, value = 1\n") 972 file.write(" // input[19]: defaulting = 0, visible = 0, type = 1, value = 0\n") 973 file.write(" // input[22]: defaulting = 1, visible = 1, type = 32, value = \"black\"\n") 974 file.write(" // input[25]: defaulting = 0, visible = 0, type = 32, value = \"iso\"\n") 975 file.write(" // input[26]: defaulting = 0, visible = 0, type = 32, value = \"tiff\"\n") 976 file.write(" // input[29]: defaulting = 0, visible = 0, type = 3, value = 0\n") 977 file.write(" // input[30]: defaulting = 1, visible = 0, type = 16777248, value = %s\n" % labels) 978 file.write(" // input[32]: defaulting = 1, visible = 0, type = 16777224, value = %s\n" % corners) 979 file.write(" // input[33]: defaulting = 0, visible = 0, type = 3, value = 1\n") 980 file.write(" // input[34]: defaulting = 0, visible = 0, type = 3, value = 0\n") 981 file.write(" // input[36]: defaulting = 0, visible = 0, type = 3, value = 1\n") 982 file.write(" // input[41]: defaulting = 0, visible = 0, type = 32, value = \"rotate\"\n") 983 file.write(" // input[42]: defaulting = 0, visible = 0, type = 32, value = \"Surface\"\n") 984 file.write(" // page group: Image\n") 985 file.write(" // title: value = Surface\n") 986 file.write(" // depth: value = 24\n") 987 file.write(" // window: position = (0.0000,0.0400), size = 0.9929x0.9276\n") 988 file.write(" // internal caching: 1\n") 989 file.write(" //\n") 990 file.write("main_Image_3_out_1,\n") 991 file.write("main_Image_3_out_2,\n") 992 file.write("main_Image_3_out_3 = \n") 993 file.write(" Image(\n") 994 file.write(" main_Image_3_in_1,\n") 995 file.write(" main_Switch_1_out_1,\n") 996 file.write(" main_Image_3_in_3,\n") 997 file.write(" main_Image_3_in_4,\n") 998 file.write(" main_Image_3_in_5,\n") 999 file.write(" main_Image_3_in_6,\n") 1000 file.write(" main_Image_3_in_7,\n") 1001 file.write(" main_Image_3_in_8,\n") 1002 file.write(" main_Image_3_in_9,\n") 1003 file.write(" main_Image_3_in_10,\n") 1004 file.write(" main_Image_3_in_11,\n") 1005 file.write(" main_Image_3_in_12,\n") 1006 file.write(" main_Image_3_in_13,\n") 1007 file.write(" main_Image_3_in_14,\n") 1008 file.write(" main_Image_3_in_15,\n") 1009 file.write(" main_Image_3_in_16,\n") 1010 file.write(" main_Image_3_in_17,\n") 1011 file.write(" main_Image_3_in_18,\n") 1012 file.write(" main_Image_3_in_19,\n") 1013 file.write(" main_Image_3_in_20,\n") 1014 file.write(" main_Image_3_in_21,\n") 1015 file.write(" main_Switch_14_out_1,\n") 1016 file.write(" main_Image_3_in_23,\n") 1017 file.write(" main_Image_3_in_24,\n") 1018 file.write(" main_Image_3_in_25,\n") 1019 file.write(" main_Image_3_in_26,\n") 1020 file.write(" main_Image_3_in_27,\n") 1021 file.write(" main_Image_3_in_28,\n") 1022 file.write(" main_Image_3_in_29,\n") 1023 file.write(" main_Image_3_in_30,\n") 1024 file.write(" main_Image_3_in_31,\n") 1025 file.write(" main_Image_3_in_32,\n") 1026 file.write(" main_Image_3_in_33,\n") 1027 file.write(" main_Image_3_in_34,\n") 1028 file.write(" main_Image_3_in_35,\n") 1029 file.write(" main_Image_3_in_36,\n") 1030 file.write(" main_Image_3_in_37,\n") 1031 file.write(" main_Image_3_in_38,\n") 1032 file.write(" main_Image_3_in_39,\n") 1033 file.write(" main_Image_3_in_40,\n") 1034 file.write(" main_Image_3_in_41,\n") 1035 file.write(" main_Image_3_in_42,\n") 1036 file.write(" main_Image_3_in_43,\n") 1037 file.write(" main_Image_3_in_44,\n") 1038 file.write(" main_Image_3_in_45,\n") 1039 file.write(" main_Image_3_in_46,\n") 1040 file.write(" main_Image_3_in_47,\n") 1041 file.write(" main_Image_3_in_48,\n") 1042 file.write(" main_Image_3_in_49\n") 1043 file.write(" ) [instance: 3, cache: 1];\n") 1044 file.write("// network: end of macro body\n") 1045 file.write("CacheScene(main_Image_3_in_1, main_Image_3_out_1, main_Image_3_out_2);\n") 1046 file.write("}\n") 1047 1048 # Include the sphere. 1049 if num_points > 0: 1050 file.write("\n") 1051 file.write("main_Import_4_in_1 = \"%s.general\";\n" % point_file) 1052 file.write("main_Import_4_in_2 = NULL;\n") 1053 file.write("main_Import_4_in_3 = NULL;\n") 1054 file.write("main_Import_4_in_4 = NULL;\n") 1055 file.write("main_Import_4_in_5 = NULL;\n") 1056 file.write("main_Import_4_in_6 = NULL;\n") 1057 file.write("main_Import_4_out_1 = NULL;\n") 1058 file.write("main_Glyph_2_in_2 = \"sphere\";\n") 1059 file.write("main_Glyph_2_in_3 = NULL;\n") 1060 file.write("main_Glyph_2_in_4 = %s;\n" % sphere_size) 1061 file.write("main_Glyph_2_in_5 = 0.0;\n") 1062 file.write("main_Glyph_2_in_6 = NULL;\n") 1063 file.write("main_Glyph_2_in_7 = NULL;\n") 1064 file.write("main_Glyph_2_out_1 = NULL;\n") 1065 file.write("main_Color_10_in_2 = [0 0 0];\n") 1066 file.write("main_Color_10_in_3 = 1.0;\n") 1067 file.write("main_Color_10_in_4 = NULL;\n") 1068 file.write("main_Color_10_in_5 = NULL;\n") 1069 file.write("main_Color_10_out_1 = NULL;\n") 1070 file.write("main_Transmitter_1_out_1 = NULL;\n") 1071 file.write("main_Receiver_2_out_1 = NULL;\n") 1072 1073 # Common code. 1074 file.write("\n") 1075 file.write("main_Import_3_in_1 = \"%s.general\";\n" % file_prefix) 1076 file.write("main_Import_3_in_2 = NULL;\n") 1077 file.write("main_Import_3_in_3 = NULL;\n") 1078 file.write("main_Import_3_in_4 = NULL;\n") 1079 file.write("main_Import_3_in_5 = NULL;\n") 1080 file.write("main_Import_3_in_6 = NULL;\n") 1081 file.write("main_Import_3_out_1 = NULL;\n") 1082 file.write("main_Isosurface_5_in_2 = 500.0;\n") 1083 file.write("main_Isosurface_5_in_3 = NULL;\n") 1084 file.write("main_Isosurface_5_in_4 = NULL;\n") 1085 file.write("main_Isosurface_5_in_5 = NULL;\n") 1086 file.write("main_Isosurface_5_in_6 = NULL;\n") 1087 file.write("main_Isosurface_5_out_1 = NULL;\n") 1088 file.write("main_Transmitter_7_out_1 = NULL;\n") 1089 file.write("main_Receiver_14_out_1 = NULL;\n") 1090 file.write("main_Color_6_in_2 = [0 0 0];\n") 1091 file.write("main_Color_6_in_3 = 0.2;\n") 1092 file.write("main_Color_6_in_4 = NULL;\n") 1093 file.write("main_Color_6_in_5 = NULL;\n") 1094 file.write("main_Color_6_out_1 = NULL;\n") 1095 file.write("main_Isosurface_6_in_2 = 100.0;\n") 1096 file.write("main_Isosurface_6_in_3 = NULL;\n") 1097 file.write("main_Isosurface_6_in_4 = NULL;\n") 1098 file.write("main_Isosurface_6_in_5 = NULL;\n") 1099 file.write("main_Isosurface_6_in_6 = NULL;\n") 1100 file.write("main_Isosurface_6_out_1 = NULL;\n") 1101 file.write("main_Transmitter_8_out_1 = NULL;\n") 1102 file.write("main_Receiver_13_out_1 = NULL;\n") 1103 file.write("main_Color_7_in_2 = [0.2 0.2 0.2];\n") 1104 file.write("main_Color_7_in_3 = 0.4;\n") 1105 file.write("main_Color_7_in_4 = NULL;\n") 1106 file.write("main_Color_7_in_5 = NULL;\n") 1107 file.write("main_Color_7_out_1 = NULL;\n") 1108 file.write("main_Collect_5_out_1 = NULL;\n") 1109 file.write("main_Isosurface_7_in_2 = 20.0;\n") 1110 file.write("main_Isosurface_7_in_3 = NULL;\n") 1111 file.write("main_Isosurface_7_in_4 = NULL;\n") 1112 file.write("main_Isosurface_7_in_5 = NULL;\n") 1113 file.write("main_Isosurface_7_in_6 = NULL;\n") 1114 file.write("main_Isosurface_7_out_1 = NULL;\n") 1115 file.write("main_Transmitter_9_out_1 = NULL;\n") 1116 file.write("main_Receiver_12_out_1 = NULL;\n") 1117 file.write("main_Color_8_in_2 = [0.5 0.5 0.5];\n") 1118 file.write("main_Color_8_in_3 = 0.5;\n") 1119 file.write("main_Color_8_in_4 = NULL;\n") 1120 file.write("main_Color_8_in_5 = NULL;\n") 1121 file.write("main_Color_8_out_1 = NULL;\n") 1122 file.write("main_Isosurface_8_in_2 = 7.0;\n") 1123 file.write("main_Isosurface_8_in_3 = NULL;\n") 1124 file.write("main_Isosurface_8_in_4 = NULL;\n") 1125 file.write("main_Isosurface_8_in_5 = NULL;\n") 1126 file.write("main_Isosurface_8_in_6 = NULL;\n") 1127 file.write("main_Isosurface_8_out_1 = NULL;\n") 1128 file.write("main_Transmitter_10_out_1 = NULL;\n") 1129 file.write("main_Receiver_11_out_1 = NULL;\n") 1130 file.write("main_Color_9_in_2 = \"white\";\n") 1131 file.write("main_Color_9_in_3 = 0.7;\n") 1132 file.write("main_Color_9_in_4 = NULL;\n") 1133 file.write("main_Color_9_in_5 = NULL;\n") 1134 file.write("main_Color_9_out_1 = NULL;\n") 1135 file.write("main_Collect_6_out_1 = NULL;\n") 1136 file.write("main_Collect_7_out_1 = NULL;\n") 1137 1138 # Include the sphere. 1139 if num_points > 0: 1140 file.write("\n") 1141 file.write("main_Collect_8_out_1 = NULL;\n") 1142 1143 # Common code. 1144 file.write("\n") 1145 file.write("main_Transmitter_4_out_1 = NULL;\n") 1146 file.write("main_Receiver_3_out_1 = NULL;\n") 1147 file.write("main_Scale_3_in_2 = [1 1 1];\n") 1148 file.write("main_Scale_3_out_1 = NULL;\n") 1149 file.write("main_AutoCamera_2_in_2 = [1 -1 1];\n") 1150 file.write("main_AutoCamera_2_in_3 = NULL;\n") 1151 file.write("main_AutoCamera_2_in_4 = 640;\n") 1152 file.write("main_AutoCamera_2_in_5 = .75;\n") 1153 file.write("main_AutoCamera_2_in_6 = [-1 1 0 ];\n") 1154 file.write("main_AutoCamera_2_in_7 = 0;\n") 1155 file.write("main_AutoCamera_2_in_8 = 30.0;\n") 1156 file.write("main_AutoCamera_2_in_9 = \"white\";\n") 1157 file.write("main_AutoCamera_2_out_1 = NULL;\n") 1158 file.write("main_AutoAxes_2_in_3 = %s;\n" % labels) 1159 file.write("main_AutoAxes_2_in_4 = 30;\n") 1160 file.write("main_AutoAxes_2_in_5 = %s;\n" % corners) 1161 file.write("main_AutoAxes_2_in_6 = 1;\n") 1162 file.write("main_AutoAxes_2_in_7 = NULL;\n") 1163 file.write("main_AutoAxes_2_in_8 = NULL;\n") 1164 file.write("main_AutoAxes_2_in_9 = 1;\n") 1165 file.write("main_AutoAxes_2_in_10 = {[1 1 1] [0.1 0.1 0.1] [0 0 0] [0 0 0]};\n") 1166 file.write("main_AutoAxes_2_in_11 = {\"background\" \"grid\" \"labels\" \"ticks\"};\n") 1167 file.write("main_AutoAxes_2_in_12 = NULL;\n") 1168 file.write("main_AutoAxes_2_in_13 = \"area\";\n") 1169 file.write("main_AutoAxes_2_in_14 = %s;\n" % tick_locations[0]) 1170 file.write("main_AutoAxes_2_in_15 = %s;\n" % tick_locations[1]) 1171 file.write("main_AutoAxes_2_in_16 = %s;\n" % tick_locations[2]) 1172 file.write("main_AutoAxes_2_in_17 = %s;\n" % tick_values[0]) 1173 file.write("main_AutoAxes_2_in_18 = %s;\n" % tick_values[1]) 1174 file.write("main_AutoAxes_2_in_19 = %s;\n" % tick_values[2]) 1175 file.write("main_AutoAxes_2_out_1 = NULL;\n") 1176 1177 # Include the sphere. 1178 if num_points > 0: 1179 file.write("\n") 1180 file.write("main_Color_11_in_2 = [1 0 0];\n") 1181 file.write("main_Color_11_in_3 = 1.0;\n") 1182 file.write("main_Color_11_in_4 = NULL;\n") 1183 file.write("main_Color_11_in_5 = NULL;\n") 1184 file.write("main_Color_11_out_1 = NULL;\n") 1185 file.write("main_Transmitter_2_out_1 = NULL;\n") 1186 file.write("main_Receiver_1_out_1 = NULL;\n") 1187 1188 # Common code. 1189 file.write("\n") 1190 file.write("main_Receiver_10_out_1 = NULL;\n") 1191 file.write("main_Color_12_in_2 = [0 0 0.2];\n") 1192 file.write("main_Color_12_in_3 = 0.3;\n") 1193 file.write("main_Color_12_in_4 = NULL;\n") 1194 file.write("main_Color_12_in_5 = NULL;\n") 1195 file.write("main_Color_12_out_1 = NULL;\n") 1196 file.write("main_Receiver_9_out_1 = NULL;\n") 1197 file.write("main_Color_13_in_2 = \"blue\";\n") 1198 file.write("main_Color_13_in_3 = 0.3;\n") 1199 file.write("main_Color_13_in_4 = NULL;\n") 1200 file.write("main_Color_13_in_5 = NULL;\n") 1201 file.write("main_Color_13_out_1 = NULL;\n") 1202 file.write("main_Collect_9_out_1 = NULL;\n") 1203 file.write("main_Receiver_8_out_1 = NULL;\n") 1204 file.write("main_Color_14_in_2 = [0.5 0.5 1];\n") 1205 file.write("main_Color_14_in_3 = 0.2;\n") 1206 file.write("main_Color_14_in_4 = NULL;\n") 1207 file.write("main_Color_14_in_5 = NULL;\n") 1208 file.write("main_Color_14_out_1 = NULL;\n") 1209 file.write("main_Receiver_7_out_1 = NULL;\n") 1210 file.write("main_Color_15_in_2 = \"white\";\n") 1211 file.write("main_Color_15_in_3 = 0.55;\n") 1212 file.write("main_Color_15_in_4 = NULL;\n") 1213 file.write("main_Color_15_in_5 = NULL;\n") 1214 file.write("main_Color_15_out_1 = NULL;\n") 1215 file.write("main_Collect_10_out_1 = NULL;\n") 1216 file.write("main_Collect_11_out_1 = NULL;\n") 1217 1218 # Include the sphere. 1219 if num_points > 0: 1220 file.write("\n") 1221 file.write("main_Collect_12_out_1 = NULL;\n") 1222 1223 # Common code. 1224 file.write("\n") 1225 file.write("main_Transmitter_3_out_1 = NULL;\n") 1226 file.write("main_Receiver_4_out_1 = NULL;\n") 1227 file.write("main_Scale_5_in_2 = [1 1 1];\n") 1228 file.write("main_Scale_5_out_1 = NULL;\n") 1229 file.write("main_AutoCamera_4_in_2 = [1 -1 1];\n") 1230 file.write("main_AutoCamera_4_in_3 = NULL;\n") 1231 file.write("main_AutoCamera_4_in_4 = NULL;\n") 1232 file.write("main_AutoCamera_4_in_5 = .75;\n") 1233 file.write("main_AutoCamera_4_in_6 = [-1 1 0 ];\n") 1234 file.write("main_AutoCamera_4_in_7 = 0;\n") 1235 file.write("main_AutoCamera_4_in_8 = 30.0;\n") 1236 file.write("main_AutoCamera_4_in_9 = \"black\";\n") 1237 file.write("main_AutoCamera_4_out_1 = NULL;\n") 1238 file.write("main_AutoAxes_4_in_3 = %s;\n" % labels) 1239 file.write("main_AutoAxes_4_in_4 = 30;\n") 1240 file.write("main_AutoAxes_4_in_5 = %s;\n" % corners) 1241 file.write("main_AutoAxes_4_in_6 = 1;\n") 1242 file.write("main_AutoAxes_4_in_7 = NULL;\n") 1243 file.write("main_AutoAxes_4_in_8 = NULL;\n") 1244 file.write("main_AutoAxes_4_in_9 = 1;\n") 1245 file.write("main_AutoAxes_4_in_10 = {[0.05 0.05 0.05] [0.3 0.3 0.3] [1 1 1] [1 1 0]};\n") 1246 file.write("main_AutoAxes_4_in_11 = {\"background\" \"grid\" \"labels\" \"ticks\"};\n") 1247 file.write("main_AutoAxes_4_in_12 = NULL;\n") 1248 file.write("main_AutoAxes_4_in_13 = \"area\";\n") 1249 file.write("main_AutoAxes_4_in_14 = %s;\n" % tick_locations[0]) 1250 file.write("main_AutoAxes_4_in_15 = %s;\n" % tick_locations[1]) 1251 file.write("main_AutoAxes_4_in_16 = %s;\n" % tick_locations[2]) 1252 file.write("main_AutoAxes_4_in_17 = %s;\n" % tick_values[0]) 1253 file.write("main_AutoAxes_4_in_18 = %s;\n" % tick_values[1]) 1254 file.write("main_AutoAxes_4_in_19 = %s;\n" % tick_values[2]) 1255 file.write("main_AutoAxes_4_out_1 = NULL;\n") 1256 file.write("main_Selector_1_in_1 = \"Selector_1\";\n") 1257 file.write("main_Selector_1_in_2 = \"Colour\" ;\n") 1258 file.write("main_Selector_1_in_3 = 1 ;\n") 1259 file.write("main_Selector_1_in_4 = NULL;\n") 1260 file.write("main_Selector_1_in_5 = NULL;\n") 1261 file.write("main_Selector_1_in_6 = NULL;\n") 1262 file.write("main_Selector_1_in_7 = NULL;\n") 1263 file.write("main_Selector_1_out_1 = 1 ;\n") 1264 file.write("main_Transmitter_6_out_1 = NULL;\n") 1265 file.write("main_Receiver_5_out_1 = NULL;\n") 1266 file.write("main_Transmitter_5_out_1 = NULL;\n") 1267 file.write("main_Receiver_6_out_1 = NULL;\n") 1268 file.write("main_Switch_1_out_1 = NULL;\n") 1269 file.write("main_Switch_14_in_2 = \"black\";\n") 1270 file.write("main_Switch_14_in_3 = \"white\";\n") 1271 file.write("main_Switch_14_out_1 = NULL;\n") 1272 file.write("macro Image(\n") 1273 file.write(" id,\n") 1274 file.write(" object,\n") 1275 file.write(" where,\n") 1276 file.write(" useVector,\n") 1277 file.write(" to,\n") 1278 file.write(" from,\n") 1279 file.write(" width,\n") 1280 file.write(" resolution,\n") 1281 file.write(" aspect,\n") 1282 file.write(" up,\n") 1283 file.write(" viewAngle,\n") 1284 file.write(" perspective,\n") 1285 file.write(" options,\n") 1286 file.write(" buttonState = 1,\n") 1287 file.write(" buttonUpApprox = \"none\",\n") 1288 file.write(" buttonDownApprox = \"none\",\n") 1289 file.write(" buttonUpDensity = 1,\n") 1290 file.write(" buttonDownDensity = 1,\n") 1291 file.write(" renderMode = 0,\n") 1292 file.write(" defaultCamera,\n") 1293 file.write(" reset,\n") 1294 file.write(" backgroundColor,\n") 1295 file.write(" throttle,\n") 1296 file.write(" RECenable = 0,\n") 1297 file.write(" RECfile,\n") 1298 file.write(" RECformat,\n") 1299 file.write(" RECresolution,\n") 1300 file.write(" RECaspect,\n") 1301 file.write(" AAenable = 0,\n") 1302 file.write(" AAlabels,\n") 1303 file.write(" AAticks,\n") 1304 file.write(" AAcorners,\n") 1305 file.write(" AAframe,\n") 1306 file.write(" AAadjust,\n") 1307 file.write(" AAcursor,\n") 1308 file.write(" AAgrid,\n") 1309 file.write(" AAcolors,\n") 1310 file.write(" AAannotation,\n") 1311 file.write(" AAlabelscale,\n") 1312 file.write(" AAfont,\n") 1313 file.write(" interactionMode,\n") 1314 file.write(" title,\n") 1315 file.write(" AAxTickLocs,\n") 1316 file.write(" AAyTickLocs,\n") 1317 file.write(" AAzTickLocs,\n") 1318 file.write(" AAxTickLabels,\n") 1319 file.write(" AAyTickLabels,\n") 1320 file.write(" AAzTickLabels,\n") 1321 file.write(" webOptions) -> (\n") 1322 file.write(" object,\n") 1323 file.write(" camera,\n") 1324 file.write(" where)\n") 1325 file.write("{\n") 1326 file.write(" ImageMessage(\n") 1327 file.write(" id,\n") 1328 file.write(" backgroundColor,\n") 1329 file.write(" throttle,\n") 1330 file.write(" RECenable,\n") 1331 file.write(" RECfile,\n") 1332 file.write(" RECformat,\n") 1333 file.write(" RECresolution,\n") 1334 file.write(" RECaspect,\n") 1335 file.write(" AAenable,\n") 1336 file.write(" AAlabels,\n") 1337 file.write(" AAticks,\n") 1338 file.write(" AAcorners,\n") 1339 file.write(" AAframe,\n") 1340 file.write(" AAadjust,\n") 1341 file.write(" AAcursor,\n") 1342 file.write(" AAgrid,\n") 1343 file.write(" AAcolors,\n") 1344 file.write(" AAannotation,\n") 1345 file.write(" AAlabelscale,\n") 1346 file.write(" AAfont,\n") 1347 file.write(" AAxTickLocs,\n") 1348 file.write(" AAyTickLocs,\n") 1349 file.write(" AAzTickLocs,\n") 1350 file.write(" AAxTickLabels,\n") 1351 file.write(" AAyTickLabels,\n") 1352 file.write(" AAzTickLabels,\n") 1353 file.write(" interactionMode,\n") 1354 file.write(" title,\n") 1355 file.write(" renderMode,\n") 1356 file.write(" buttonUpApprox,\n") 1357 file.write(" buttonDownApprox,\n") 1358 file.write(" buttonUpDensity,\n") 1359 file.write(" buttonDownDensity) [instance: 1, cache: 1];\n") 1360 file.write(" autoCamera =\n") 1361 file.write(" AutoCamera(\n") 1362 file.write(" object,\n") 1363 file.write(" \"front\",\n") 1364 file.write(" object,\n") 1365 file.write(" resolution,\n") 1366 file.write(" aspect,\n") 1367 file.write(" [0,1,0],\n") 1368 file.write(" perspective,\n") 1369 file.write(" viewAngle,\n") 1370 file.write(" backgroundColor) [instance: 1, cache: 1];\n") 1371 file.write(" realCamera =\n") 1372 file.write(" Camera(\n") 1373 file.write(" to,\n") 1374 file.write(" from,\n") 1375 file.write(" width,\n") 1376 file.write(" resolution,\n") 1377 file.write(" aspect,\n") 1378 file.write(" up,\n") 1379 file.write(" perspective,\n") 1380 file.write(" viewAngle,\n") 1381 file.write(" backgroundColor) [instance: 1, cache: 1];\n") 1382 file.write(" coloredDefaultCamera = \n") 1383 file.write(" UpdateCamera(defaultCamera,\n") 1384 file.write(" background=backgroundColor) [instance: 1, cache: 1];\n") 1385 file.write(" nullDefaultCamera =\n") 1386 file.write(" Inquire(defaultCamera,\n") 1387 file.write(" \"is null + 1\") [instance: 1, cache: 1];\n") 1388 file.write(" resetCamera =\n") 1389 file.write(" Switch(\n") 1390 file.write(" nullDefaultCamera,\n") 1391 file.write(" coloredDefaultCamera,\n") 1392 file.write(" autoCamera) [instance: 1, cache: 1];\n") 1393 file.write(" resetNull = \n") 1394 file.write(" Inquire(\n") 1395 file.write(" reset,\n") 1396 file.write(" \"is null + 1\") [instance: 2, cache: 1];\n") 1397 file.write(" reset =\n") 1398 file.write(" Switch(\n") 1399 file.write(" resetNull,\n") 1400 file.write(" reset,\n") 1401 file.write(" 0) [instance: 2, cache: 1];\n") 1402 file.write(" whichCamera =\n") 1403 file.write(" Compute(\n") 1404 file.write(" \"($0 != 0 || $1 == 0) ? 1 : 2\",\n") 1405 file.write(" reset,\n") 1406 file.write(" useVector) [instance: 1, cache: 1];\n") 1407 file.write(" camera = Switch(\n") 1408 file.write(" whichCamera,\n") 1409 file.write(" resetCamera,\n") 1410 file.write(" realCamera) [instance: 3, cache: 1];\n") 1411 file.write(" AAobject =\n") 1412 file.write(" AutoAxes(\n") 1413 file.write(" object,\n") 1414 file.write(" camera,\n") 1415 file.write(" AAlabels,\n") 1416 file.write(" AAticks,\n") 1417 file.write(" AAcorners,\n") 1418 file.write(" AAframe,\n") 1419 file.write(" AAadjust,\n") 1420 file.write(" AAcursor,\n") 1421 file.write(" AAgrid,\n") 1422 file.write(" AAcolors,\n") 1423 file.write(" AAannotation,\n") 1424 file.write(" AAlabelscale,\n") 1425 file.write(" AAfont,\n") 1426 file.write(" AAxTickLocs,\n") 1427 file.write(" AAyTickLocs,\n") 1428 file.write(" AAzTickLocs,\n") 1429 file.write(" AAxTickLabels,\n") 1430 file.write(" AAyTickLabels,\n") 1431 file.write(" AAzTickLabels) [instance: 1, cache: 1];\n") 1432 file.write(" switchAAenable = Compute(\"$0+1\",\n") 1433 file.write(" AAenable) [instance: 2, cache: 1];\n") 1434 file.write(" object = Switch(\n") 1435 file.write(" switchAAenable,\n") 1436 file.write(" object,\n") 1437 file.write(" AAobject) [instance:4, cache: 1];\n") 1438 file.write(" SWapproximation_options =\n") 1439 file.write(" Switch(\n") 1440 file.write(" buttonState,\n") 1441 file.write(" buttonUpApprox,\n") 1442 file.write(" buttonDownApprox) [instance: 5, cache: 1];\n") 1443 file.write(" SWdensity_options =\n") 1444 file.write(" Switch(\n") 1445 file.write(" buttonState,\n") 1446 file.write(" buttonUpDensity,\n") 1447 file.write(" buttonDownDensity) [instance: 6, cache: 1];\n") 1448 file.write(" HWapproximation_options =\n") 1449 file.write(" Format(\n") 1450 file.write(" \"%s,%s\",\n") 1451 file.write(" buttonDownApprox,\n") 1452 file.write(" buttonUpApprox) [instance: 1, cache: 1];\n") 1453 file.write(" HWdensity_options =\n") 1454 file.write(" Format(\n") 1455 file.write(" \"%d,%d\",\n") 1456 file.write(" buttonDownDensity,\n") 1457 file.write(" buttonUpDensity) [instance: 2, cache: 1];\n") 1458 file.write(" switchRenderMode = Compute(\n") 1459 file.write(" \"$0+1\",\n") 1460 file.write(" renderMode) [instance: 3, cache: 1];\n") 1461 file.write(" approximation_options = Switch(\n") 1462 file.write(" switchRenderMode,\n") 1463 file.write(" SWapproximation_options,\n") 1464 file.write(" HWapproximation_options) [instance: 7, cache: 1];\n") 1465 file.write(" density_options = Switch(\n") 1466 file.write(" switchRenderMode,\n") 1467 file.write(" SWdensity_options,\n") 1468 file.write(" HWdensity_options) [instance: 8, cache: 1];\n") 1469 file.write(" renderModeString = Switch(\n") 1470 file.write(" switchRenderMode,\n") 1471 file.write(" \"software\",\n") 1472 file.write(" \"hardware\")[instance: 9, cache: 1];\n") 1473 file.write(" object_tag = Inquire(\n") 1474 file.write(" object,\n") 1475 file.write(" \"object tag\")[instance: 3, cache: 1];\n") 1476 file.write(" annoted_object =\n") 1477 file.write(" Options(\n") 1478 file.write(" object,\n") 1479 file.write(" \"send boxes\",\n") 1480 file.write(" 0,\n") 1481 file.write(" \"cache\",\n") 1482 file.write(" 1,\n") 1483 file.write(" \"object tag\",\n") 1484 file.write(" object_tag,\n") 1485 file.write(" \"ddcamera\",\n") 1486 file.write(" whichCamera,\n") 1487 file.write(" \"rendering approximation\",\n") 1488 file.write(" approximation_options,\n") 1489 file.write(" \"render every\",\n") 1490 file.write(" density_options,\n") 1491 file.write(" \"button state\",\n") 1492 file.write(" buttonState,\n") 1493 file.write(" \"rendering mode\",\n") 1494 file.write(" renderModeString) [instance: 1, cache: 1];\n") 1495 file.write(" RECresNull =\n") 1496 file.write(" Inquire(\n") 1497 file.write(" RECresolution,\n") 1498 file.write(" \"is null + 1\") [instance: 4, cache: 1];\n") 1499 file.write(" ImageResolution =\n") 1500 file.write(" Inquire(\n") 1501 file.write(" camera,\n") 1502 file.write(" \"camera resolution\") [instance: 5, cache: 1];\n") 1503 file.write(" RECresolution =\n") 1504 file.write(" Switch(\n") 1505 file.write(" RECresNull,\n") 1506 file.write(" RECresolution,\n") 1507 file.write(" ImageResolution) [instance: 10, cache: 1];\n") 1508 file.write(" RECaspectNull =\n") 1509 file.write(" Inquire(\n") 1510 file.write(" RECaspect,\n") 1511 file.write(" \"is null + 1\") [instance: 6, cache: 1];\n") 1512 file.write(" ImageAspect =\n") 1513 file.write(" Inquire(\n") 1514 file.write(" camera,\n") 1515 file.write(" \"camera aspect\") [instance: 7, cache: 1];\n") 1516 file.write(" RECaspect =\n") 1517 file.write(" Switch(\n") 1518 file.write(" RECaspectNull,\n") 1519 file.write(" RECaspect,\n") 1520 file.write(" ImageAspect) [instance: 11, cache: 1];\n") 1521 file.write(" switchRECenable = Compute(\n") 1522 file.write(" \"$0 == 0 ? 1 : (($2 == $3) && ($4 == $5)) ? ($1 == 1 ? 2 : 3) : 4\",\n") 1523 file.write(" RECenable,\n") 1524 file.write(" switchRenderMode,\n") 1525 file.write(" RECresolution,\n") 1526 file.write(" ImageResolution,\n") 1527 file.write(" RECaspect,\n") 1528 file.write(" ImageAspect) [instance: 4, cache: 1];\n") 1529 file.write(" NoRECobject, RECNoRerenderObject, RECNoRerHW, RECRerenderObject = Route(switchRECenable, annoted_object);\n") 1530 file.write(" Display(\n") 1531 file.write(" NoRECobject,\n") 1532 file.write(" camera,\n") 1533 file.write(" where,\n") 1534 file.write(" throttle) [instance: 1, cache: 1];\n") 1535 file.write(" image =\n") 1536 file.write(" Render(\n") 1537 file.write(" RECNoRerenderObject,\n") 1538 file.write(" camera) [instance: 1, cache: 1];\n") 1539 file.write(" Display(\n") 1540 file.write(" image,\n") 1541 file.write(" NULL,\n") 1542 file.write(" where,\n") 1543 file.write(" throttle) [instance: 2, cache: 1];\n") 1544 file.write(" WriteImage(\n") 1545 file.write(" image,\n") 1546 file.write(" RECfile,\n") 1547 file.write(" RECformat) [instance: 1, cache: 1];\n") 1548 file.write(" rec_where = Display(\n") 1549 file.write(" RECNoRerHW,\n") 1550 file.write(" camera,\n") 1551 file.write(" where,\n") 1552 file.write(" throttle) [instance: 1, cache: 0];\n") 1553 file.write(" rec_image = ReadImageWindow(\n") 1554 file.write(" rec_where) [instance: 1, cache: 1];\n") 1555 file.write(" WriteImage(\n") 1556 file.write(" rec_image,\n") 1557 file.write(" RECfile,\n") 1558 file.write(" RECformat) [instance: 1, cache: 1];\n") 1559 file.write(" RECupdateCamera =\n") 1560 file.write(" UpdateCamera(\n") 1561 file.write(" camera,\n") 1562 file.write(" resolution=RECresolution,\n") 1563 file.write(" aspect=RECaspect) [instance: 2, cache: 1];\n") 1564 file.write(" Display(\n") 1565 file.write(" RECRerenderObject,\n") 1566 file.write(" camera,\n") 1567 file.write(" where,\n") 1568 file.write(" throttle) [instance: 1, cache: 1];\n") 1569 file.write(" RECRerenderObject =\n") 1570 file.write(" ScaleScreen(\n") 1571 file.write(" RECRerenderObject,\n") 1572 file.write(" NULL,\n") 1573 file.write(" RECresolution,\n") 1574 file.write(" camera) [instance: 1, cache: 1];\n") 1575 file.write(" image =\n") 1576 file.write(" Render(\n") 1577 file.write(" RECRerenderObject,\n") 1578 file.write(" RECupdateCamera) [instance: 2, cache: 1];\n") 1579 file.write(" WriteImage(\n") 1580 file.write(" image,\n") 1581 file.write(" RECfile,\n") 1582 file.write(" RECformat) [instance: 2, cache: 1];\n") 1583 file.write("}\n") 1584 file.write("main_Image_3_in_1 = \"Image_3\";\n") 1585 file.write("main_Image_3_in_3 = \"X24,,Surface\";\n") 1586 file.write("main_Image_3_in_4 = 1;\n") 1587 file.write("main_Image_3_in_5 = %s;\n" % image_array1) 1588 file.write("main_Image_3_in_6 = %s;\n" % image_array2) 1589 file.write("main_Image_3_in_7 = %s;\n" % image_val) 1590 file.write("main_Image_3_in_8 = 1376;\n") 1591 file.write("main_Image_3_in_9 = 0.678;\n") 1592 file.write("main_Image_3_in_10 = [-0.109685 0.243133 0.963772];\n") 1593 file.write("main_Image_3_in_11 = NULL;\n") 1594 file.write("main_Image_3_in_12 = 0;\n") 1595 file.write("main_Image_3_in_13 = NULL;\n") 1596 file.write("main_Image_3_in_14 = 1;\n") 1597 file.write("main_Image_3_in_15 = \"none\";\n") 1598 file.write("main_Image_3_in_16 = \"none\";\n") 1599 file.write("main_Image_3_in_17 = NULL;\n") 1600 file.write("main_Image_3_in_18 = NULL;\n") 1601 file.write("main_Image_3_in_19 = 0;\n") 1602 file.write("main_Image_3_in_20 = NULL;\n") 1603 file.write("main_Image_3_in_21 = NULL;\n") 1604 file.write("main_Image_3_in_23 = NULL;\n") 1605 file.write("main_Image_3_in_25 = \"iso\";\n") 1606 file.write("main_Image_3_in_26 = \"tiff\";\n") 1607 file.write("main_Image_3_in_27 = NULL;\n") 1608 file.write("main_Image_3_in_28 = NULL;\n") 1609 file.write("main_Image_3_in_29 = 0;\n") 1610 file.write("main_Image_3_in_30 = NULL;\n") 1611 file.write("main_Image_3_in_31 = NULL;\n") 1612 file.write("main_Image_3_in_32 = NULL;\n") 1613 file.write("main_Image_3_in_33 = 1;\n") 1614 file.write("main_Image_3_in_34 = 0;\n") 1615 file.write("main_Image_3_in_35 = NULL;\n") 1616 file.write("main_Image_3_in_36 = 1;\n") 1617 file.write("main_Image_3_in_37 = NULL;\n") 1618 file.write("main_Image_3_in_38 = NULL;\n") 1619 file.write("main_Image_3_in_39 = NULL;\n") 1620 file.write("main_Image_3_in_40 = NULL;\n") 1621 file.write("main_Image_3_in_41 = \"rotate\";\n") 1622 file.write("main_Image_3_in_42 = \"Surface\";\n") 1623 file.write("main_Image_3_in_43 = NULL;\n") 1624 file.write("main_Image_3_in_44 = NULL;\n") 1625 file.write("main_Image_3_in_45 = NULL;\n") 1626 file.write("main_Image_3_in_46 = NULL;\n") 1627 file.write("main_Image_3_in_47 = NULL;\n") 1628 file.write("main_Image_3_in_48 = NULL;\n") 1629 file.write("main_Image_3_in_49 = NULL;\n") 1630 file.write("Executive(\"product version 4 3 2\");\n") 1631 file.write("$sync\n") 1632 file.write("main();\n") 1633 1634 # Close the file. 1635 file.close()
1636