Property reference

all

Property Type Default Description
renderers object [{"labels":"labels"},{"particles":"points","pointcubes":"cuboids","points":"points","pointspheres":"spheres","sortedpoints":"points"},{"grid":"quads","quads":"quads"},{"basictriangles":"basictriangles","mesh":"basictriangles","sortedtriangles":"sortedtriangles","surface":"basictriangles","triangles":"sortedtriangles"},{"arrows":"vectors","vectors":"vectors"},{"streamlines":"tracers","tracers":"tracers"},{"lines":"lines","links":"lines","simplelines":"simplelines","sortedlines":"sortedlines"},{"cubes":"cuboids","cuboids":"cuboids","shapes":"shapes","spheres":"spheres"},{"volume":"volume","volumes":"volume"},{"fullscreen":"screen","screen":"screen"}] 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.
renderlist string "" 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.
subrenderers string "sortedtriangles points simplelines" 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.
font string "vector" Font typeface vector (thicker, better for larger text) or line (better for small labels)
fontscale real 1.0 Font scaling, applied by multiplying with any existing calculated scaling.
fontsize real 1.0 Font size, absolute scaling that overrides all automatic calculations of the font size
fontcolour colour [0,0,0,0] Font colour RGB(A)

timestep

Property Type Default Description
time real 0.0 Time value for timestep

object

Property Type Default Description
name string "" Name of object
visible boolean true Set to false to hide object
inview boolean true Set to false to exclude object from bounding box calculation and the default camera view
fixed boolean false Set to true to make all data fixed, not time varying, for this object
renderer string "" Create a custom renderer using label provided instead of using the default renderers, type of renderer created based on the "geometry" property
shaders object [] Custom shaders for rendering object, either filenames or source strings, provide either [fragment], [vertex, fragment] or [geometry, vertex, fragment]
uniforms object [] Custom shader uniforms for rendering objects, list of uniform names, will be copied from property data
steprange boolean true Calculate dynamic range values per step rather than over full time range
lit boolean true Apply lighting to object
cullface boolean false Cull back facing polygons of object surfaces
wireframe boolean false Render object surfaces as wireframe
flat boolean false Renders surfaces as flat shaded, lines/vectors/tracers as 2d, faster but no 3d or lighting
depthtest boolean true Set to false to disable depth test when drawing object so always drawn regardless of 3d position
depthwrite boolean true 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
dims integer[3] [0,0,0] 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).
rotatable boolean false Set to true to apply the view rotation to this object
shift real 0.0 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
colour colour [0,0,0,255] Object colour RGB(A)
colourmap string "" name of the colourmap to use
opacitymap string "" name of the opacity colourmap to use
opacity real 1.0 Opacity of object where 0 is transparent and 1 is opaque
brightness real 0.0 Brightness of object from -1 (full dark) to 0 (default) to 1 (full light)
contrast real 1.0 Contrast of object from 0 (none, grey) to 2 (max)
saturation real 1.0 Saturation of object from 0 (greyscale) to 2 (fully saturated)
ambient real 0.4 Ambient lighting level (background constant light)
diffuse real 0.65 Diffuse lighting level (shading light/dark)
specular real 0.0 Specular highlight lighting level (spot highlights)
shininess real 0.5 Specular shininess factor, controls size of highlight
lightpos real[3] [0.1,-0.1,2.0] Light position X Y Z relative to camera position (follows camera)
clip boolean true Allow object to be clipped
clipmap boolean true Clipping mapped to range normalised [0,1]
clipmin real[3] [0.0,0.0,0.0] Object clipping minimum [x,y,z]
clipmax real[3] [1.0,1.0,1.0] Object clipping maximum [x,y,z]
xmin real 0.0 (legacy) Object clipping, minimum x
ymin real 0.0 (legacy) Object clipping, maximum y
zmin real 0.0 (legacy) Object clipping, minimum z
xmax real 1.0 (legacy) Object clipping, maximum x
ymax real 1.0 (legacy) Object clipping, maximum y
zmax real 1.0 (legacy) Object clipping, maximum z
filters object [] Filter list
glyphs integer [0,n] 2 Glyph quality 0=none, 1=low, higher=increasing triangulation detail (arrows/shapes etc)

object(shapes)

Property Type Default Description
segments integer [4,n] 32 Triangulation quality for spheres, number of segments to draw (minimum 4)

object

Property Type Default Description
scaling real 1.0 Object scaling factor
texture string "" Apply a texture, either external texture image file path to load or colourmap
fliptexture boolean true Flip texture image after loading, usually required
repeat boolean false Repeat texture image enabled, default is clamp to edges
texturefilter integer 2 Type of texture filtering, 0=nearest, 1=linear, 2=mipmap (default)
colourby string or integer 0 Index or label of data set to colour object by (requires colour map)
opacityby string or integer "" Index or label of data set to apply transparency to object by (requires opacity map)

object(line)

Property Type Default Description
limit real 0 Line length limit, can be used to skip drawing line segments that cross periodic boundary
link boolean false To chain line vertices into longer lines set to true
loop boolean false To join the start and end of linked lines set to true
scalelines real 1.0 Line scaling multiplier, applies to all line objects
linewidth real 1.0 Line width scaling
tubes boolean false Draw lines as 3D tubes

object(point)

Property Type Default Description
pointsize real 1.0 Point size scaling
pointtype integer/string 1 Point type 0/blur, 1/smooth, 2/sphere, 3/shiny, 4/flat
scalepoints real 1.0 Point scaling multiplier, applies to all points objects
sizeby string or integer "" Index or label of data set to apply to point sizes

object(surface)

Property Type Default Description
opaque boolean false If opaque flag is set skips depth sorting step and allows individual surface properties to be applied
optimise boolean true Disable this flag to skip the mesh optimisation step
vertexnormals boolean true Disable this flag to skip calculating vertex normals
smoothangle int 90 Angle between surface normals (in degrees) below which normals will be smoothed. Reduce this to preserve hard edges.
flip boolean false Set this flag to reverse the surface faces (currently implemented for grids only)

object(volume)

Property Type Default Description
power real 1.0 Power used when applying transfer function, 1.0=linear mapping
bloom real 0.0 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.
samples integer 256 Number of samples to take per ray cast, higher = better quality, but slower
density real 5.0 Density multiplier for volume data
isovalue real 0.0 Isovalue for dynamic isosurface (normalised to [0,1] over actual data range)
isovalues real[] [] Isovalues to extract from volume into mesh isosurface
isoalpha real 1.0 Transparency value for isosurface
isosmooth real 0.1 Isosurface smoothing factor for normal calculation
isowalls boolean true Connect isosurface enclosed area with walls
tricubicfilter boolean false Apply a tricubic filter for increased smoothness
densityclip real[2] [0.0,1.0] Density range [min,max] to map, values outside the range are discarded
minclip real 0.0 (legacy) Minimum density value to map, lower discarded
maxclip real 1.0 (legacy) Maximum density value to map, higher discarded
compresstextures boolean false Compress volume textures where possible
texturesize int[3] [0,0,0] Volume texture size limit (for crop)
textureoffset int[3] [0,0,0] Volume texture offset (for crop)

object(vector)

Property Type Default Description
scalemax real 0.0 Length scaling maximum, sets the range over which vectors will be scaled [0,scalemax]. Default automatically calculated based on data max
arrowhead real 5.0 Arrow head size as a multiple of length or radius, if < 1.0 is multiple of length, if > 1.0 is multiple of radius
scalevectors real 1.0 Vector scaling multiplier, applies to all vector objects
thickness real 0.0 Arrow shaft thickness as fixed value (overrides "radius")
length real 0.0 Arrow fixed length, default is to use vector magnitude
normalise real 1.0 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).
autoscale boolean true Automatically scale vectors based on maximum magnitude

object(vector/shapes)

Property Type Default Description
radius real 0.02 When applied to Vector Arrows: Arrow shaft radius as ratio of vector length. When applied to shapes: radius of spheres.

object(tracer)

Property Type Default Description
steps integer 0 Number of time steps to trace particle path
taper boolean true Taper width of tracer arrow up as we get closer to current timestep
fade boolean false Fade opacity of tracer arrow in from transparent as we get closer to current timestep
connect boolean true Set false to render tracers as points instead of connected lines
scaletracers real 1.0 Tracer scaling multiplier, applies to all tracer objects

object(shape)

Property Type Default Description
shapewidth real 1.0 Shape width scaling factor
shapeheight real 1.0 Shape height scaling factor
shapelength real 1.0 Shape length scaling factor
shape integer 0 Shape type: 0=ellipsoid, 1=cuboid
scaleshapes real 1.0 Shape scaling multiplier, applies to all shape objects
widthby string or integer "widths" Index or label of data set to apply to shape widths
heightby string or integer "heights" Index or label of data set to apply to shape heights
lengthby string or integer "lengths" Index or label of data set to apply to shape lengths

colourbar

Property Type Default Description
colourbar boolean false Indicates object is a colourbar
align string "bottom" Alignment of colour bar to screen edge, top/bottom/left/right
size real[2] [0,0] Dimensions of colour bar (length/breadth) in pixels or viewport size ratio
ticks integer 0 Number of additional tick marks to draw besides start and end
tickvalues real[] [] Values of intermediate tick marks
printticks boolean true Set to false to disable drawing of intermediate tick values
format string "%.5g" Format specifier for label values, eg: %.3[f/e/g] standard, scientific, both
scalevalue real 1.0 Multiplier to scale tick values
outline integer 1.0 Outline width to draw around colour bar
offset real 0 Margin to parallel edge in pixels or viewport size ratio
position real 0 Margin to perpendicular edge in pixels or viewport size ratio, >0=towards left/bottom, 0=centre (horizontal only), <0=towards right/top
binlabels boolean false Set to true to label discrete bins rather than tick points

colourmap

Property Type Default Description
logscale boolean false Set to true to use log scales
discrete boolean false Set to true to apply colours as discrete values rather than gradient
interpolate boolean true Set to false to disable interpolation between colours, nearest colour will always be applied
colours colours [] Colour list (or string), X11 colour names, rgb(a) colours or html hex colours
range real[2] [0.0,0.0] Fixed scale range, default is to automatically calculate range based on data min/max
locked boolean false Set to true to lock colourmap ranges to current values

view

Property Type Default Description
zoomstep integer -1 When to apply camera auto-zoom to fit model to window, -1=never, 0=first timestep only, 1=every timestep
margin real 0.025 Margin in pixels (when >= 1) or ratio of viewport width (when < 1.0) around edges of model when to applying camera auto-zoom
rotate quaternion [0.0,0.0,0.0,1.0] Camera rotation quaternion [x,y,z,w]
xyzrotate real[3] [0.0,0.0,0.0] Camera rotation as Euler angles [x,y,z] - output only
translate real[3] [0.0,0.0,0.0] Camera translation [x,y,z]
focus real[3] [0.0,0.0,0.0] Camera focal point [x,y,z]
scale real[3] [1.0,1.0,1.0] Global model scaling factors [x,y,z]
near real 0.0 Near clipping plane position, adjusts where geometry close to the camera is clipped
far real 0.0 Far clip plane position, adjusts where far geometry is clipped
fov real 45.0 Field-Of-View (horizontal) in degrees
orthographic boolean false Enable to switch to an orthographic projection instead of the default perspective projection
coordsystem integer 1 Set to determine coordinate system, 1=Right-handed (OpenGL default) -1=Left-handed
follow boolean false Enable to follow the model bounding box centre with camera as it changes

global

Property Type Default Description
min real[3] [0,0,0] Global model minimum bounds [x,y,z]
max real[3] [0,0,0] Global model maximum bounds [x,y,z]
title string "" Title to display at top centre of view
rulers boolean false Draw rulers around object axes
ruleraxes string "xyz" Which figure axes to draw rulers beside (xyzXYZ) lowercase = min, capital = max
rulerticks integer 5 Number of tick marks to display on rulers
rulerformat string "%-10.3f" Format specifier for ruler tick values, eg: %.3[f/e/g] standard, scientific, both
rulerlabels string[][] [] 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.
rulerwidth real 1.5 Width of ruler lines
rulerscale real 1.0 Scaling of ruler label text
border real 1.0 Border width around model boundary, 0=disabled
fillborder boolean false Draw filled background box around model boundary
bordercolour colour "grey" Colour of model boundary border
axis boolean true Draw X/Y/Z legend showing model axes orientation
axislength real 0.1 Axis legend scaling factor
axisbox real[4] [0,0,0,0] Custom dimensions of viewport for drawing the axis (x, y, width, height) proportional to main viewport size
quality integer 2 Read only: Over-sample antialiasing level, for off-screen rendering
bounds real[][] [] Read only bounding box (min/max)
caption string "default" Title for caption area and image output filenames
resolution integer[2] [1024,768] Window resolution X,Y
antialias boolean true Enable multisample anti-aliasing, only works with interactive viewing
fps boolean false Turn on to display FPS count
filestep boolean false Turn on to automatically add and switch to a new timestep after loading a data file
hideall boolean false Turn on to set initial state of all loaded objects to hidden
background colour [0,0,0,255] Background colour RGB(A)
alpha real 1.0 Global opacity multiplier where 0 is transparent and 1 is opaque, this is combined with "opacity" prop
noload boolean false Disables initial loading of object data from database, only object names loaded, use the "load" command to subsequently load selected object data
merge boolean false Enable to load subsequent databases into the current model, if disabled then each database is loaded into a new model
pngalpha boolean false Enable transparent png output
trisplit integer 0 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.
trilimit real 0 Imported model triangle edge size limit. Triangles will be split until edges below this threashold.
globalcam boolean false Enable global camera for all models (default is separate cam for each)
volchannels integer 1 Volume rendering output channels 1 (luminance) 3/4 (rgba)
volres integer[3] [256,256,256] Volume rendering data voxel resolution X Y Z
volmin real[3] [0.0,0.0,0.0] Volume rendering min bound X Y Z
volmax real[3] [1.0,1.0,1.0] Volume rendering max bound X Y Z
volsubsample int[3] [1,1,1] Volume rendering subsampling factor X Y Z
slicevolumes boolean false Convert full volume data sets to slices (allows cropping and sub-sampling)
slicedump boolean false Export full volume data sets to slices
pointsubsample integer 0 Point render sub-sampling factor
pointmaxcount integer 0 Point render maximum count before auto sub-sampling
pointdistsample integer 0 Point distance sub-sampling factor
pointattribs boolean true Point size/type attributes can be applied per object (requires more GPU ram)
pointattenuate boolean true Point distance size attenuation (points shrink when further from viewer ie: perspective)
sort boolean true Automatic depth sorting enabled
cache boolean false Cache all time varying data in ram on initial load
gpucache boolean false Cache timestep varying data on gpu as well as ram (only if model size permits)
clearstep boolean false Clear all time varying data from previous step on loading another
timestep integer -1 Holds the current model timestep, read only, -1 indicates no time varying data loaded
validate boolean true Disable to turn off validation of property names from the dictionary. Allows setting/reading custom properties.
data dict null Holds a dictionary of data sets in the current model by label, read only