lavavu-osmesa 1.9.9__cp313-cp313-manylinux_2_28_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. lavavu/LavaVuPython.py +561 -0
  2. lavavu/_LavaVuPython.cpython-313-x86_64-linux-gnu.so +0 -0
  3. lavavu/__init__.py +15 -0
  4. lavavu/__main__.py +12 -0
  5. lavavu/amalgamate.py +15 -0
  6. lavavu/aserver.py +359 -0
  7. lavavu/control.py +1731 -0
  8. lavavu/convert.py +888 -0
  9. lavavu/dict.json +2528 -0
  10. lavavu/font.bin +0 -0
  11. lavavu/html/LavaVu-amalgamated.css +282 -0
  12. lavavu/html/OK-min.js +99 -0
  13. lavavu/html/baseviewer.js +307 -0
  14. lavavu/html/control.css +104 -0
  15. lavavu/html/control.js +340 -0
  16. lavavu/html/dat-gui-light-theme.css +68 -0
  17. lavavu/html/dat.gui.min.js +2 -0
  18. lavavu/html/draw.js +2259 -0
  19. lavavu/html/drawbox.js +1039 -0
  20. lavavu/html/emscripten-template.js +184 -0
  21. lavavu/html/emscripten.css +92 -0
  22. lavavu/html/favicon.ico +0 -0
  23. lavavu/html/gl-matrix-min.js +47 -0
  24. lavavu/html/gui.css +25 -0
  25. lavavu/html/menu.js +615 -0
  26. lavavu/html/server.js +226 -0
  27. lavavu/html/stats.min.js +5 -0
  28. lavavu/html/styles.css +58 -0
  29. lavavu/html/webview-template.html +43 -0
  30. lavavu/html/webview.html +43 -0
  31. lavavu/lavavu.py +6200 -0
  32. lavavu/osmesa/LavaVuPython.py +561 -0
  33. lavavu/osmesa/_LavaVuPython.cpython-313-x86_64-linux-gnu.so +0 -0
  34. lavavu/osmesa/__init__.py +0 -0
  35. lavavu/points.py +191 -0
  36. lavavu/server.py +343 -0
  37. lavavu/shaders/default.frag +14 -0
  38. lavavu/shaders/default.vert +17 -0
  39. lavavu/shaders/fontShader.frag +20 -0
  40. lavavu/shaders/fontShader.vert +18 -0
  41. lavavu/shaders/lineShader.frag +39 -0
  42. lavavu/shaders/lineShader.vert +26 -0
  43. lavavu/shaders/pointShader.frag +127 -0
  44. lavavu/shaders/pointShader.vert +53 -0
  45. lavavu/shaders/triShader.frag +153 -0
  46. lavavu/shaders/triShader.vert +49 -0
  47. lavavu/shaders/volumeShader.frag +400 -0
  48. lavavu/shaders/volumeShader.vert +5 -0
  49. lavavu/tracers.py +207 -0
  50. lavavu/vutils.py +211 -0
  51. lavavu_osmesa-1.9.9.dist-info/METADATA +323 -0
  52. lavavu_osmesa-1.9.9.dist-info/RECORD +65 -0
  53. lavavu_osmesa-1.9.9.dist-info/WHEEL +5 -0
  54. lavavu_osmesa-1.9.9.dist-info/entry_points.txt +2 -0
  55. lavavu_osmesa-1.9.9.dist-info/licenses/LICENSE.md +179 -0
  56. lavavu_osmesa-1.9.9.dist-info/top_level.txt +1 -0
  57. lavavu_osmesa.libs/libLLVM-17-51492e70.so +0 -0
  58. lavavu_osmesa.libs/libOSMesa-f6a8f160.so.8.0.0 +0 -0
  59. lavavu_osmesa.libs/libdrm-b0291a67.so.2.4.0 +0 -0
  60. lavavu_osmesa.libs/libffi-3a37023a.so.6.0.2 +0 -0
  61. lavavu_osmesa.libs/libglapi-520b284c.so.0.0.0 +0 -0
  62. lavavu_osmesa.libs/libpcre2-8-516f4c9d.so.0.7.1 +0 -0
  63. lavavu_osmesa.libs/libselinux-d0805dcb.so.1 +0 -0
  64. lavavu_osmesa.libs/libtinfo-3a2cb85b.so.6.1 +0 -0
  65. lavavu_osmesa.libs/libzstd-76b78bac.so.1.4.4 +0 -0
lavavu/dict.json ADDED
@@ -0,0 +1,2528 @@
1
+ {
2
+ "renderers": {
3
+ "default": [
4
+ {
5
+ "labels" : "labels"
6
+ },
7
+ {
8
+ "points" : "points",
9
+ "sortedpoints" : "points",
10
+ "particles" : "points",
11
+ "pointspheres" : "spheres",
12
+ "pointcubes" : "cuboids"
13
+ },
14
+ {
15
+ "quads" : "quads",
16
+ "grid" : "quads"
17
+ },
18
+ {
19
+ "triangles" : "sortedtriangles",
20
+ "sortedtriangles" : "sortedtriangles",
21
+ "basictriangles" : "basictriangles",
22
+ "mesh" : "basictriangles",
23
+ "surface" : "basictriangles"
24
+ },
25
+ {
26
+ "vectors" : "vectors",
27
+ "arrows" : "vectors"
28
+ },
29
+ {
30
+ "tracers" : "tracers",
31
+ "streamlines" : "tracers"
32
+ },
33
+ {
34
+ "lines" : "lines",
35
+ "links" : "lines",
36
+ "sortedlines" : "sortedlines",
37
+ "simplelines" : "simplelines"
38
+ },
39
+ {
40
+ "shapes" : "shapes",
41
+ "spheres" : "spheres",
42
+ "cuboids" : "cuboids",
43
+ "cubes" : "cuboids"
44
+ },
45
+ {
46
+ "volume" : "volume",
47
+ "volumes" : "volume"
48
+ },
49
+ {
50
+ "screen" : "screen",
51
+ "fullscreen" : "screen"
52
+ }
53
+ ],
54
+ "target": "all",
55
+ "type": "object",
56
+ "desc": "Holds list of available renderer types that can be created and their aliases, grouped in order of base types (label/point/grid/tri/vector/tracer/line/shape/volume/screen) read only.",
57
+ "strict": true,
58
+ "redraw": 0,
59
+ "control": [
60
+ false
61
+ ]
62
+ },
63
+ "renderlist": {
64
+ "default": "",
65
+ "target": "all",
66
+ "type": "string",
67
+ "desc": "Sets a list of renderers to create and order they are displayed. This allows overriding the default renderer order, defined by the object order. For valid types see \"renderers\" property.",
68
+ "strict": true,
69
+ "redraw": 0,
70
+ "control": [
71
+ false
72
+ ]
73
+ },
74
+ "subrenderers": {
75
+ "default": "sortedtriangles points simplelines",
76
+ "target": "all",
77
+ "type": "string",
78
+ "desc": "List of renderers created for rendering primitives (points, lines, triangles) from more complex renderers (eg: vectors). Allows selection of different primitive rendering modes, globally or per object.",
79
+ "strict": true,
80
+ "redraw": 0,
81
+ "control": [
82
+ false
83
+ ]
84
+ },
85
+ "font": {
86
+ "default": "vector",
87
+ "target": "all",
88
+ "type": "string",
89
+ "desc": "Font typeface vector (thicker, better for larger text) or line (better for small labels)",
90
+ "strict": true,
91
+ "redraw": 0,
92
+ "control": [
93
+ true,
94
+ null,
95
+ [
96
+ "vector",
97
+ "line"
98
+ ]
99
+ ]
100
+ },
101
+ "fontscale": {
102
+ "default": 1.0,
103
+ "target": "all",
104
+ "type": "real",
105
+ "desc": "Font scaling, applied by multiplying with any existing calculated scaling.",
106
+ "strict": true,
107
+ "redraw": 0,
108
+ "control": [
109
+ true
110
+ ]
111
+ },
112
+ "fontsize": {
113
+ "default": 1.0,
114
+ "target": "all",
115
+ "type": "real",
116
+ "desc": "Font size, absolute scaling that overrides all automatic calculations of the font size",
117
+ "strict": true,
118
+ "redraw": 0,
119
+ "control": [
120
+ true
121
+ ]
122
+ },
123
+ "fontcolour": {
124
+ "default": [
125
+ 0,
126
+ 0,
127
+ 0,
128
+ 0
129
+ ],
130
+ "target": "all",
131
+ "type": "colour",
132
+ "desc": "Font colour RGB(A)",
133
+ "strict": true,
134
+ "redraw": 0,
135
+ "control": [
136
+ true
137
+ ]
138
+ },
139
+ "time": {
140
+ "default": 0.0,
141
+ "target": "timestep",
142
+ "type": "real",
143
+ "desc": "Time value for timestep",
144
+ "strict": true,
145
+ "redraw": 0,
146
+ "control": [
147
+ false
148
+ ]
149
+ },
150
+ "name": {
151
+ "default": "",
152
+ "target": "object",
153
+ "type": "string",
154
+ "desc": "Name of object",
155
+ "strict": true,
156
+ "redraw": 0,
157
+ "control": [
158
+ false
159
+ ]
160
+ },
161
+ "visible": {
162
+ "default": true,
163
+ "target": "object",
164
+ "type": "boolean",
165
+ "desc": "Set to false to hide object",
166
+ "strict": true,
167
+ "redraw": 1,
168
+ "control": [
169
+ true
170
+ ]
171
+ },
172
+ "inview": {
173
+ "default": true,
174
+ "target": "object",
175
+ "type": "boolean",
176
+ "desc": "Set to false to exclude object from bounding box calculation and the default camera view",
177
+ "strict": true,
178
+ "redraw": 1,
179
+ "control": [
180
+ true
181
+ ]
182
+ },
183
+ "fixed": {
184
+ "default": false,
185
+ "target": "object",
186
+ "type": "boolean",
187
+ "desc": "Set to true to make all data fixed, not time varying, for this object",
188
+ "strict": true,
189
+ "redraw": 1,
190
+ "control": [
191
+ false
192
+ ]
193
+ },
194
+ "renderer": {
195
+ "default": "",
196
+ "target": "object",
197
+ "type": "string",
198
+ "desc": "Create a custom renderer using label provided instead of using the default renderers, type of renderer created based on the \"geometry\" property",
199
+ "strict": true,
200
+ "redraw": 0,
201
+ "control": [
202
+ false
203
+ ]
204
+ },
205
+ "shaders": {
206
+ "default": [],
207
+ "target": "object",
208
+ "type": "object",
209
+ "desc": "Custom shaders for rendering object, either filenames or source strings, provide either [fragment], [vertex, fragment] or [geometry, vertex, fragment]",
210
+ "strict": true,
211
+ "redraw": 0,
212
+ "control": [
213
+ false
214
+ ]
215
+ },
216
+ "uniforms": {
217
+ "default": {},
218
+ "target": "object",
219
+ "type": "object",
220
+ "desc": "Custom shader uniforms for rendering objects, dict of uniform names/values, will be copied from property data",
221
+ "strict": true,
222
+ "redraw": 0,
223
+ "control": [
224
+ false
225
+ ]
226
+ },
227
+ "steprange": {
228
+ "default": true,
229
+ "target": "object",
230
+ "type": "boolean",
231
+ "desc": "Calculate dynamic range values per step rather than over full time range",
232
+ "strict": true,
233
+ "redraw": 2,
234
+ "control": [
235
+ true
236
+ ]
237
+ },
238
+ "lit": {
239
+ "default": true,
240
+ "target": "object",
241
+ "type": "boolean",
242
+ "desc": "Apply lighting to object",
243
+ "strict": true,
244
+ "redraw": 0,
245
+ "control": [
246
+ true
247
+ ]
248
+ },
249
+ "cullface": {
250
+ "default": false,
251
+ "target": "object",
252
+ "type": "boolean",
253
+ "desc": "Cull back facing polygons of object surfaces",
254
+ "strict": true,
255
+ "redraw": 0,
256
+ "control": [
257
+ true
258
+ ]
259
+ },
260
+ "wireframe": {
261
+ "default": false,
262
+ "target": "object",
263
+ "type": "boolean",
264
+ "desc": "Render object surfaces as wireframe",
265
+ "strict": true,
266
+ "redraw": 0,
267
+ "control": [
268
+ true
269
+ ]
270
+ },
271
+ "flat": {
272
+ "default": false,
273
+ "target": "object",
274
+ "type": "boolean",
275
+ "desc": "Renders surfaces as flat shaded, lines/vectors/tracers as 2d, faster but no 3d or lighting",
276
+ "strict": true,
277
+ "redraw": 0,
278
+ "control": [
279
+ true
280
+ ]
281
+ },
282
+ "depthtest": {
283
+ "default": true,
284
+ "target": "object",
285
+ "type": "boolean",
286
+ "desc": "Set to false to disable depth test when drawing object so always drawn regardless of 3d position",
287
+ "strict": true,
288
+ "redraw": 0,
289
+ "control": [
290
+ true
291
+ ]
292
+ },
293
+ "depthwrite": {
294
+ "default": true,
295
+ "target": "object",
296
+ "type": "boolean",
297
+ "desc": "Set to false to disable depth buffer write when drawing object, so other objects behind it will still be drawn and will appear in front if drawn after this object",
298
+ "strict": true,
299
+ "redraw": 0,
300
+ "control": [
301
+ true
302
+ ]
303
+ },
304
+ "dims": {
305
+ "default": [
306
+ 0,
307
+ 0,
308
+ 0
309
+ ],
310
+ "target": "object",
311
+ "type": "integer[3]",
312
+ "desc": "Width,Height,Depth override for geometry. Usually this data will be determined from the numpy array shape when loaded from python but setting this property overrides the shape, unless it doesn't match the data size. Note this property is the reverse of the numpy array shape (Depth,Height,Width) or (Height,Width).",
313
+ "strict": true,
314
+ "redraw": 0,
315
+ "control": [
316
+ false
317
+ ]
318
+ },
319
+ "shift": {
320
+ "default": 0.0,
321
+ "target": "object",
322
+ "type": "real",
323
+ "desc": "Apply a shift to object position by this amount multiplied by model size*10^-7, to fix depth fighting when visualising objects drawn at same depth",
324
+ "strict": true,
325
+ "redraw": 0,
326
+ "control": [
327
+ false
328
+ ]
329
+ },
330
+ "colour": {
331
+ "default": [
332
+ 0,
333
+ 0,
334
+ 0,
335
+ 255
336
+ ],
337
+ "target": "object",
338
+ "type": "colour",
339
+ "desc": "Object colour RGB(A)",
340
+ "strict": true,
341
+ "redraw": 2,
342
+ "control": [
343
+ true
344
+ ]
345
+ },
346
+ "colourmap": {
347
+ "default": "",
348
+ "target": "object",
349
+ "type": "string",
350
+ "desc": "name of the colourmap to use",
351
+ "strict": false,
352
+ "redraw": 2,
353
+ "control": [
354
+ true
355
+ ]
356
+ },
357
+ "opacitymap": {
358
+ "default": "",
359
+ "target": "object",
360
+ "type": "string",
361
+ "desc": "name of the opacity colourmap to use",
362
+ "strict": false,
363
+ "redraw": 2,
364
+ "control": [
365
+ true
366
+ ]
367
+ },
368
+ "opacity": {
369
+ "default": 1.0,
370
+ "target": "object",
371
+ "type": "real",
372
+ "desc": "Opacity of object where 0 is transparent and 1 is opaque",
373
+ "strict": true,
374
+ "redraw": 2,
375
+ "control": [
376
+ true,
377
+ [
378
+ 0.01,
379
+ 1.0,
380
+ 0.01
381
+ ]
382
+ ]
383
+ },
384
+ "brightness": {
385
+ "default": 0.0,
386
+ "target": "object",
387
+ "type": "real",
388
+ "desc": "Brightness of object from -1 (full dark) to 0 (default) to 1 (full light)",
389
+ "strict": true,
390
+ "redraw": 0,
391
+ "control": [
392
+ true,
393
+ [
394
+ -1.0,
395
+ 1.0,
396
+ 0.01
397
+ ]
398
+ ]
399
+ },
400
+ "contrast": {
401
+ "default": 1.0,
402
+ "target": "object",
403
+ "type": "real",
404
+ "desc": "Contrast of object from 0 (none, grey) to 2 (max)",
405
+ "strict": true,
406
+ "redraw": 0,
407
+ "control": [
408
+ true,
409
+ [
410
+ 0.0,
411
+ 2.0,
412
+ 0.01
413
+ ]
414
+ ]
415
+ },
416
+ "saturation": {
417
+ "default": 1.0,
418
+ "target": "object",
419
+ "type": "real",
420
+ "desc": "Saturation of object from 0 (greyscale) to 2 (fully saturated)",
421
+ "strict": true,
422
+ "redraw": 0,
423
+ "control": [
424
+ true,
425
+ [
426
+ 0.0,
427
+ 2.0,
428
+ 0.01
429
+ ]
430
+ ]
431
+ },
432
+ "ambient": {
433
+ "default": 0.4,
434
+ "target": "object",
435
+ "type": "real",
436
+ "desc": "Ambient lighting level (background constant light)",
437
+ "strict": true,
438
+ "redraw": 0,
439
+ "control": [
440
+ true,
441
+ [
442
+ 0.0,
443
+ 1.0,
444
+ 0.01
445
+ ]
446
+ ]
447
+ },
448
+ "diffuse": {
449
+ "default": 0.65,
450
+ "target": "object",
451
+ "type": "real",
452
+ "desc": "Diffuse lighting level (shading light/dark)",
453
+ "strict": true,
454
+ "redraw": 0,
455
+ "control": [
456
+ true,
457
+ [
458
+ 0.0,
459
+ 1.0,
460
+ 0.01
461
+ ]
462
+ ]
463
+ },
464
+ "specular": {
465
+ "default": 0.0,
466
+ "target": "object",
467
+ "type": "real",
468
+ "desc": "Specular highlight lighting level (spot highlights)",
469
+ "strict": true,
470
+ "redraw": 0,
471
+ "control": [
472
+ true,
473
+ [
474
+ 0.0,
475
+ 1.0,
476
+ 0.01
477
+ ]
478
+ ]
479
+ },
480
+ "shininess": {
481
+ "default": 0.5,
482
+ "target": "object",
483
+ "type": "real",
484
+ "desc": "Specular shininess factor, controls size of highlight",
485
+ "strict": true,
486
+ "redraw": 0,
487
+ "control": [
488
+ true,
489
+ [
490
+ 0.0,
491
+ 1.0,
492
+ 0.01
493
+ ]
494
+ ]
495
+ },
496
+ "light": {
497
+ "default": [
498
+ 1.0,
499
+ 1.0,
500
+ 1.0,
501
+ 0.0
502
+ ],
503
+ "target": "object",
504
+ "type": "real[4]",
505
+ "desc": "Light properties, colour Red,Green,Blue values and fourth component if provided is two-sided lighting flag, set to 1.0 to switch to single-sided lighting",
506
+ "strict": true,
507
+ "redraw": 0,
508
+ "control": [
509
+ true
510
+ ]
511
+ },
512
+ "lightpos": {
513
+ "default": [
514
+ 0.1,
515
+ -0.1,
516
+ 2.0,
517
+ 0.0
518
+ ],
519
+ "target": "object",
520
+ "type": "real[4]",
521
+ "desc": "Light position X Y Z. Default is relative to camera (light moves follows camera, rotating the scene changes the illuminated area). Fourth component, if provided, is scene light flag, set to 1.0 to switch to a position in the scene, regardless of camera/view position the same parts of the scene will be illuminated.",
522
+ "strict": true,
523
+ "redraw": 0,
524
+ "control": [
525
+ true
526
+ ]
527
+ },
528
+ "clip": {
529
+ "default": true,
530
+ "target": "object",
531
+ "type": "boolean",
532
+ "desc": "Allow object to be clipped",
533
+ "strict": true,
534
+ "redraw": 0,
535
+ "control": [
536
+ true
537
+ ]
538
+ },
539
+ "clipmap": {
540
+ "default": true,
541
+ "target": "object",
542
+ "type": "boolean",
543
+ "desc": "Clipping mapped to range normalised [0,1]",
544
+ "strict": true,
545
+ "redraw": 0,
546
+ "control": [
547
+ true
548
+ ]
549
+ },
550
+ "clipmin": {
551
+ "default": [
552
+ 0.0,
553
+ 0.0,
554
+ 0.0
555
+ ],
556
+ "target": "object",
557
+ "type": "real[3]",
558
+ "desc": "Object clipping minimum [x,y,z]",
559
+ "strict": true,
560
+ "redraw": 0,
561
+ "control": [
562
+ true,
563
+ [
564
+ 0.0,
565
+ 1.0,
566
+ 0.01
567
+ ]
568
+ ]
569
+ },
570
+ "clipmax": {
571
+ "default": [
572
+ 1.0,
573
+ 1.0,
574
+ 1.0
575
+ ],
576
+ "target": "object",
577
+ "type": "real[3]",
578
+ "desc": "Object clipping maximum [x,y,z]",
579
+ "strict": true,
580
+ "redraw": 0,
581
+ "control": [
582
+ true,
583
+ [
584
+ 0.0,
585
+ 1.0,
586
+ 0.01
587
+ ]
588
+ ]
589
+ },
590
+ "xmin": {
591
+ "default": 0.0,
592
+ "target": "object",
593
+ "type": "real",
594
+ "desc": "(legacy) Object clipping, minimum x",
595
+ "strict": true,
596
+ "redraw": 0,
597
+ "control": [
598
+ true,
599
+ [
600
+ 0.0,
601
+ 1.0,
602
+ 0.01
603
+ ]
604
+ ]
605
+ },
606
+ "ymin": {
607
+ "default": 0.0,
608
+ "target": "object",
609
+ "type": "real",
610
+ "desc": "(legacy) Object clipping, maximum y",
611
+ "strict": true,
612
+ "redraw": 0,
613
+ "control": [
614
+ true,
615
+ [
616
+ 0.0,
617
+ 1.0,
618
+ 0.01
619
+ ]
620
+ ]
621
+ },
622
+ "zmin": {
623
+ "default": 0.0,
624
+ "target": "object",
625
+ "type": "real",
626
+ "desc": "(legacy) Object clipping, minimum z",
627
+ "strict": true,
628
+ "redraw": 0,
629
+ "control": [
630
+ true,
631
+ [
632
+ 0.0,
633
+ 1.0,
634
+ 0.01
635
+ ]
636
+ ]
637
+ },
638
+ "xmax": {
639
+ "default": 1.0,
640
+ "target": "object",
641
+ "type": "real",
642
+ "desc": "(legacy) Object clipping, maximum x",
643
+ "strict": true,
644
+ "redraw": 0,
645
+ "control": [
646
+ true,
647
+ [
648
+ 0.0,
649
+ 1.0,
650
+ 0.01
651
+ ]
652
+ ]
653
+ },
654
+ "ymax": {
655
+ "default": 1.0,
656
+ "target": "object",
657
+ "type": "real",
658
+ "desc": "(legacy) Object clipping, maximum y",
659
+ "strict": true,
660
+ "redraw": 0,
661
+ "control": [
662
+ true,
663
+ [
664
+ 0.0,
665
+ 1.0,
666
+ 0.01
667
+ ]
668
+ ]
669
+ },
670
+ "zmax": {
671
+ "default": 1.0,
672
+ "target": "object",
673
+ "type": "real",
674
+ "desc": "(legacy) Object clipping, maximum z",
675
+ "strict": true,
676
+ "redraw": 0,
677
+ "control": [
678
+ true,
679
+ [
680
+ 0.0,
681
+ 1.0,
682
+ 0.01
683
+ ]
684
+ ]
685
+ },
686
+ "filters": {
687
+ "default": [],
688
+ "target": "object",
689
+ "type": "object",
690
+ "desc": "Filter list",
691
+ "strict": true,
692
+ "redraw": 1,
693
+ "control": [
694
+ false
695
+ ]
696
+ },
697
+ "glyphs": {
698
+ "default": 2,
699
+ "target": "object",
700
+ "type": "integer",
701
+ "desc": "Glyph quality 0=none, 1=low, higher=increasing triangulation detail (arrows/shapes etc)",
702
+ "strict": true,
703
+ "redraw": 2,
704
+ "control": [
705
+ true,
706
+ null,
707
+ {
708
+ "none": 0,
709
+ "verylow": 1,
710
+ "low": 2,
711
+ "medium": 3,
712
+ "high": 4,
713
+ "veryhigh": 5
714
+ }
715
+ ]
716
+ },
717
+ "scaling": {
718
+ "default": 1.0,
719
+ "target": "object",
720
+ "type": "real",
721
+ "desc": "Object scaling factor",
722
+ "strict": true,
723
+ "redraw": 1,
724
+ "control": [
725
+ true
726
+ ]
727
+ },
728
+ "texture": {
729
+ "default": "",
730
+ "target": "object",
731
+ "type": "string",
732
+ "desc": "Apply a texture, either external texture image file path to load or colourmap",
733
+ "strict": true,
734
+ "redraw": 0,
735
+ "control": [
736
+ true
737
+ ]
738
+ },
739
+ "fliptexture": {
740
+ "default": true,
741
+ "target": "object",
742
+ "type": "boolean",
743
+ "desc": "Flip texture image after loading, usually required",
744
+ "strict": true,
745
+ "redraw": 0,
746
+ "control": [
747
+ false
748
+ ]
749
+ },
750
+ "repeat": {
751
+ "default": false,
752
+ "target": "object",
753
+ "type": "boolean",
754
+ "desc": "Repeat texture image enabled, default is clamp to edges",
755
+ "strict": true,
756
+ "redraw": 0,
757
+ "control": [
758
+ false
759
+ ]
760
+ },
761
+ "texturefilter": {
762
+ "default": 2,
763
+ "target": "object",
764
+ "type": "integer",
765
+ "desc": "Type of texture filtering, 0=nearest, 1=linear, 2=mipmap (default)",
766
+ "strict": true,
767
+ "redraw": 0,
768
+ "control": [
769
+ false
770
+ ]
771
+ },
772
+ "colourby": {
773
+ "default": 0,
774
+ "target": "object",
775
+ "type": "string or integer",
776
+ "desc": "Index or label of data set to colour object by (requires colour map)",
777
+ "strict": false,
778
+ "redraw": 2,
779
+ "control": [
780
+ true
781
+ ]
782
+ },
783
+ "opacityby": {
784
+ "default": "",
785
+ "target": "object",
786
+ "type": "string or integer",
787
+ "desc": "Index or label of data set to apply transparency to object by (requires opacity map)",
788
+ "strict": false,
789
+ "redraw": 2,
790
+ "control": [
791
+ true
792
+ ]
793
+ },
794
+ "limit": {
795
+ "default": 0,
796
+ "target": "object,line",
797
+ "type": "real",
798
+ "desc": "Line length limit, can be used to skip drawing line segments that cross periodic boundary",
799
+ "strict": true,
800
+ "redraw": 0,
801
+ "control": [
802
+ true
803
+ ]
804
+ },
805
+ "link": {
806
+ "default": false,
807
+ "target": "object,line",
808
+ "type": "boolean",
809
+ "desc": "To chain line vertices into longer lines set to true",
810
+ "strict": true,
811
+ "redraw": 0,
812
+ "control": [
813
+ true
814
+ ]
815
+ },
816
+ "loop": {
817
+ "default": false,
818
+ "target": "object,line",
819
+ "type": "boolean",
820
+ "desc": "To join the start and end of linked lines set to true",
821
+ "strict": true,
822
+ "redraw": 0,
823
+ "control": [
824
+ true
825
+ ]
826
+ },
827
+ "scalelines": {
828
+ "default": 1.0,
829
+ "target": "object,line",
830
+ "type": "real",
831
+ "desc": "Line scaling multiplier, applies to all line objects",
832
+ "strict": true,
833
+ "redraw": 0,
834
+ "control": [
835
+ true
836
+ ]
837
+ },
838
+ "linewidth": {
839
+ "default": 1.0,
840
+ "target": "object,line",
841
+ "type": "real",
842
+ "desc": "Line width scaling",
843
+ "strict": true,
844
+ "redraw": 0,
845
+ "control": [
846
+ true
847
+ ]
848
+ },
849
+ "tubes": {
850
+ "default": false,
851
+ "target": "object,line",
852
+ "type": "boolean",
853
+ "desc": "Draw lines as 3D tubes",
854
+ "strict": true,
855
+ "redraw": 0,
856
+ "control": [
857
+ false
858
+ ]
859
+ },
860
+ "pointsize": {
861
+ "default": 1.0,
862
+ "target": "object,point",
863
+ "type": "real",
864
+ "desc": "Point size scaling",
865
+ "strict": true,
866
+ "redraw": 2,
867
+ "control": [
868
+ true,
869
+ [
870
+ 0.1,
871
+ 20.0,
872
+ 0.01
873
+ ]
874
+ ]
875
+ },
876
+ "pointtype": {
877
+ "default": 1,
878
+ "target": "object,point",
879
+ "type": "integer/string",
880
+ "desc": "Point type 0/blur, 1/smooth, 2/sphere, 3/shiny, 4/flat",
881
+ "strict": true,
882
+ "redraw": 2,
883
+ "control": [
884
+ true,
885
+ null,
886
+ {
887
+ "blur": 0,
888
+ "smooth": 1,
889
+ "sphere": 2,
890
+ "shiny": 3,
891
+ "flat": 4
892
+ }
893
+ ]
894
+ },
895
+ "scalepoints": {
896
+ "default": 1.0,
897
+ "target": "object,point",
898
+ "type": "real",
899
+ "desc": "Point scaling multiplier, applies to all points objects",
900
+ "strict": true,
901
+ "redraw": 0,
902
+ "control": [
903
+ true
904
+ ]
905
+ },
906
+ "sizeby": {
907
+ "default": "",
908
+ "target": "object,point",
909
+ "type": "string or integer",
910
+ "desc": "Index or label of data set to apply to point sizes",
911
+ "strict": false,
912
+ "redraw": 2,
913
+ "control": [
914
+ true
915
+ ]
916
+ },
917
+ "opaque": {
918
+ "default": false,
919
+ "target": "object,surface",
920
+ "type": "boolean",
921
+ "desc": "If opaque flag is set skips depth sorting step and allows individual surface properties to be applied",
922
+ "strict": true,
923
+ "redraw": 0,
924
+ "control": [
925
+ true
926
+ ]
927
+ },
928
+ "optimise": {
929
+ "default": true,
930
+ "target": "object,surface",
931
+ "type": "boolean",
932
+ "desc": "Disable this flag to skip the mesh optimisation step",
933
+ "strict": true,
934
+ "redraw": 0,
935
+ "control": [
936
+ false
937
+ ]
938
+ },
939
+ "vertexnormals": {
940
+ "default": true,
941
+ "target": "object,surface",
942
+ "type": "boolean",
943
+ "desc": "Disable this flag to skip calculating vertex normals",
944
+ "strict": true,
945
+ "redraw": 0,
946
+ "control": [
947
+ false
948
+ ]
949
+ },
950
+ "smoothangle": {
951
+ "default": 90,
952
+ "target": "object,surface",
953
+ "type": "int",
954
+ "desc": "Angle between surface normals (in degrees) below which normals will be smoothed. Reduce this to preserve hard edges.",
955
+ "strict": true,
956
+ "redraw": 0,
957
+ "control": [
958
+ false
959
+ ]
960
+ },
961
+ "flip": {
962
+ "default": false,
963
+ "target": "object,surface",
964
+ "type": "boolean",
965
+ "desc": "Set this flag to reverse the surface faces (currently implemented for grids only)",
966
+ "strict": true,
967
+ "redraw": 0,
968
+ "control": [
969
+ true
970
+ ]
971
+ },
972
+ "power": {
973
+ "default": 1.0,
974
+ "target": "object,volume",
975
+ "type": "real",
976
+ "desc": "Power used when applying transfer function, 1.0=linear mapping",
977
+ "strict": true,
978
+ "redraw": 0,
979
+ "control": [
980
+ true,
981
+ [
982
+ 0.0,
983
+ 3.0,
984
+ 0.01
985
+ ]
986
+ ]
987
+ },
988
+ "bloom": {
989
+ "default": 0.0,
990
+ "target": "object,volume",
991
+ "type": "real",
992
+ "desc": "Bloom effect, brightens colours, particularly around edges of transparent areas, by using a more additive blend equation. Setting this to ~0.5 will replicate the old (technically incorrect) volume shader blending for lavavu pre v1.5.",
993
+ "strict": true,
994
+ "redraw": 0,
995
+ "control": [
996
+ true,
997
+ [
998
+ 0.0,
999
+ 1.0,
1000
+ 0.01
1001
+ ]
1002
+ ]
1003
+ },
1004
+ "samples": {
1005
+ "default": 256,
1006
+ "target": "object,volume",
1007
+ "type": "integer",
1008
+ "desc": "Number of samples to take per ray cast, higher = better quality, but slower",
1009
+ "strict": true,
1010
+ "redraw": 0,
1011
+ "control": [
1012
+ true,
1013
+ [
1014
+ 16,
1015
+ 2048,
1016
+ 1
1017
+ ]
1018
+ ]
1019
+ },
1020
+ "density": {
1021
+ "default": 5.0,
1022
+ "target": "object,volume",
1023
+ "type": "real",
1024
+ "desc": "Density multiplier for volume data",
1025
+ "strict": true,
1026
+ "redraw": 0,
1027
+ "control": [
1028
+ true,
1029
+ [
1030
+ 0.0,
1031
+ 200.0,
1032
+ 1.0
1033
+ ]
1034
+ ]
1035
+ },
1036
+ "isovalue": {
1037
+ "default": 0.0,
1038
+ "target": "object,volume",
1039
+ "type": "real",
1040
+ "desc": "Isovalue for dynamic isosurface (normalised to [0,1] over actual data range)",
1041
+ "strict": true,
1042
+ "redraw": 0,
1043
+ "control": [
1044
+ true,
1045
+ [
1046
+ 0.0,
1047
+ 1.0,
1048
+ 0.01
1049
+ ]
1050
+ ]
1051
+ },
1052
+ "isovalues": {
1053
+ "default": [],
1054
+ "target": "object,volume",
1055
+ "type": "real[]",
1056
+ "desc": "Isovalues to extract from volume into mesh isosurface",
1057
+ "strict": true,
1058
+ "redraw": 0,
1059
+ "control": [
1060
+ false
1061
+ ]
1062
+ },
1063
+ "isoalpha": {
1064
+ "default": 1.0,
1065
+ "target": "object,volume",
1066
+ "type": "real",
1067
+ "desc": "Transparency value for isosurface",
1068
+ "strict": true,
1069
+ "redraw": 0,
1070
+ "control": [
1071
+ true,
1072
+ [
1073
+ 0.0,
1074
+ 1.0,
1075
+ 0.01
1076
+ ]
1077
+ ]
1078
+ },
1079
+ "isosmooth": {
1080
+ "default": 0.1,
1081
+ "target": "object,volume",
1082
+ "type": "real",
1083
+ "desc": "Isosurface smoothing factor for normal calculation",
1084
+ "strict": true,
1085
+ "redraw": 0,
1086
+ "control": [
1087
+ true,
1088
+ [
1089
+ 0.0,
1090
+ 4.0,
1091
+ 0.1
1092
+ ]
1093
+ ]
1094
+ },
1095
+ "isowalls": {
1096
+ "default": true,
1097
+ "target": "object,volume",
1098
+ "type": "boolean",
1099
+ "desc": "Connect isosurface enclosed area with walls",
1100
+ "strict": true,
1101
+ "redraw": 0,
1102
+ "control": [
1103
+ true
1104
+ ]
1105
+ },
1106
+ "tricubicfilter": {
1107
+ "default": false,
1108
+ "target": "object,volume",
1109
+ "type": "boolean",
1110
+ "desc": "Apply a tricubic filter for increased smoothness",
1111
+ "strict": true,
1112
+ "redraw": 0,
1113
+ "control": [
1114
+ true
1115
+ ]
1116
+ },
1117
+ "densityclip": {
1118
+ "default": [0.0, 1.0],
1119
+ "target": "object,volume",
1120
+ "type": "real[2]",
1121
+ "desc": "Density range [min,max] to map, values outside the range are discarded",
1122
+ "strict": true,
1123
+ "redraw": 0,
1124
+ "control": [
1125
+ true,
1126
+ [
1127
+ 0.0,
1128
+ 1.0,
1129
+ 0.01
1130
+ ]
1131
+ ]
1132
+ },
1133
+ "minclip": {
1134
+ "default": 0.0,
1135
+ "target": "object,volume",
1136
+ "type": "real",
1137
+ "desc": "(legacy) Minimum density value to map, lower discarded",
1138
+ "strict": true,
1139
+ "redraw": 0,
1140
+ "control": [
1141
+ true,
1142
+ [
1143
+ 0.0,
1144
+ 1.0,
1145
+ 0.01
1146
+ ]
1147
+ ]
1148
+ },
1149
+ "maxclip": {
1150
+ "default": 1.0,
1151
+ "target": "object,volume",
1152
+ "type": "real",
1153
+ "desc": "(legacy) Maximum density value to map, higher discarded",
1154
+ "strict": true,
1155
+ "redraw": 0,
1156
+ "control": [
1157
+ true,
1158
+ [
1159
+ 0.0,
1160
+ 1.0,
1161
+ 0.01
1162
+ ]
1163
+ ]
1164
+ },
1165
+ "compresstextures": {
1166
+ "default": false,
1167
+ "target": "object,volume",
1168
+ "type": "boolean",
1169
+ "desc": "Compress volume textures where possible",
1170
+ "strict": true,
1171
+ "redraw": 0,
1172
+ "control": [
1173
+ false
1174
+ ]
1175
+ },
1176
+ "texturesize": {
1177
+ "default": [
1178
+ 0,
1179
+ 0,
1180
+ 0
1181
+ ],
1182
+ "target": "object,volume",
1183
+ "type": "int[3]",
1184
+ "desc": "Volume texture size limit (for crop)",
1185
+ "strict": true,
1186
+ "redraw": 2,
1187
+ "control": [
1188
+ false
1189
+ ]
1190
+ },
1191
+ "textureoffset": {
1192
+ "default": [
1193
+ 0,
1194
+ 0,
1195
+ 0
1196
+ ],
1197
+ "target": "object,volume",
1198
+ "type": "int[3]",
1199
+ "desc": "Volume texture offset (for crop)",
1200
+ "strict": true,
1201
+ "redraw": 2,
1202
+ "control": [
1203
+ false
1204
+ ]
1205
+ },
1206
+ "scalemax": {
1207
+ "default": 0.0,
1208
+ "target": "object,vector",
1209
+ "type": "real",
1210
+ "desc": "Length scaling maximum, sets the range over which vectors will be scaled [0,scalemax]. Default automatically calculated based on data max",
1211
+ "strict": true,
1212
+ "redraw": 1,
1213
+ "control": [
1214
+ true
1215
+ ]
1216
+ },
1217
+ "arrowhead": {
1218
+ "default": 5.0,
1219
+ "target": "object,vector",
1220
+ "type": "real",
1221
+ "desc": "Arrow head size as a multiple of length or radius, if < 1.0 is multiple of length, if > 1.0 is multiple of radius",
1222
+ "strict": true,
1223
+ "redraw": 1,
1224
+ "control": [
1225
+ true
1226
+ ]
1227
+ },
1228
+ "scalevectors": {
1229
+ "default": 1.0,
1230
+ "target": "object,vector",
1231
+ "type": "real",
1232
+ "desc": "Vector scaling multiplier, applies to all vector objects",
1233
+ "strict": true,
1234
+ "redraw": 0,
1235
+ "control": [
1236
+ true
1237
+ ]
1238
+ },
1239
+ "thickness": {
1240
+ "default": 0.0,
1241
+ "target": "object,vector",
1242
+ "type": "real",
1243
+ "desc": "Arrow shaft thickness as fixed value (overrides \"radius\")",
1244
+ "strict": true,
1245
+ "redraw": 1,
1246
+ "control": [
1247
+ true
1248
+ ]
1249
+ },
1250
+ "length": {
1251
+ "default": 0.0,
1252
+ "target": "object,vector",
1253
+ "type": "real",
1254
+ "desc": "Arrow fixed length, default is to use vector magnitude",
1255
+ "strict": true,
1256
+ "redraw": 1,
1257
+ "control": [
1258
+ true
1259
+ ]
1260
+ },
1261
+ "normalise": {
1262
+ "default": 1.0,
1263
+ "target": "object,vector",
1264
+ "type": "real",
1265
+ "desc": "Normalisation factor to adjust between vector arrows scaled to their vector length or all arrows having a constant length. If 0.0 vectors are scaled to their vector length, if 1.0 vectors are all scaled to the constant \"length\" property (if property length=0.0, this is ignored).",
1266
+ "strict": true,
1267
+ "redraw": 1,
1268
+ "control": [
1269
+ true
1270
+ ]
1271
+ },
1272
+ "autoscale": {
1273
+ "default": true,
1274
+ "target": "object,vector",
1275
+ "type": "boolean",
1276
+ "desc": "Automatically scale vectors based on maximum magnitude",
1277
+ "strict": true,
1278
+ "redraw": 1,
1279
+ "control": [
1280
+ true
1281
+ ]
1282
+ },
1283
+ "radius": {
1284
+ "default": 0.02,
1285
+ "target": "object,vector",
1286
+ "type": "real",
1287
+ "desc": "When applied to Vector Arrows: Arrow shaft radius as ratio of vector length. When applied to shapes: radius of spheres.",
1288
+ "strict": true,
1289
+ "redraw": 1,
1290
+ "control": [
1291
+ true
1292
+ ]
1293
+ },
1294
+ "steps": {
1295
+ "default": 0,
1296
+ "target": "object,tracer",
1297
+ "type": "integer",
1298
+ "desc": "Number of time steps to trace particle path",
1299
+ "strict": true,
1300
+ "redraw": 1,
1301
+ "control": [
1302
+ true
1303
+ ]
1304
+ },
1305
+ "taper": {
1306
+ "default": true,
1307
+ "target": "object,tracer",
1308
+ "type": "boolean",
1309
+ "desc": "Taper width of tracer arrow up as we get closer to current timestep",
1310
+ "strict": true,
1311
+ "redraw": 1,
1312
+ "control": [
1313
+ true
1314
+ ]
1315
+ },
1316
+ "fade": {
1317
+ "default": false,
1318
+ "target": "object,tracer",
1319
+ "type": "boolean",
1320
+ "desc": "Fade opacity of tracer arrow in from transparent as we get closer to current timestep",
1321
+ "strict": true,
1322
+ "redraw": 1,
1323
+ "control": [
1324
+ true
1325
+ ]
1326
+ },
1327
+ "connect": {
1328
+ "default": true,
1329
+ "target": "object,tracer",
1330
+ "type": "boolean",
1331
+ "desc": "Set false to render tracers as points instead of connected lines",
1332
+ "strict": true,
1333
+ "redraw": 1,
1334
+ "control": [
1335
+ true
1336
+ ]
1337
+ },
1338
+ "scaletracers": {
1339
+ "default": 1.0,
1340
+ "target": "object,tracer",
1341
+ "type": "real",
1342
+ "desc": "Tracer scaling multiplier, applies to all tracer objects",
1343
+ "strict": true,
1344
+ "redraw": 0,
1345
+ "control": [
1346
+ true
1347
+ ]
1348
+ },
1349
+ "shapewidth": {
1350
+ "default": 1.0,
1351
+ "target": "object,shape",
1352
+ "type": "real",
1353
+ "desc": "Shape width scaling factor",
1354
+ "strict": true,
1355
+ "redraw": 0,
1356
+ "control": [
1357
+ true
1358
+ ]
1359
+ },
1360
+ "shapeheight": {
1361
+ "default": 1.0,
1362
+ "target": "object,shape",
1363
+ "type": "real",
1364
+ "desc": "Shape height scaling factor",
1365
+ "strict": true,
1366
+ "redraw": 0,
1367
+ "control": [
1368
+ true
1369
+ ]
1370
+ },
1371
+ "shapelength": {
1372
+ "default": 1.0,
1373
+ "target": "object,shape",
1374
+ "type": "real",
1375
+ "desc": "Shape length scaling factor",
1376
+ "strict": true,
1377
+ "redraw": 0,
1378
+ "control": [
1379
+ true
1380
+ ]
1381
+ },
1382
+ "shape": {
1383
+ "default": 0,
1384
+ "target": "object,shape",
1385
+ "type": "integer",
1386
+ "desc": "Shape type: 0=ellipsoid, 1=cuboid",
1387
+ "strict": true,
1388
+ "redraw": 0,
1389
+ "control": [
1390
+ true
1391
+ ]
1392
+ },
1393
+ "scaleshapes": {
1394
+ "default": 1.0,
1395
+ "target": "object,shape",
1396
+ "type": "real",
1397
+ "desc": "Shape scaling multiplier, applies to all shape objects",
1398
+ "strict": true,
1399
+ "redraw": 0,
1400
+ "control": [
1401
+ true
1402
+ ]
1403
+ },
1404
+ "widthby": {
1405
+ "default": "widths",
1406
+ "target": "object,shape",
1407
+ "type": "string or integer",
1408
+ "desc": "Index or label of data set to apply to shape widths",
1409
+ "strict": false,
1410
+ "redraw": 2,
1411
+ "control": [
1412
+ true
1413
+ ]
1414
+ },
1415
+ "heightby": {
1416
+ "default": "heights",
1417
+ "target": "object,shape",
1418
+ "type": "string or integer",
1419
+ "desc": "Index or label of data set to apply to shape heights",
1420
+ "strict": false,
1421
+ "redraw": 2,
1422
+ "control": [
1423
+ true
1424
+ ]
1425
+ },
1426
+ "lengthby": {
1427
+ "default": "lengths",
1428
+ "target": "object,shape",
1429
+ "type": "string or integer",
1430
+ "desc": "Index or label of data set to apply to shape lengths",
1431
+ "strict": false,
1432
+ "redraw": 2,
1433
+ "control": [
1434
+ true
1435
+ ]
1436
+ },
1437
+ "segments": {
1438
+ "default": 32,
1439
+ "target": "object,shape",
1440
+ "type": "integer",
1441
+ "desc": "Triangulation quality for spheres, number of segments to draw (minimum 4)",
1442
+ "strict": true,
1443
+ "redraw": 2,
1444
+ "control": [
1445
+ true
1446
+ ]
1447
+ },
1448
+ "rotation": {
1449
+ "default": [
1450
+ 0.0,
1451
+ 0.0,
1452
+ 0.0,
1453
+ 1.0
1454
+ ],
1455
+ "target": "object,shape",
1456
+ "type": "quaternion",
1457
+ "desc": "Shape rotation about Y axis, applies to all shape objects, [x,y,z,y] or [X,Y,Z]",
1458
+ "strict": true,
1459
+ "redraw": 0,
1460
+ "control": [
1461
+ true
1462
+ ]
1463
+ },
1464
+ "colourbar": {
1465
+ "default": false,
1466
+ "target": "colourbar",
1467
+ "type": "boolean",
1468
+ "desc": "Indicates object is a colourbar",
1469
+ "strict": true,
1470
+ "redraw": 0,
1471
+ "control": [
1472
+ false
1473
+ ]
1474
+ },
1475
+ "align": {
1476
+ "default": "bottom",
1477
+ "target": "colourbar",
1478
+ "type": "string",
1479
+ "desc": "Alignment of colour bar to screen edge, top/bottom/left/right",
1480
+ "strict": true,
1481
+ "redraw": 0,
1482
+ "control": [
1483
+ false
1484
+ ]
1485
+ },
1486
+ "size": {
1487
+ "default": [
1488
+ 0,
1489
+ 0
1490
+ ],
1491
+ "target": "colourbar",
1492
+ "type": "real[2]",
1493
+ "desc": "Dimensions of colour bar (length/breadth) in pixels or viewport size ratio",
1494
+ "strict": true,
1495
+ "redraw": 0,
1496
+ "control": [
1497
+ false
1498
+ ]
1499
+ },
1500
+ "ticks": {
1501
+ "default": 0,
1502
+ "target": "colourbar",
1503
+ "type": "integer",
1504
+ "desc": "Number of additional tick marks to draw besides start and end",
1505
+ "strict": true,
1506
+ "redraw": 0,
1507
+ "control": [
1508
+ false
1509
+ ]
1510
+ },
1511
+ "tickvalues": {
1512
+ "default": [],
1513
+ "target": "colourbar",
1514
+ "type": "real[]",
1515
+ "desc": "Values of intermediate tick marks",
1516
+ "strict": true,
1517
+ "redraw": 0,
1518
+ "control": [
1519
+ false
1520
+ ]
1521
+ },
1522
+ "printticks": {
1523
+ "default": true,
1524
+ "target": "colourbar",
1525
+ "type": "boolean",
1526
+ "desc": "Set to false to disable drawing of intermediate tick values",
1527
+ "strict": true,
1528
+ "redraw": 0,
1529
+ "control": [
1530
+ false
1531
+ ]
1532
+ },
1533
+ "format": {
1534
+ "default": "%.5g",
1535
+ "target": "colourbar",
1536
+ "type": "string",
1537
+ "desc": "Format specifier for label values, eg: %.3[f/e/g] standard, scientific, both",
1538
+ "strict": true,
1539
+ "redraw": 0,
1540
+ "control": [
1541
+ false
1542
+ ]
1543
+ },
1544
+ "scalevalue": {
1545
+ "default": 1.0,
1546
+ "target": "colourbar",
1547
+ "type": "real",
1548
+ "desc": "Multiplier to scale tick values",
1549
+ "strict": true,
1550
+ "redraw": 0,
1551
+ "control": [
1552
+ false
1553
+ ]
1554
+ },
1555
+ "outline": {
1556
+ "default": 1.0,
1557
+ "target": "colourbar",
1558
+ "type": "integer",
1559
+ "desc": "Outline width to draw around colour bar",
1560
+ "strict": true,
1561
+ "redraw": 0,
1562
+ "control": [
1563
+ false
1564
+ ]
1565
+ },
1566
+ "offset": {
1567
+ "default": 0,
1568
+ "target": "colourbar",
1569
+ "type": "real",
1570
+ "desc": "Margin to parallel edge in pixels or viewport size ratio",
1571
+ "strict": true,
1572
+ "redraw": 0,
1573
+ "control": [
1574
+ false
1575
+ ]
1576
+ },
1577
+ "position": {
1578
+ "default": 0,
1579
+ "target": "colourbar",
1580
+ "type": "real",
1581
+ "desc": "Margin to perpendicular edge in pixels or viewport size ratio, >0=towards left/bottom, 0=centre (horizontal only), <0=towards right/top",
1582
+ "strict": true,
1583
+ "redraw": 1,
1584
+ "control": [
1585
+ false
1586
+ ]
1587
+ },
1588
+ "binlabels": {
1589
+ "default": false,
1590
+ "target": "colourbar",
1591
+ "type": "boolean",
1592
+ "desc": "Set to true to label discrete bins rather than tick points",
1593
+ "strict": true,
1594
+ "redraw": 0,
1595
+ "control": [
1596
+ false
1597
+ ]
1598
+ },
1599
+ "logscale": {
1600
+ "default": false,
1601
+ "target": "colourmap",
1602
+ "type": "boolean",
1603
+ "desc": "Set to true to use log scales",
1604
+ "strict": true,
1605
+ "redraw": 2,
1606
+ "control": [
1607
+ true
1608
+ ]
1609
+ },
1610
+ "discrete": {
1611
+ "default": false,
1612
+ "target": "colourmap",
1613
+ "type": "boolean",
1614
+ "desc": "Set to true to apply colours as discrete values rather than gradient",
1615
+ "strict": true,
1616
+ "redraw": 2,
1617
+ "control": [
1618
+ true
1619
+ ]
1620
+ },
1621
+ "interpolate": {
1622
+ "default": true,
1623
+ "target": "colourmap",
1624
+ "type": "boolean",
1625
+ "desc": "Set to false to disable interpolation between colours, nearest colour will always be applied",
1626
+ "strict": true,
1627
+ "redraw": 2,
1628
+ "control": [
1629
+ true
1630
+ ]
1631
+ },
1632
+ "colours": {
1633
+ "default": [],
1634
+ "target": "colourmap",
1635
+ "type": "colours",
1636
+ "desc": "Colour list (or string), X11 colour names, rgb(a) colours or html hex colours",
1637
+ "strict": false,
1638
+ "redraw": 2,
1639
+ "control": [
1640
+ false
1641
+ ]
1642
+ },
1643
+ "range": {
1644
+ "default": [
1645
+ 0.0,
1646
+ 0.0
1647
+ ],
1648
+ "target": "colourmap",
1649
+ "type": "real[2]",
1650
+ "desc": "Fixed scale range, default is to automatically calculate range based on data min/max",
1651
+ "strict": true,
1652
+ "redraw": 2,
1653
+ "control": [
1654
+ true
1655
+ ]
1656
+ },
1657
+ "locked": {
1658
+ "default": false,
1659
+ "target": "colourmap",
1660
+ "type": "boolean",
1661
+ "desc": "Set to true to lock colourmap ranges to current values",
1662
+ "strict": true,
1663
+ "redraw": 2,
1664
+ "control": [
1665
+ true
1666
+ ]
1667
+ },
1668
+ "zoomstep": {
1669
+ "default": -1,
1670
+ "target": "view",
1671
+ "type": "integer",
1672
+ "desc": "When to apply camera auto-zoom to fit model to window, -1=never, 0=first timestep only, 1=every timestep",
1673
+ "strict": true,
1674
+ "redraw": 0,
1675
+ "control": [
1676
+ false
1677
+ ]
1678
+ },
1679
+ "margin": {
1680
+ "default": 0.025,
1681
+ "target": "view",
1682
+ "type": "real",
1683
+ "desc": "Margin in pixels (when >= 1) or ratio of viewport width (when < 1.0) around edges of model when to applying camera auto-zoom",
1684
+ "strict": true,
1685
+ "redraw": 0,
1686
+ "control": [
1687
+ false
1688
+ ]
1689
+ },
1690
+ "rotate": {
1691
+ "default": [
1692
+ 0.0,
1693
+ 0.0,
1694
+ 0.0,
1695
+ 1.0
1696
+ ],
1697
+ "target": "view",
1698
+ "type": "quaternion",
1699
+ "desc": "Camera rotation quaternion [x,y,z,w], if applied to an object rotates the object, can be quaternion or Euler angles [x,y,z] in this case",
1700
+ "strict": true,
1701
+ "redraw": 0,
1702
+ "control": [
1703
+ false
1704
+ ]
1705
+ },
1706
+ "xyzrotate": {
1707
+ "default": [
1708
+ 0.0,
1709
+ 0.0,
1710
+ 0.0
1711
+ ],
1712
+ "target": "view",
1713
+ "type": "real[3]",
1714
+ "desc": "Camera rotation as Euler angles [x,y,z] - output only",
1715
+ "strict": true,
1716
+ "redraw": 0,
1717
+ "control": [
1718
+ false
1719
+ ]
1720
+ },
1721
+ "translate": {
1722
+ "default": [
1723
+ 0.0,
1724
+ 0.0,
1725
+ 0.0
1726
+ ],
1727
+ "target": "view",
1728
+ "type": "real[3]",
1729
+ "desc": "Camera translation [x,y,z]",
1730
+ "strict": true,
1731
+ "redraw": 0,
1732
+ "control": [
1733
+ false
1734
+ ]
1735
+ },
1736
+ "focus": {
1737
+ "default": [
1738
+ 0.0,
1739
+ 0.0,
1740
+ 0.0
1741
+ ],
1742
+ "target": "view",
1743
+ "type": "real[3]",
1744
+ "desc": "Camera focal point [x,y,z]",
1745
+ "strict": true,
1746
+ "redraw": 0,
1747
+ "control": [
1748
+ false
1749
+ ]
1750
+ },
1751
+ "origin": {
1752
+ "default": [
1753
+ 0.0,
1754
+ 0.0,
1755
+ 0.0
1756
+ ],
1757
+ "target": "view",
1758
+ "type": "real[3]",
1759
+ "desc": "Origin / centre of rotation [x,y,z] if not set, defaults to same as focal point.",
1760
+ "strict": true,
1761
+ "redraw": 0,
1762
+ "control": [
1763
+ false
1764
+ ]
1765
+ },
1766
+
1767
+ "scale": {
1768
+ "default": [
1769
+ 1.0,
1770
+ 1.0,
1771
+ 1.0
1772
+ ],
1773
+ "target": "view",
1774
+ "type": "real[3]",
1775
+ "desc": "Global model scaling factors [x,y,z]",
1776
+ "strict": true,
1777
+ "redraw": 0,
1778
+ "control": [
1779
+ true,
1780
+ [
1781
+ 0.0,
1782
+ 20.0,
1783
+ 0.1
1784
+ ]
1785
+ ]
1786
+ },
1787
+ "near": {
1788
+ "default": 0.0,
1789
+ "target": "view",
1790
+ "type": "real",
1791
+ "desc": "Near clipping plane position, adjusts where geometry close to the camera is clipped",
1792
+ "strict": true,
1793
+ "redraw": 0,
1794
+ "control": [
1795
+ true
1796
+ ]
1797
+ },
1798
+ "far": {
1799
+ "default": 0.0,
1800
+ "target": "view",
1801
+ "type": "real",
1802
+ "desc": "Far clip plane position, adjusts where far geometry is clipped",
1803
+ "strict": true,
1804
+ "redraw": 0,
1805
+ "control": [
1806
+ true
1807
+ ]
1808
+ },
1809
+ "fov": {
1810
+ "default": 45.0,
1811
+ "target": "view",
1812
+ "type": "real",
1813
+ "desc": "Field-Of-View (horizontal) in degrees",
1814
+ "strict": true,
1815
+ "redraw": 0,
1816
+ "control": [
1817
+ true,
1818
+ [
1819
+ 10,
1820
+ 170,
1821
+ 1
1822
+ ]
1823
+ ]
1824
+ },
1825
+ "orthographic": {
1826
+ "default": false,
1827
+ "target": "view",
1828
+ "type": "boolean",
1829
+ "desc": "Enable to switch to an orthographic projection instead of the default perspective projection",
1830
+ "strict": true,
1831
+ "redraw": 0,
1832
+ "control": [
1833
+ true
1834
+ ]
1835
+ },
1836
+ "coordsystem": {
1837
+ "default": 1,
1838
+ "target": "view",
1839
+ "type": "integer",
1840
+ "desc": "Set to determine coordinate system, 1=Right-handed (OpenGL default) -1=Left-handed",
1841
+ "strict": true,
1842
+ "redraw": 0,
1843
+ "control": [
1844
+ true
1845
+ ]
1846
+ },
1847
+ "follow": {
1848
+ "default": false,
1849
+ "target": "view",
1850
+ "type": "boolean",
1851
+ "desc": "Enable to follow the model bounding box centre with camera as it changes",
1852
+ "strict": true,
1853
+ "redraw": 0,
1854
+ "control": [
1855
+ true
1856
+ ]
1857
+ },
1858
+ "port": {
1859
+ "default": [
1860
+ 0,
1861
+ 0,
1862
+ 1.0,
1863
+ 1.0
1864
+ ],
1865
+ "target": "view",
1866
+ "type": "real[4]",
1867
+ "desc": "Viewport position and dimensions array [x,y,width,height] in normalised coords [0,1]",
1868
+ "strict": true,
1869
+ "redraw": 0,
1870
+ "control": [
1871
+ false
1872
+ ]
1873
+ },
1874
+ "min": {
1875
+ "default": [
1876
+ 0,
1877
+ 0,
1878
+ 0
1879
+ ],
1880
+ "target": "global",
1881
+ "type": "real[3]",
1882
+ "desc": "Global model minimum bounds [x,y,z]",
1883
+ "strict": true,
1884
+ "redraw": 0,
1885
+ "control": [
1886
+ false
1887
+ ]
1888
+ },
1889
+ "max": {
1890
+ "default": [
1891
+ 0,
1892
+ 0,
1893
+ 0
1894
+ ],
1895
+ "target": "global",
1896
+ "type": "real[3]",
1897
+ "desc": "Global model maximum bounds [x,y,z]",
1898
+ "strict": true,
1899
+ "redraw": 0,
1900
+ "control": [
1901
+ false
1902
+ ]
1903
+ },
1904
+ "title": {
1905
+ "default": "",
1906
+ "target": "view",
1907
+ "type": "string",
1908
+ "desc": "Title to display at top centre of view",
1909
+ "strict": true,
1910
+ "redraw": 0,
1911
+ "control": [
1912
+ true
1913
+ ]
1914
+ },
1915
+ "filename": {
1916
+ "default": "",
1917
+ "target": "global",
1918
+ "type": "string",
1919
+ "desc": "Active database filename",
1920
+ "strict": true,
1921
+ "redraw": 0,
1922
+ "control": [
1923
+ false
1924
+ ]
1925
+ },
1926
+ "compression": {
1927
+ "default": 1,
1928
+ "target": "global",
1929
+ "type": "integer",
1930
+ "desc": "Set zlib compression level for GLDB, -1=default, 0=None, 1=fast, 9=best. LavaVu default is 1 (fast).",
1931
+ "strict": true,
1932
+ "redraw": 0,
1933
+ "control": [
1934
+ true,
1935
+ null,
1936
+ [-1,0,1,2,3,4,5,6,7,8,9]
1937
+ ]
1938
+ },
1939
+ "rulers": {
1940
+ "default": false,
1941
+ "target": "global",
1942
+ "type": "boolean",
1943
+ "desc": "Draw rulers around object axes",
1944
+ "strict": true,
1945
+ "redraw": 0,
1946
+ "control": [
1947
+ true
1948
+ ]
1949
+ },
1950
+ "ruleraxes": {
1951
+ "default": "xyz",
1952
+ "target": "global",
1953
+ "type": "string",
1954
+ "desc": "Which figure axes to draw rulers beside (xyzXYZ) lowercase = min, capital = max ",
1955
+ "strict": true,
1956
+ "redraw": 0,
1957
+ "control": [
1958
+ false
1959
+ ]
1960
+ },
1961
+ "rulerticks": {
1962
+ "default": 5,
1963
+ "target": "global",
1964
+ "type": "integer",
1965
+ "desc": "Number of tick marks to display on rulers",
1966
+ "strict": true,
1967
+ "redraw": 0,
1968
+ "control": [
1969
+ true
1970
+ ]
1971
+ },
1972
+ "rulerformat": {
1973
+ "default": "%-10.3f",
1974
+ "target": "global",
1975
+ "type": "string",
1976
+ "desc": "Format specifier for ruler tick values, eg: %.3[f/e/g] standard, scientific, both",
1977
+ "strict": true,
1978
+ "redraw": 0,
1979
+ "control": [
1980
+ false
1981
+ ]
1982
+ },
1983
+ "rulerlabels": {
1984
+ "default": [],
1985
+ "target": "global",
1986
+ "type": "string[][]",
1987
+ "desc": "Tick labels to display on rulers, 2d array, one dimension per model axis, replaces rulerticks. If values are numeric, will define the position value, otherwise define the label only.",
1988
+ "strict": true,
1989
+ "redraw": 0,
1990
+ "control": [
1991
+ false
1992
+ ]
1993
+ },
1994
+ "rulerwidth": {
1995
+ "default": 1.5,
1996
+ "target": "global",
1997
+ "type": "real",
1998
+ "desc": "Width of ruler lines",
1999
+ "strict": true,
2000
+ "redraw": 0,
2001
+ "control": [
2002
+ true
2003
+ ]
2004
+ },
2005
+ "rulerscale": {
2006
+ "default": 1.0,
2007
+ "target": "global",
2008
+ "type": "real",
2009
+ "desc": "Scaling of ruler label text",
2010
+ "strict": true,
2011
+ "redraw": 0,
2012
+ "control": [
2013
+ true
2014
+ ]
2015
+ },
2016
+ "border": {
2017
+ "default": 1.0,
2018
+ "target": "global",
2019
+ "type": "real",
2020
+ "desc": "Border width around model boundary, 0=disabled",
2021
+ "strict": true,
2022
+ "redraw": 0,
2023
+ "control": [
2024
+ true,
2025
+ [
2026
+ 0.0,
2027
+ 5.0,
2028
+ 0.5
2029
+ ]
2030
+ ]
2031
+ },
2032
+ "fillborder": {
2033
+ "default": false,
2034
+ "target": "global",
2035
+ "type": "boolean",
2036
+ "desc": "Draw filled background box around model boundary",
2037
+ "strict": true,
2038
+ "redraw": 0,
2039
+ "control": [
2040
+ true
2041
+ ]
2042
+ },
2043
+ "bordercolour": {
2044
+ "default": "grey",
2045
+ "target": "global",
2046
+ "type": "colour",
2047
+ "desc": "Colour of model boundary border",
2048
+ "strict": true,
2049
+ "redraw": 0,
2050
+ "control": [
2051
+ true
2052
+ ]
2053
+ },
2054
+ "axis": {
2055
+ "default": true,
2056
+ "target": "global",
2057
+ "type": "boolean",
2058
+ "desc": "Draw X/Y/Z legend showing model axes orientation",
2059
+ "strict": true,
2060
+ "redraw": 0,
2061
+ "control": [
2062
+ true
2063
+ ]
2064
+ },
2065
+ "axislength": {
2066
+ "default": 0.1,
2067
+ "target": "global",
2068
+ "type": "real",
2069
+ "desc": "Axis legend scaling factor",
2070
+ "strict": true,
2071
+ "redraw": 0,
2072
+ "control": [
2073
+ true
2074
+ ]
2075
+ },
2076
+ "axisbox": {
2077
+ "default": [
2078
+ 0,
2079
+ 0,
2080
+ 0,
2081
+ 0
2082
+ ],
2083
+ "target": "global",
2084
+ "type": "real[4]",
2085
+ "desc": "Custom dimensions of viewport for drawing the axis (x, y, width, height) proportional to main viewport size",
2086
+ "strict": true,
2087
+ "redraw": 0,
2088
+ "control": [
2089
+ false
2090
+ ]
2091
+ },
2092
+ "quality": {
2093
+ "default": 2,
2094
+ "target": "global",
2095
+ "type": "integer",
2096
+ "desc": "Read only: Over-sample antialiasing level, for off-screen rendering",
2097
+ "strict": true,
2098
+ "redraw": 0,
2099
+ "control": [
2100
+ false
2101
+ ]
2102
+ },
2103
+ "bounds": {
2104
+ "default": [],
2105
+ "target": "global",
2106
+ "type": "real[][]",
2107
+ "desc": "Read only bounding box (min/max)",
2108
+ "strict": true,
2109
+ "redraw": 0,
2110
+ "control": [
2111
+ false
2112
+ ]
2113
+ },
2114
+ "caption": {
2115
+ "default": "default",
2116
+ "target": "global",
2117
+ "type": "string",
2118
+ "desc": "Title for caption area and image output filenames",
2119
+ "strict": true,
2120
+ "redraw": 0,
2121
+ "control": [
2122
+ false
2123
+ ]
2124
+ },
2125
+ "resolution": {
2126
+ "default": [
2127
+ 1024,
2128
+ 768
2129
+ ],
2130
+ "target": "global",
2131
+ "type": "integer[2]",
2132
+ "desc": "Window resolution X,Y",
2133
+ "strict": true,
2134
+ "redraw": 0,
2135
+ "control": [
2136
+ false
2137
+ ]
2138
+ },
2139
+ "antialias": {
2140
+ "default": true,
2141
+ "target": "global",
2142
+ "type": "boolean",
2143
+ "desc": "Enable multisample anti-aliasing, only works with interactive viewing",
2144
+ "strict": true,
2145
+ "redraw": 0,
2146
+ "control": [
2147
+ false
2148
+ ]
2149
+ },
2150
+ "upscalelines": {
2151
+ "default": false,
2152
+ "target": "global",
2153
+ "type": "real",
2154
+ "desc": "Enable to scale lines with the viewport size.",
2155
+ "strict": true,
2156
+ "redraw": 0,
2157
+ "control": [
2158
+ true
2159
+ ]
2160
+ },
2161
+ "fps": {
2162
+ "default": false,
2163
+ "target": "global",
2164
+ "type": "boolean",
2165
+ "desc": "Turn on to display FPS count",
2166
+ "strict": true,
2167
+ "redraw": 0,
2168
+ "control": [
2169
+ false
2170
+ ]
2171
+ },
2172
+ "filestep": {
2173
+ "default": false,
2174
+ "target": "global",
2175
+ "type": "boolean",
2176
+ "desc": "Turn on to automatically add and switch to a new timestep after loading a data file",
2177
+ "strict": true,
2178
+ "redraw": 0,
2179
+ "control": [
2180
+ false
2181
+ ]
2182
+ },
2183
+ "hideall": {
2184
+ "default": false,
2185
+ "target": "global",
2186
+ "type": "boolean",
2187
+ "desc": "Turn on to set initial state of all loaded objects to hidden",
2188
+ "strict": true,
2189
+ "redraw": 0,
2190
+ "control": [
2191
+ false
2192
+ ]
2193
+ },
2194
+ "background": {
2195
+ "default": [
2196
+ 0,
2197
+ 0,
2198
+ 0,
2199
+ 255
2200
+ ],
2201
+ "target": "global",
2202
+ "type": "colour",
2203
+ "desc": "Background colour RGB(A)",
2204
+ "strict": true,
2205
+ "redraw": 0,
2206
+ "control": [
2207
+ true
2208
+ ]
2209
+ },
2210
+ "alpha": {
2211
+ "default": 1.0,
2212
+ "target": "global",
2213
+ "type": "real",
2214
+ "desc": "Global opacity multiplier where 0 is transparent and 1 is opaque, this is combined with \"opacity\" prop",
2215
+ "strict": true,
2216
+ "redraw": 0,
2217
+ "control": [
2218
+ true,
2219
+ [
2220
+ 0.0,
2221
+ 1.0,
2222
+ 0.01
2223
+ ]
2224
+ ]
2225
+ },
2226
+ "noload": {
2227
+ "default": false,
2228
+ "target": "global",
2229
+ "type": "boolean",
2230
+ "desc": "Disables initial loading of object data from database, only object names loaded, use the \"load\" command to subsequently load selected object data",
2231
+ "strict": true,
2232
+ "redraw": 0,
2233
+ "control": [
2234
+ false
2235
+ ]
2236
+ },
2237
+ "merge": {
2238
+ "default": false,
2239
+ "target": "global",
2240
+ "type": "boolean",
2241
+ "desc": "Enable to load subsequent databases into the current model, if disabled then each database is loaded into a new model",
2242
+ "strict": true,
2243
+ "redraw": 0,
2244
+ "control": [
2245
+ false
2246
+ ]
2247
+ },
2248
+ "pngalpha": {
2249
+ "default": false,
2250
+ "target": "global",
2251
+ "type": "boolean",
2252
+ "desc": "Enable transparent png output",
2253
+ "strict": true,
2254
+ "redraw": 0,
2255
+ "control": [
2256
+ false
2257
+ ]
2258
+ },
2259
+ "trisplit": {
2260
+ "default": 0,
2261
+ "target": "global",
2262
+ "type": "integer",
2263
+ "desc": "Imported model triangle subdivision level. Can also be set to 1 to force vertex normals to be recalculated by ignoring any present in the loaded model data.",
2264
+ "strict": true,
2265
+ "redraw": 0,
2266
+ "control": [
2267
+ false
2268
+ ]
2269
+ },
2270
+ "trilimit": {
2271
+ "default": 0,
2272
+ "target": "global",
2273
+ "type": "real",
2274
+ "desc": "Imported model triangle edge size limit. Triangles will be split until edges below this threashold.",
2275
+ "strict": true,
2276
+ "redraw": 0,
2277
+ "control": [
2278
+ false
2279
+ ]
2280
+ },
2281
+ "globalcam": {
2282
+ "default": false,
2283
+ "target": "global",
2284
+ "type": "boolean",
2285
+ "desc": "Enable global camera for all models (default is separate cam for each)",
2286
+ "strict": true,
2287
+ "redraw": 0,
2288
+ "control": [
2289
+ false
2290
+ ]
2291
+ },
2292
+ "volchannels": {
2293
+ "default": 1,
2294
+ "target": "global",
2295
+ "type": "integer",
2296
+ "desc": "Volume rendering output channels 1 (luminance) 3/4 (rgba)",
2297
+ "strict": true,
2298
+ "redraw": 0,
2299
+ "control": [
2300
+ false
2301
+ ]
2302
+ },
2303
+ "volres": {
2304
+ "default": [
2305
+ 256,
2306
+ 256,
2307
+ 256
2308
+ ],
2309
+ "target": "global",
2310
+ "type": "integer[3]",
2311
+ "desc": "Volume rendering data voxel resolution X Y Z",
2312
+ "strict": true,
2313
+ "redraw": 0,
2314
+ "control": [
2315
+ false
2316
+ ]
2317
+ },
2318
+ "volmin": {
2319
+ "default": [
2320
+ 0.0,
2321
+ 0.0,
2322
+ 0.0
2323
+ ],
2324
+ "target": "global",
2325
+ "type": "real[3]",
2326
+ "desc": "Volume rendering min bound X Y Z",
2327
+ "strict": true,
2328
+ "redraw": 0,
2329
+ "control": [
2330
+ false
2331
+ ]
2332
+ },
2333
+ "volmax": {
2334
+ "default": [
2335
+ 1.0,
2336
+ 1.0,
2337
+ 1.0
2338
+ ],
2339
+ "target": "global",
2340
+ "type": "real[3]",
2341
+ "desc": "Volume rendering max bound X Y Z",
2342
+ "strict": true,
2343
+ "redraw": 0,
2344
+ "control": [
2345
+ false
2346
+ ]
2347
+ },
2348
+ "volsubsample": {
2349
+ "default": [
2350
+ 1,
2351
+ 1,
2352
+ 1
2353
+ ],
2354
+ "target": "global",
2355
+ "type": "int[3]",
2356
+ "desc": "Volume rendering subsampling factor X Y Z",
2357
+ "strict": true,
2358
+ "redraw": 0,
2359
+ "control": [
2360
+ false
2361
+ ]
2362
+ },
2363
+ "slicevolumes": {
2364
+ "default": false,
2365
+ "target": "global",
2366
+ "type": "boolean",
2367
+ "desc": "Convert full volume data sets to slices (allows cropping and sub-sampling)",
2368
+ "strict": true,
2369
+ "redraw": 0,
2370
+ "control": [
2371
+ false
2372
+ ]
2373
+ },
2374
+ "slicedump": {
2375
+ "default": false,
2376
+ "target": "global",
2377
+ "type": "boolean",
2378
+ "desc": "Export full volume data sets to slices",
2379
+ "strict": true,
2380
+ "redraw": 0,
2381
+ "control": [
2382
+ false
2383
+ ]
2384
+ },
2385
+ "pointsubsample": {
2386
+ "default": 0,
2387
+ "target": "global",
2388
+ "type": "integer",
2389
+ "desc": "Point render sub-sampling factor",
2390
+ "strict": true,
2391
+ "redraw": 0,
2392
+ "control": [
2393
+ true
2394
+ ]
2395
+ },
2396
+ "pointmaxcount": {
2397
+ "default": 0,
2398
+ "target": "global",
2399
+ "type": "integer",
2400
+ "desc": "Point render maximum count before auto sub-sampling",
2401
+ "strict": true,
2402
+ "redraw": 0,
2403
+ "control": [
2404
+ true
2405
+ ]
2406
+ },
2407
+ "pointdistsample": {
2408
+ "default": 0,
2409
+ "target": "global",
2410
+ "type": "integer",
2411
+ "desc": "Point distance sub-sampling factor",
2412
+ "strict": true,
2413
+ "redraw": 0,
2414
+ "control": [
2415
+ true
2416
+ ]
2417
+ },
2418
+ "pointattribs": {
2419
+ "default": true,
2420
+ "target": "global",
2421
+ "type": "boolean",
2422
+ "desc": "Point size/type attributes can be applied per object (requires more GPU ram)",
2423
+ "strict": true,
2424
+ "redraw": 0,
2425
+ "control": [
2426
+ false
2427
+ ]
2428
+ },
2429
+ "pointattenuate": {
2430
+ "default": true,
2431
+ "target": "global",
2432
+ "type": "boolean",
2433
+ "desc": "Point distance size attenuation (points shrink when further from viewer ie: perspective)",
2434
+ "strict": true,
2435
+ "redraw": 0,
2436
+ "control": [
2437
+ true
2438
+ ]
2439
+ },
2440
+ "pointpixelscale": {
2441
+ "default": 1,
2442
+ "target": "global",
2443
+ "type": "int",
2444
+ "desc": "Set to zero for constant point size in pixels, set to 1 to scale points when the viewport is resized after storing the initial render size. If set to > 1, this is the viewport height where pointsize = pixels. As the viewport height is adjusted points are scaled relative to this height - so points will appear the same regardless of render size",
2445
+ "strict": true,
2446
+ "redraw": 0,
2447
+ "control": [
2448
+ true
2449
+ ]
2450
+ },
2451
+ "sort": {
2452
+ "default": true,
2453
+ "target": "global",
2454
+ "type": "boolean",
2455
+ "desc": "Automatic depth sorting enabled",
2456
+ "strict": true,
2457
+ "redraw": 0,
2458
+ "control": [
2459
+ true
2460
+ ]
2461
+ },
2462
+ "cache": {
2463
+ "default": false,
2464
+ "target": "global",
2465
+ "type": "boolean",
2466
+ "desc": "Cache all time varying data in ram on initial load",
2467
+ "strict": true,
2468
+ "redraw": 0,
2469
+ "control": [
2470
+ false
2471
+ ]
2472
+ },
2473
+ "gpucache": {
2474
+ "default": false,
2475
+ "target": "global",
2476
+ "type": "boolean",
2477
+ "desc": "Cache timestep varying data on gpu as well as ram (only if model size permits)",
2478
+ "strict": true,
2479
+ "redraw": 0,
2480
+ "control": [
2481
+ false
2482
+ ]
2483
+ },
2484
+ "clearstep": {
2485
+ "default": false,
2486
+ "target": "global",
2487
+ "type": "boolean",
2488
+ "desc": "Clear all time varying data from previous step on loading another",
2489
+ "strict": true,
2490
+ "redraw": 0,
2491
+ "control": [
2492
+ false
2493
+ ]
2494
+ },
2495
+ "timestep": {
2496
+ "default": -1,
2497
+ "target": "global",
2498
+ "type": "integer",
2499
+ "desc": "Holds the current model timestep, read only, -1 indicates no time varying data loaded",
2500
+ "strict": true,
2501
+ "redraw": 0,
2502
+ "control": [
2503
+ false
2504
+ ]
2505
+ },
2506
+ "validate": {
2507
+ "default": true,
2508
+ "target": "global",
2509
+ "type": "boolean",
2510
+ "desc": "Disable to turn off validation of property names from the dictionary. Allows setting/reading custom properties.",
2511
+ "strict": true,
2512
+ "redraw": 0,
2513
+ "control": [
2514
+ false
2515
+ ]
2516
+ },
2517
+ "data": {
2518
+ "default": null,
2519
+ "target": "global",
2520
+ "type": "dict",
2521
+ "desc": "Holds a dictionary of data sets in the current model by label, read only",
2522
+ "strict": true,
2523
+ "redraw": 0,
2524
+ "control": [
2525
+ false
2526
+ ]
2527
+ }
2528
+ }