Links

Bridgeworks Reference

Agent

Description

The base class for Agents.

Derives From

Threadable

Extended By

EventListener, ThreadAgent, RenderAgent

Attributes

Attribute Value Description Data Type Plugin WebGL
enabled true
false
Sets the enabled state for this.
DEFAULT: true
boolean X X
name a string Sets the name for this.
DEFAULT: ""
string X X

<AppendNode>

Description

Adds a node to the end of the list of child nodes for the current node in the scene graph.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
child a string The name of the child node; the child node will be appended to the parent node's list of children.
DEFAULT: ""
string X
parent a string The name of the parent node; the child node will be appended to the parent node's list of children (added at the end).
DEFAULT: ""
string X

Attribute

Description

The base class for all attributes.

Derives From

Base

Extended By

AttributeContainer, AttributeImpl

Attributes

None

AttributeAttr

Description

Defines an attribute class which represents another attribute; can also be thought of as a meta-attribute.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
name a string The name of the attribute.
DEFAULT: ""
string X
type an attribute type string The type of the attribute.
DEFAULT: ""

EXAMPLE:  "FloatAttr", "StringAttr".
string X
values AttributeVector<StringAttr> The value(s) of the attribute. AttributeVector<StringAttr> X

AttributeContainer

Description

The base class for all Bridgeworks containers.

Derives From

Attribute

Extended By

AttributeAttr, AttributeVector, <colorBand>, Directive, <edge>, EdgeStyleAttr, <GraphData>, ImageAttr, <IsoShaderBand>, LineAttr, Node, <node>, <Plane>, Style, <StyleMap>, Threadable

Attributes

None

AttributeImpl

Description

Template implementation of the attribute base class.

Derives From

Attribute

Extended By

AttributePointerAttr, HexColorAttr, PulseAttr

Attributes

None

AttributePointerAttr

Description

An attribute that holds a pointer to another attribute.

Derives From

AttributeImpl

Extended By

None

Attributes

None

AttributeVector

Description

Defines a vector collection of attributes.

Derives From

AttributeContainer

Extended By

<Styles>, <StylesMap>

Attributes

Attribute Value Description Data Type Plugin WebGL
appendParsedElements true
false
If true, the parser will append elements instead of replacing them.
DEFAULT:  false
boolean X
baseName a string The base name for registering elements.  The element index is appended to this base name.
DEFAULT:  "item"

EXAMPLE:  Given the base name "item", element[0] would be named "item0".
string X
elementModified PulseAttr This attribute is pulsed whenever an element of the vector is modified in any way. PulseAttr X
size a non-negative number The size of the vector.
DEFAULT:  0
unsigned integer X x

<AutoInterpolate>

Description

Creates a linear interpolated transition for any attribute from its current value to a new value.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
duration a non-negative number The duration for the interpolation in seconds.
DEFAULT:  1
float X X
postBehavior 0
1
2
3
4
5
The end-behavior for the interpolation.
0 = Reset
1 = Constant
2 = Repeat
3 = Oscillate
4 = OffsetRepeat
5 = Linear
DEFAULT:  1
integer X X
renderAndRelease true
false
Sets the "renderAndRelease" attribute on the result KeyframeInterpolator, which if true, releases the interpolator after rendered to time = duration (see "duration").
DEFAULT:  true
boolean X X
shape 0
1
2
3
4
Sets the interpolator's shape.
0 = Linear
1 = Stepped
2 = TCB
3 = 1D Bezier
4 = 2D Bezier
DEFAULT:  0
unsigned integer X X

Examples

AutoInterpolate
AutoInterpolate Background Color

<BalloonTipLabel>

Description

A node defining a label which displays a balloon-tip upon user-interaction.

Derives From

RasterComponent

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
balloonTipLabelStyle BalloonTipLabelStyle Sets the balloon-tip style for the label. BalloonTipLabelStyle X
labelHeight a non-negative number The label width in pixels; read-only, setting will have no effect. unsigned integer X
labelWidth a non-negative number The label height in pixels; read-only, setting will have no effect. unsigned integer X
windowHandle pointer A pointer to the window handle within which this label is displayed.
DEFAULT:  NULL 
unsigned integer X

<BalloonTipLabelStyle>

Description

Defines the styles for a balloon-tip label.

Derives From

Style

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
balloonOffset an integer Sets an offset from the anchor point, in pixels.
DEFAULT:  100
integer X X
bgColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the background color for the label.
DEFAULT:  <bgColor r="1" g="1" b="1" a="1"/>
4D floating point array X X
displayMode "default"
"hide"
Sets the display mode for the label.
DEFAULT:  "default".
string X
htmlLabelStyle HTMLLabelStyle Sets the html style for the label. HTMLLabelStyle X x
text a string Reserved for future support. string  
textColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Reserved for future support. 4D floating point array  

Base

Description

The premier base class for all Bridgeworks objects.

Derives From

None

Extended By

Attribute

Attributes

None

BBoxAttr

Description

Attribute class defining a 3-dimensional bounding box.

Derives From

<Attribute Container>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
min x: a number
y: a number
z: a number
The minimum point of the bounding box.
DEFAULT:  <min x="0" y="0" z="0"/>
3D floating point vector X X
max x: a number
y: a number
z: a number
The maximum point of the bounding box.
DEFAULT:  <max x="0" y="0" z="0"/>
3D floating point vector X X

<BoundingBoxDirective>

Description

Defines a directive for determining the 3-dimensional bounding box of a subtree of the scene graph.

Derives From

SGDirective

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
viewSpace true
false
Sets whether or not the resulting bounding box should be in view-space or world-space; if true, the result will be in view-space coordinates, if false, the result will be in world-space coordinates.
DEFAULT:  false 
boolean X X
viewTransform a 4x4 matrix of numbers Initializes the view-space transformation matrix for the directive.  This is used when "viewSpace" is true.  Any cameras that are encountered in the subtree that this directive is applied to will reset this value to their view transformation. 
DEFAULT:
[1, 0, 0, 0,
 0, 1, 0, 0,
 0, 0, 1, 0,
 0, 0, 0, 1]

NOTE:  This attribute is useful when the bounding box needs to be in view-space, and no cameras will be encountered in the applied subtree; e.g., when applying this directive to a Model node's subtree.
4x4 floating point matrix X X

<BwInclude>

Description

A processing instruction which instructs Bridgeworks to parse an xml document.

Derives From

None

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
url a string  Instructs Bridgeworks to load and parse the specified document. string X X

Examples

<?bwinclude url="filename.xml"?>

<Bw>

Description

A processing instruction currently used for re-initialization of Bridgeworks; although additional commands are possible.

Derives From

None

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
onLoad "initialize" Instructs Bridgeworks to (re)initialize and discard any existing scene data. string X X

Examples

<?bw onLoad="initialize"?>

<BwPlugin>

Description

A processing instruction which instructs Bridgeworks to load a plugin.

Derives From

None

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
url "BBD3D8Engine"
"BBOGL11Engine"
Specifies the rendering engine. string X  
action "load" Instructs Bridgeworks to load the specified rendering engine. string X  

Examples

<?bwplugin url="BBD3D8Engine" action="load"?>

Camera

Description

The base class for cameras.

Derives From

ParentableMotionElement

Extended By

<OrthographicCamera>, <PerspectiveCamera>

Attributes

Attribute Value Description Data Type Plugin WebGL
farDistance a positive number Specifies the distance from the camera to the far clipping plane.
DEFAULT:  0
float X X
nearDistance a positive number Specifies the distance from the camera to the near clipping plane.
DEFAULT:  0
float X X
sectorOriginUpdatesEnabled true
false
Sets whether or not sector origin updates occur automatically.  When enabled,
automatic sector origin updates occur whenever the distance between the camera's world position and the current sector origin exceed 100,000 units.
DEFAULT:  false 

NOTE:  Sector coordinates are used to reduce floating-point roundoff errors when world coordinates are very large.  Rendering artifacts from floating-point roundoff errors include "jittery" scene- and object-inspection, among others.  Sector coordinates are generally transparent to the user when automatic sector origin updates are enabled; however, some situations require the user to manually update the sector origin using the "updateSectorOrigin" attribute instead of using automatic updates.
boolean X  
updateSectorOrigin PulseAttr Setting (pulsing) this attribute forces an update of the sector origin (see "sectorOriginUpdatesEnabled" for a description of sector coordinates). PulseAttr X
viewports AttributeVector<ViewportAttr> The vector of viewports this camera has been rendered into; read-only, setting will have no effect. AttributeVector<ViewportAttr> X
viewVolume ViewVolumeAttr The view-volume of the camera; read-only, setting will have no effect. ViewVolumeAttr X

Chart

Description

The base class for charts.

Derives From

ParentableMotionElement

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
autoValueAxisMinMax true
false
Enable/Disable automatic value-axis min/max calculation; when enabled, "valueAxisMin" and "valueAxisMax" are obtained from the dataset.
DEFAULT:  false
boolean X
categoryAxisCrossesAtValue a number DEFAULT:  0 float X
categoryPositions_X an array of numbers floating point array X
dissolve [0 to 1] DEFAULT:  0 float X
plotArea BBoxAttr BBoxAttr X
plotModelName a model name DEFAULT:  "" string X
plotModels AttributeVector<
AttributeVectorNode>
AttributeVector<AttributeVectorNode> X
reverseCategories true
false
DEFAULT:  false boolean X
reverseValues true
false
DEFAULT:  false boolean X
seriesPositions_Z an array of numbers floating point array X
style Reserved for future support. unsigned integer X
valueAxisMax a number DEFAULT:  0 float X
valueAxisMin a number DEFAULT:  0 float X

<ClipPlane>

Description

Defines a clip plane which clips scene geometry based upon the position of the geometry relative to the plane.

Derives From

ParentableMotionElement

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
plane Plane Sets the plane defining the clip plane.  This plane is transformed by the ClipPlane's current world transformation matrix.
Geometry on the negative side of the plane (side opposite the plane normal) will be clipped.
Plane X

Examples

Clip Plane
Isolate Clip Plane

<colorBand>

Description

Attribute class for specifying color bands used by IsoShaders.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
cyclePriority_A an integer Sets the priority for cycling through the alpha component.  When calculating a discreet color within the color band, the components are incremented (or decremented) from their "startColor" value to their "endColor" value starting with the component with the highest cycle priority value, followed by the component with the second-highest cycle priority value, and so on.
DEFAULT:  0

NOTE:  if all priorities are equal, the cycling order will be RGBA.
integer X
cyclePriority_B an integer Sets the priority for cycling through the blue component.  When calculating a discreet color within the color band, the components are incremented (or decremented) from their "startColor" value to their "endColor" value starting with the component with the highest cycle priority value, followed by the component with the second-highest cycle priority value, and so on.
DEFAULT:  0

NOTE:  if all priorities are equal, the cycling order will be RGBA.
integer X
cyclePriority_G an integer Sets the priority for cycling through the green component.  When calculating a discreet color within the color band, the components are incremented (or decremented) from their "startColor" value to their "endColor" value starting with the component with the highest cycle priority value, followed by the component with the second-highest cycle priority value, and so on.
DEFAULT:  0

NOTE:  if all priorities are equal, the cycling order will be RGBA.
integer X
cyclePriority_R an integer Sets the priority for cycling through the red component.  When calculating a discreet color within the color band, the components are incremented (or decremented) from their "startColor" value to their "endColor" value starting with the component with the highest cycle priority value, followed by the component with the second-highest cycle priority value, and so on.
DEFAULT:  0

NOTE:  if all priorities are equal, the cycling order will be RGBA.
integer X
endColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
The ending color for the color band.
DEFAULT:  <endColor r="0" g="0" b="0" a="0"/>
4D floating point vector X
startColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
The starting color for the color band.
DEFAULT:  <startColor r="0" g="0" b="0" a="0"/>
4D floating point vector X

Command

Description

The base class for commands.

Derives From

EventListener

Extended By

<AppendNode>, <AutoInterpolate>, <CommandSequence>, <ConnectAttributes>, <ConnectOutputs>, <Evaluate>, <ExecuteDirective>, <InsertNode>, <Locate>, <Morph>, <MotionInterpolate>, <Play>, <PrintGraph>, <RegisterAttributes>, <Remove>, <ReplaceNode>, <ScreenCapture>, <SendMessage>, <Set>, <SetRange>, <ShadeElevations>, <ShadeSlopes>, <Stop>

Attributes

Attribute Value Description Data Type Plugin WebGL
commandEnabled true
false
Sets the enabled state for the command.
DEFAULT:  true

NOTE:  traditionally "enabled" would be used, but this would create a conflict for commands which register target attributes to themselves, like "Set", when used with targets that have an "enabled" attribute... the command must register the target's "enabled" to itself, which would occlude its own.

PROGRAMMER'S NOTE:  what are the circumstances when this would be used?  Is it necessary?  Consider deprecation.
boolean X
target a string Sets the target container to perform actions upon.
DEFAULT:  ""
string X X
undoable true
false
Enables/Disables the "undoable" state for the command; sets whether or not the command can be undone.
DEFAULT:  true

NOTE:  not all commands support an undo operation.
boolean X

<CommandSequence>

Description

A command which sequences though a list of commands when triggered.

Derives From

Command

Extended By

None

Attributes

None

Examples

CommandSequence
Extrude Individual Counties Based On A CommandSequence's Trigger Attribute

<CompoundTransform>

Description

A node which applies a compound transformation (translation/rotation/pivot/scale) to the current world-transfomation matrix in the scene graph.

Derives From

<Transform>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
pivot x: a number
y: a number
z: a number
Sets the pivot point, the point about which rotation occurs.
DEFAULT:  <pivot x="0" y="0" z="0"/>
3D floating point vector X
rotation x: a number
y: a number
z: a number
Sets the rotation angles for creating the rotation matrix.  Each angle specifies the degrees of rotation about it's respective axis, e.g.,
(45, 50, 60) would mean rotate 45 degrees about the x-axis, 50 degrees about the y-axis, and 60 degrees about the z-axis.
DEFAULT:  <rotation x="0" y="0" z="0"/>
3D floating point vector X
scale x: a number
y: a number
z: a number
Sets the scaling factors for creating the scaling matrix.
DEFAULT:  <scale x="1" y="1" z="1"/>
3D floating point vector X
translation x: a number
y: a number
z: a number
Sets the translation units for creating the translation matrix.
DEFAULT:  <translation x="0" y="0" z="0"/>
3D floating point vector X

<ConnectAttributes>

Description

A command which connects (targets) 2 or more attributes together.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
connectionType "DisconnectAllSources"
"DisconnectAllTargets"
"dissolve"
"flight"
"geo"
"sceneInspection"
"transform"
Specifies a connection scheme between the source and target containers.
DEFAULT:  ""
string X X
persist true
false
Sets whether or not the attribute connections should persist.
DEFAULT:  true
boolean X X
source a string Sets the source container for attribute connection; synonymous with sourceContainer.
DEFAULT:  ""
string X X
sourceAttribute a string Sets a source attribute for attribute connection; pairs with targetAttribute.
DEAULT:  ""
string X X
sourceContainer a string Sets the source container for attribute connection; synonymous with source.
DEFAULT:  ""
string X X
sourceEvaluator   Deprecated; do not use.    
sourceOutput Deprecated; do not use.    
targetAttribute a string Sets a target attribute for attribute connection; pairs with sourceAttribute.
DEFAULT:  ""
string X X
targetContainer a string Sets the target container for attribute connection; synonymous with target.
DEFAULT:  ""
string X X

Examples

ConnectAttributes

<ConnectOutputs>

Description

Deprecated; do not use. Use ConnectAttributes instead.

Derives From

Command

Extended By

None

Attributes

None

Examples

ConnectOutputs

<DirectionalLight>

Description

A node which adds a directional light to the scene.

Derives From

Light

Extended By

None

Attributes

None

Examples

Initialize A New Bridgeworks Scene With A Single Model

Directive

Description

The base class for directives.

Derives From

AttributeContainer

Extended By

SGDirective, <UpdateDirective>

Attributes

Attribute Value Description Data Type Plugin WebGL
enabled true
false
Sets the enabled state for the directive.
DEFAULT:  true
boolean X X
name a string Sets the name of the directive.
DEFAULT:  ""
string X X
rootNode AttributePointerAttr A pointer to the root node used as the root for directive execution. AttributePointerAttr X X
userData pointer A pointer to user data.
DEFAULT:  NULL
unsigned integer X

<Dissolve>

Description

A node which sets the current dissolve for the scene.

Derives From

SGNode

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
dissolve [0 to 1] Sets the dissolve amount.
DEFAULT:  0
float X

<edge>

Description

An attribute used to define graph diagram edges.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
label a string Sets a label for the edge.
DEFAULT:  ""
string X
midpointScreenPosition x: a number
y: a number
z: a number
The screen position of the edge's midpoint.
DEFAULT:  <midpointScreenPosition x="0" y="0" z="0"/>
3D floating point vector X
name a string The edge's name.
DEFAULT:  ""
string X
source a string The name of the edge's source node.
DEFAULT:  ""
string X
sourcePosition x: a number
y: a number
z: a number
The screen position of the source node.
DEFAULT:  <sourcePosition x="0" y="0" z="0"/>

PROGRAMMER'S NOTE:  this attribute is not updated or retrieved by code.  Consider deprecation.
3D floating point vector X
style edgeStyle Defines the style of the edge. edgeStyle X
target a string The name of the edge's target node.
DEFAULT:  ""
string X
targetPosition x: a number
y: a number
z: a number
The screen position of the target node.
DEFAULT:  <targetPosition x="0" y="0" z="0"/>

PROGRAMMER'S NOTE:  this attribute is not updated or retrieved by code.  Consider deprecation.
3D floating point vector X

EdgeStyleAttr

Description

An attribute used to define graph-edge properties.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
color r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the line color.
DEFAULT:  <color r="0" g="0" b="0" a="0"/>
4D floating point vector X
contour 0
1
2
Sets the line contour.
0 = A to B; creates a straight line between endpoints; see example
1 = Orthogonal; creates 2 lines between endpoints; see example
2 = Indented; creates 3 lines between endpoints; see example
DEFAULT:  0
unsigned integer X
p0_endStyle 0
1
Sets the end style for endpoint "A".
0 = None
1 = Arrowhead
DEFAULT:  0
unsigned integer X
p0_endStyleScale a number Sets the scale of the end style for endpoint "A".
DEFAULT:  1
float X
p1_endStyle 0
1
Sets the end style for endpoint "B".
0 = None
1 = Arrowhead
DEFAULT:  0
unsigned integer X
p1_endStyleScale a number Sets the scale of the end style for endpoint "B".
DEFAULT:  1
float X
width a positive number Sets the line width in pixels.
DEFAULT:  1
float X

<Evaluate>

Description

A command which evaluates an evaluator.

Derives From

Command

Extended By

None

Attributes

None

Examples

Evaluate

Evaluator

Description

The base class for evaluators.

Derives From

Node

Extended By

<KeyframeInterpolator>, LayoutEvaluator, <MapProjectionCalculator>, <ObjectInspector>, <SceneInspector>

Attributes

Attribute Value Description Data Type Plugin WebGL
expired true
false
Flag that indicates if the evaluator should continue being evaluated or not.  The RenderAgent will not evaluate expired evaluators. 
DEFAULT:  false
boolean X X

EventListener

Description

The base class for event listeners.

Derives From

Agent

Extended By

Command

Attributes

Attribute Value Description Data Type Plugin WebGL
event  a string The name of an event this listener listens for; multiple events can be specified, as in:  <event>Foo</event><event>Bar</event>...
DEFAULT:  ""
string X X
listen true
false
Enable/Disable listening on this object.
DEFAULT:  true
boolean X X
numResponses an integer The number of times this listener should respond to events, or -1 for unlimited responses.
DEFAULT:  1 (respond once)
integer X X
trigger a string A string specifying a trigger that must occur before this listener responds to events.
DEFAULT:  ""

EXAMPLE:  The trigger:  "RenderAgent/globalTimeInSecs=3" would ensure that the RenderAgent's "globalTimeInSecs" attribute has a value of 3 (or greater), before responding to events. 

NOTE:  currently equality (=) and inequality (!=) are the operators supported for the trigger comparison string.
string X

<ExecuteDirective>

Description

A commands which executes a directive.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
root a string The name of the root node to execute the target directive upon. string X

<Fog>

Description

A node which adds fog to the scene.

Derives From

SGNode

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
color r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the fog color.
DEFAULT:  <color r="0" g="0" b="0" a="0"/>
4D floating point vector X
density any positive number Sets the fog density.
DEFAULT:  0
float X
end any number Sets the fog end, the far distance used in the linear fog equation.
DEFAULT:  0
float X
mode 0
1
2
3
4
5
6
Specifies the fog equation mode.
0 = None
1 = Per-vertex exponential
2 = Per-vertex exponential-squared
3 = Per-vertex linear
4 = Per-pixel exponential
5 = Per-pixel exponential-squared
6 = Per-pixel linear
DEFAULT:  1
integer X
start any number Sets the fog start, the near distance used in the linear fog equation.
DEFAULT:  0
float X

Examples

Add Fog

<FontStyle>

Description

An attribute for specifying font properties.

Derives From

Style

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
antialiasType
0
1
2
3
Specifies the antialiasing type applied to the font.
0 = None
1 = 2-Pass
2 = 4-Pass
3 = 8-Pass
DEFAULT:  3
unsigned integer X
borderColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the border color of the font.
DEFAULT:  <borderColor r="0" g="0" b="0" a="1"/>
4D floating point vector X
borderWidth A positive number Sets the width of the font border.
DEFAULT:  3
float X
color r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Specifies the color of the font.
DEFAULT:  <color r="1" g="1" b="1" a="1"/>
4D floating point vector X X
effects strikethrough
double strikethrough
superscript
subscript
[UNSUPPORTED] Effects applied to the font; multiple effects separated by "|"
DEFAULT:  ""
string X
font Any available system font name Specifies the font typeface.
DEFAULT:  "Arial"
string X X
opacity [0 to 1] Sets the font opacity.
DEFAULT:  1
float X X
size A positive integer Sets the font size.
DEFAULT:  18
unsigned integer X X
style Bold
Heavy
Normal
Thin
Sets the style of the font.
DEFAULT:  "Bold"
string X X

Geometry

Description

The base class for geometry nodes.

Derives From

RenderableElement

Extended By

<VertexGeometry>

Attributes

Attribute Value Description Data Type Plugin WebGL
approximationLevels any positive integer Sets the number of sphere-tree approximation levels for the geometry;
used by ray-picking and other techniques employing the use of approximations
of geometry.
DEFAULT:  1
unsigned integer X
cullable true
false
Sets the cullable state for the geometry.
DEFAULT:  true
boolean X X
flipPolygons true
false
Sets the "flipPolygons" attribute for the geometry.  If true, the directions of geometric
normals are reversed from their original directions.
DEFAULT:  false
boolean X  
intersectee true
false
Sets whether or not the geometry can be collided with during collision detection.  If false, active colliders ("intersectors") will not test against this geometry; see also:  "intersector".
DEFAULT:  true
boolean X
intersector true
false
Sets whether or not the geometry is an active collider for collision detection.  Active colliders ("intersectors") are tested against "instersectees" during collision detection.
DEFAULT:  true
boolean X
selectable true
false
Sets the selectable state for the geometry, which determines if it can be selected by the selection listener.
DEFAULT:  true
boolean X X
shadowCaster true
false
Sets whether or not the geometry casts shadows when shadow casting is enabled.
DEFAULT:  false
boolean X
shadowTarget true
false
Sets whether or not the geometry receives shadows when shadow casting is enabled.
DEFAULT:  true
boolean X
show true
false
Sets the show state for the geometry.
DEFAULT:  true
boolean X
showApproximationLevel any integer Displays the sphere-tree approximation level for the geometry when set to a value in the range [0, approximationLevels); see "approximationLevels" above. 
DEFAULT:  -1
integer X
sortPolygons true
false
Enables the sorting of polygons for the geometry; when enabled, polygons are sorted according to their distance from the camera, and drawn in the order from farthest to nearest.
DEFAULT:  false
boolean X
stationary true
false
Sets the stationary state of the geometry; used as a hint to collision detection to enhance performance.  DEFAULT:  false boolean X

<GlobalIllumination>

Description

A node which sets the current global illumination for the scene.

Derives From

SGNode

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
ambient r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the ambient RGBA intensity of the global light.
DEFAULT:  <ambient r="0" g="0" b="0" a="0"/>
4D floating point vector X X

Examples

Initialize A New Bridgeworks Scene With A Single Model

<GraphData>

Description

An attribute for specifying node, edge, and layout information for graphs.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
edges AttributeVector<edge> Vector of graph edges. AttributeVector<edge> X
edgesPtr AttributePointerAttr A pointer to the "edges" attribute. AttributePointerAttr X
edgesUpdated PulseAttr Pulsed whenever the edges vector is updated. PulseAttr X
layoutOrigin x: a number
y: a number
z: a number
The world-space origin for the layout.
DEFAULT:  <layoutOrigin x="0" y="0" z="0"/>
3D floating point vector X
layoutRootName a node name The name of the node representing the layout root.
DEFAULT:  ""
string X
name a string The name of this container.
DEFAULT:  ""
string X
nodeRootName a node name The name of the node representing the root of the subtree containing the graph nodes.
DEFAULT:  ""
string X
nodes AttributeVector<node> Vector of graph nodes. AttributeVector<Node> X
nodesPtr AttributePointerAttr A pointer to the "nodes" attribute. AttributePointerAttr X
nodesUpdated PulseAttr Pulsed whenever the nodes vector is updated. PulseAttr X
selfPtr AttributePointerAttr A pointer to this container. AttributePointerAttr X
spanningTreePtr pointer A pointer to the spanning tree for the current edge list. unsigned integer X

<GraphDiagram>

Description

A node for specifying and displaying 3-dimensional graphs.

Derives From

Node

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
graphData AttributeVector<GraphData> Vector of graph data; must have a 1:1 correspondence with "layouts"; each element of graph data is layed-out by the corresponding layout evaluator of "layouts", e.g., graphData[0] layed-out by layouts[0], ..., graphData[n] layed-out by layouts[n]. AttributeVector<GraphData> X
layouts AttributeVectorLayoutEvaluator Vector of layouts; must have a 1:1 correspondence with "graphData"; each element of "graphData" is layed-out by the corresponding layout evaluator of "layouts", e.g., graphData[0] layed-out by layouts[0], ..., graphData[n] layed-out by layouts[n]. AttributeVector<LayoutEvaluator> X

<Group>

Description

A node for grouping nodes in the scene graph; the base class for nodal groups.

Derives From

SGNode

Extended By

<Selector>, <Sequencer>

Attributes

Attribute Value Description Data Type Plugin WebGL
proxyChildAttrs true
false
Sets whether or not child node attributes should be duplicated and targeted by this node.  If true, attributes of direct children are duplicated
by this node, and targeted to the corresponding child node attributes, thereby creating a "proxy" of the child attributes; when the user modifies a proxied attribute, all corresponding children's attributes are updated as well; this allows the user to modify an attribute once on the Group node and thereby affect all children.
DEFAULT:  false

EXAMPLE:  given a Dissolve node child, if proxyChildAttrs was set, the "dissolve" attribute would be duplicated in the Group node and targeted to the Dissolve node's "dissolve" attribute.  Setting "dissolve" on the Group node would then affect the Dissolve node as well.

NOTE:  Group node attributes that have the same name as child attributes are not proxied; e.g., "name" would not be duplicated, since it is a member of the shared base class Node.
boolean X

Examples

Initialize A New Bridgeworks Scene With Multiple Models

HexColorAttr

Description

An attribute that stores a color as an 8-element hexidecimal character string, in ABGR component order (2 characters per component), as in "0xFFFFFFFF".

Derives From

AttributeImpl

Extended By

None

Attributes

None

<HTMLLabel>

Description

A node defining a label which displays HTML content.

Derives From

RasterComponent

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
htmlLabelStyle HTMLLabelStyle Sets the html style for the label. HTMLLabelStyle X
labelHeight a non-negative number The label width in pixels; read-only, setting will have no effect. unsigned integer X
labelWidth a non-negative number The label height in pixels; read-only, setting will have no effect. unsigned integer X
pageHeight a non-negative number The html page width in pixels; read-only, setting will have no effect. unsigned integer X
pageWidth a non-negative number The html page height in pixels; read-only, setting will have no effect. unsigned integer X
windowHandle pointer A pointer to the window handle within which this label is displayed.
DEFAULT:  NULL 
unsigned integer X

<HTMLLabelStyle>

Description

Defines the styles for an HTML label.

Derives From

Style

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
bgColor HexColorAttr Sets the background color for the page.
DEFAULT:  0xFFFFFFFF (white)
HexColorAttr X  
height a non-negative number The height of the label.
DEFAULT:  0
unsigned integer X X
html an html string The html to render.  If both "html" and "url" are specified, "url" takes precedence.
DEFAULT:  ""
string X
left a non-negative number The x screen coordinate for capturing the rendered html; measured top-down, starting from (0, 0).
DEFAULT:  0
unsigned integer X
top a non-negative number The y screen coordinate for capturing the rendered html; measured top-down, starting from (0, 0).
DEFAULT:  0
unsigned integer X
url a URL string The URL of the html page to render.  If both "html" and "url" are specified, "url" takes precedence. 
DEFAULT:  ""
string X
width a non-negative number The width of the label.
DEFAULT:  0
unsigned integer X X

<IconStyle>

Description

An attribute for specifying icon properties.

Derives From

Style

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
alphaUrl An image file URL Specifies the alpha image filename for the icon.
DEFAULT:  ""
string X
color r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the color of the icon.  The rgba color is multiplied with the rgba pixels 
of the icon image.
DEFAULT:  <color r="1" g="1" b="1" a="1"/>
4D floating point vector X X
opacity [0 to 1] Sets the icon opacity.
DEFAULT:  1
float X X
scale x: a number
y: a number
z: a number
Sets the scaling factors for the icon's dimensions; only the x and y values are
used.
DEFAULT:  (1, 1, 1)
3D floating point vector X X
url An image file URL Specifies the image filename for the icon.
DEFAULT:  ""
string X X

ImageAttr

Description

An attribute class for defining an image.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
byteAlignment 1
2
4
8
Specifies the alignment requirements for the start of each pixel row in memory.  Valid values are:
1 = byte-alignment
2 = rows aligned to even-numbered bytes
4 = word alignment
8 = rows start on double-word boundaries
DEFAULT:  0 (unspecified)
unsigned integer X
height a positive integer The image height, in pixels.
DEFAULT:  0 (unspecified)
unsigned integer X
pixelFormat 0
1
2
3
4
5
6
7
8
0 = R8G8B8 (24-bit RGB)
1 = B8G8R8 (24-bit BGR)
2 = X8X8X8 (24-bit RGB with unspecified component order)
3 = R8G8B8A8 (32-bit RGBA)
4 = B8G8R8A8 (32-bit BGRA)
5 = A8R8G8B8 (32-bit ARGB)
6 = A8B8G8R8 (32-bit ABGR)
7 = X8X8X8X8 (32-bit RGBA with unspecified component order)
8 = A8 (8-bit Alpha)
DEFAULT:  -1 (unspecified)
integer X
pixels an array of unsigned chars The image pixel array. unsigned char array X
width a positive integer The image width, in pixels.
DEFAULT:  0 (unspecified)
unsigned integer X

ImportMgr

Description

The manager class that controls file loading in Bridgeworks.

Derives From

Threadable

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
contentDirectory a string The local content directory.
DEFAULT: ""
string X
indexedGeometry true
false
True if geometry may be indexed when imported, false if not; Indexed geometry is more efficient, but cannot always be used. For example, an object which is morphed cannot be indexed.
DEFAULT: true
boolean X
invertAlpha true
false
True if alpha values should be inverted on imported images, false if not.
DEFAULT: false
boolean X
name a string Sets the name for this.
DEFAULT:  ""
string X
serverContentDirectory a string The server content directory.
DEFAULT: ""
string X
url a string The url of the file to import; import begins when set.
DEFAULT: ""
string X

IndexedGeometry

Description

The base class for indexed geometry.

Derives From

<VertexGeometry>

Extended By

<IndexedLineList>, <IndexedPointList>, <IndexedTriList>

Attributes

Attribute Value Description Data Type Plugin WebGL
vertexIndices an array of positive integers The indices defining the polygons for indexed geometry types.  integer array X

<IndexedLineList>

Description

A node which adds one or more 3-dimensional lines to the scene using indexed vertices.

Derives From

IndexedGeometry

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
width a positive number Sets the width of the lines in pixels.
DEFAULT:  1
float X

<IndexedPointList>

Description

A node which adds one or more 3-dimensional points to the scene using indexed vertices.

Derives From

IndexedGeometry

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
size a positive number Sets the size of the points in pixels.
DEFAULT:  1
float X

<IndexedTriList>

Description

A node which adds one or more 3-dimensional triangles to the scene using indexed vertices.

Derives From

IndexedGeometry

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
normals an array of numbers Specifies the 3D normals for the triangles, in xyz order:  [x0, y0, z0, x1, y1, z1, ..., xN, yN, zN] floating point array X
flipPolygons true
false
Sets the "flipPolygons" attribute for the triangles.  If true, the directions of the normals are reversed from their original directions.
DEFAULT:  false
boolean X

<InsertNode>

Description

Inserts a node at the beginning of the list of child nodes for the current node in the scene graph.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
child a string The name of the child node; the child node will be inserted into the parent node's list of children.
DEFAULT:  ""
string X
index a non-negative number The position at which the child node should be inserted before.  If zero, the child node will be inserted at the beginning.
DEFAULT:  -1 (unspecified)
integer X
parent a string The name of the parent node; the child node will be inserted into the parent node's list of children (before the child positioned at "index").
DEFAULT:  ""
string X

<IntersectDirective>

Description

A directive which performs intersection (collision) detection on the scene graph.

Derives From

SGDirective

Extended By

None

Attributes

None

<Isolator>

Description

A group node which supports isolation of rendering settings set by any nodes in the isolator's subtree.

Derives From

None

Extended By

<Surface>

Attributes


Derives from Group
Examples: Rotate A Label Initialize A New Bridgeworks Scene With Multiple Models
Attribute Value Description Data Type Plugin WebGL
isolateClipPlanes true
false
Enables/Disables ClipPlane isolation.
DEFAULT:  false
boolean X
isolateDissolves true
false
Enables/Disables Dissolve isolation.
DEFAULT:  false
boolean X X
isolateFog true
false
Enables/Disables Fog isolation.
DEFAULT:  false
boolean X
isolateGlobalIlluminations true
false
Enables/Disables GlobalIllumination isolation.
DEFAULT:  false
boolean X
isolateLightModels true
false
Enables/Disables LightModel isolation.
DEFAULT:  false
boolean X
isolateLights true
false
Enables/Disables Light isolation.
DEFAULT:  false
boolean X
isolateMaterials true
false
Enables/Disables Material isolation.
DEFAULT:  false
boolean X
isolateRenderModes true
false
Enables/Disables RenderMode isolation.
DEFAULT:  false
boolean X
isolateTextures true
false
Enables/Disables Texture isolation.
DEFAULT:  false
boolean X X
isolateTransforms true
false
Enables/Disables Transform isolation.
DEFAULT:  false
boolean X  

Examples

Rotate A Label
Initialize A New Bridgeworks Scene With Multiple Models

<IsoShaderBand>

Description

An attribute for specifying the bands (typically color) of an IsoShader.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
colorBand colorBand Defines the color band for the range [minValue, maxValue]. colorBand X
maxValue a number The range maximum value.
DEFAULT:  0
float X
minValue a number The range minimum value.
DEFAULT:  0
float X

<KeyframeInterpolator>

Description

An evaluator which performs keyframe-based interpolation.

Derives From

Evaluator

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
time a number Sets the time at which the interpolator is evaluated.
DEFAULT:  0
float X X
channels AttributeVector<KeyframesAttr> The vector of keyframes. AttributeVector<KeyframesAttr> X X
startKeys AttributeVector<IntegerAttr> The vector of start keys.  Specifying a start key overrides the actual start key in the list of keyframes, allowing for a subset of the keyframes to be used for interpolation. AttributeVector<IntegerAttr> X  
endKeys AttributeVector<IntegerAttr> The vector of end keys.  Specifying an end key overridese the actual end key in the list of keyframes, allowing for a subset of the keyframes to be used for interpolation. AttributeVector<IntegerAttr> X  
preBehaviors AttributeVector<IntegerAttr> The vector of interpolation pre-behaviors. AttributeVector<IntegerAttr> X X
postBehaviors AttributeVector<IntegerAttr> The vector of interpolation post-behaviors. AttributeVector<IntegerAttr> X X

<Label>

Description

A node that defines a label; the base class for all Label nodes.

Derives From

RasterComponent

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
text  a string Sets the label text.
DEFAULT:  ""
string  X
description a string Sets the label description which is placed into a balloon tip label.
DEFAULT:  ""
string X
depthShadingEnabled true
false
Specifies whether or not the label will be shaded when on top of or underneath other label(s).
DEFAULT:  true
boolean X
iconStyle IconStyle Sets the icon style for the label. IconStyle X x
labelStyle LabelStyle Sets the label style for the label. LabelStyle X

Examples

Add A Parented Label With Icon
Rotate A Label

<LabelStyle>

Description

An attribute for specifying label properties.

Derives From

Style

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
angle [0 to 360] Specifies the angle of rotation for the label.
DEFAULT:  0
float X
backgroundColor r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the background color for the label.
DEFAULT:  <backgroundColor r="0" g="0" b="0" a="1"/>
4D floating point vector X X
backgroundOpacity [0 to 1] Sets the background opacity for the label.
DEFAULT:  0
float X X
fontStyle FontStyle Sets the font style for the label. FontStyle X x
format bottom
center
endEllipsis
left
right
rtlReading
top
Specifies formatting options for the label.  Multiple formatting options are
separated with "|".
DEFAULT:  "left"
string X
height A positive integer Sets the height of the label.  If 0, the height is calculated automatically.
DEFAULT:  0
unsigned integer X
offset x: a number
y: a number
Specifies an offset in pixels from the anchor point.
DEFAULT:  (0, 0)
2D floating point vector X X
padding A positive integer Specifies the amount of padding to add to the label's dimensions; the padding
is distributed equally on the left and right and on the top and bottom to the
width and height of the label, respectively.
DEFAULT:  0
unsigned integer X
scale x: a number
y: a number
z: a number
Sets the scaling factors for the label's dimensions; only the x and y values are
used.
DEFAULT:  (1, 1, 1)
3D floating point vector X
textAlign topLeft
middleLeft bottomLeft topCenter middleCenter bottomCenter topRight bottomRight middleRight
Specifies the label's text alignment.
DEFAULT:  "middleRight"
string X
width A positive integer Sets the width of the label.  If 0, the width is calculated automatically.
DEFAULT:  0
unsigned integer X

LayoutEvaluator

Description

The base class for graph-layout evaluators.

Derives From

Evaluator

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
edges AttributeVector<edge> Vector of graph edges. AttributeVector<edge> X
edgesPtr AttributePointerAttr A pointer to the "edges" attribute. AttributePointerAttr X
edgeVertices an array of numbers The edge vertices.  Each edge is defined with 6 floating point values:  3 for the source and 3 for the target, in xyz order. floating point array X
graphDataPtr AttributePointerAttr A pointer to the GraphData associated with this layout. AttributePointerAttr X
layoutOrigin x: a number
y: a number
z: a number
The world-space origin for the layout.
DEFAULT:  <layoutOrigin x="0" y="0" z="0"/>
3D floating point vector X
layoutRoot a node name The name of the node representing the layout root.
DEFAULT:  ""
string X
nodes AttributeVector<node> Vector of graph nodes. AttributeVector<Node> X
nodesPtr AttributePointerAttr A pointer to the "nodes" attribute. AttributePointerAttr X
selfPtr AttributePointerAttr A pointer to this container. AttributePointerAttr X
sgRoot a node name The name of the node representing the scene graph root.
DEFAULT:  ""
string X
spanningTreePtr pointer A pointer to the spanning tree for the current edge list. unsigned integer X

Light

Description

The base class for lights.

Derives From

ParentableMotionElement

Extended By

<DirectionalLight>, <PointLight>, <SpotLight>

Attributes

Attribute Value Description Data Type Plugin WebGL
ambient r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the ambient RGBA intensity of the light.
DEFAULT:  <ambient r="0" b="0" g="0" a="1"/>
4D floating point vector X X
constantAttenuation a number Sets the constant attenuation factor for the light.
DEFAULT:  1
float X X
diffuse r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the diffuse RGBA intensity of the light.
DEFAULT:  <diffuse r="1" g="1" b="1" a="1"/>
4D floating point vector X X
linearAttenuation a number Sets the linear attenuation factor for the light.
DEFAULT:  0
float X X
quadraticAttenuation a number Sets the quadratic attenuation factor for the light.
DEFAULT:  0
float X X
shadowCaster true
false
Sets whether or not shadows can be generated by this light when shadow-casting is enabled.
DEFAULT:  false
boolean X X
specular r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the specular RGBA intensity of the light.
DEFAULT:  <specular r="1" g="1" b="1" a="1"/>
4D floating point vector X X

<LightModel>

Description

A node which sets the current light model for the scene.

Derives From

SGNode

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
lightModel 0
1
Specifies the light model to apply.
0 = Material
1 = Vertex Color
Default:  0
integer X

LineAttr

Description

An attribute for defining line properties.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
color r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the line color.
DEFAULT:  <color r="1" g="1" b="1" a="1"/>
4D floating point vector X
contour 0
1
2
Sets the line contour.
0 = A to B; creates a straight line between endpoints; see example
1 = Orthogonal; creates 2 lines between endpoints; see example
2 = Indented; creates 3 lines between endpoints; see example
DEFAULT:  0
unsigned integer X
p0 x: a number
y: a number
z: a number
LineAttr endpoint "A".
DEAULT:  <p0 x="0" y="0" z="0"/>
3D floating point vector X
p0_endStyle 0
1
Sets the end style for endpoint "A".
0 = None
1 = Arrowhead
DEFAULT:  0
unsigned integer X
p0_endStyleScale a number Sets the scale of the end style for endpoint "A".
DEFAULT:  1
float X
p1 x: a number
y: a number
z: a number
LineAttr endpoint "B".
DEAULT:  <p0 x="0" y="0" z="0"/>
3D floating point vector X
p1_endStyle 0
1
Sets the end style for endpoint "B".
0 = None
1 = Arrowhead
DEFAULT:  0
unsigned integer X
p1_endStyleScale a number Sets the scale of the end style for endpoint "B".
DEFAULT:  1
float X
width a positive number Sets the line width in pixels.
DEFAULT:  1
float X

<LineList>

Description

A node which adds one or more 3-dimensional lines to the scene using non-indexed vertices.

Derives From

<VertexGeometry>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
width a positive number Sets the width of the lines in pixels.
DEFAULT:  1
float X

Examples

Add A LineList

<Locate>

Description

A command which locates the target by moving the camera toward its position in 3-dimensional space.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
duration a non-negative number The duration for the interpolation in seconds.
DEFAULT:  1
float X X
easeIn true
false
If true, the beginning "tween" motion will start out slowly and then quickly accelerate; if false, the beginning "tween" motion will play at a constant rate.
DEFAULT:  true 
boolean X X
easeOut true
false
If true, the ending "tween" motion will quickly decelerate as it comes to the end; if false, the ending "tween" motion will play at a constant rate.
DEFAULT:  true
boolean X X
resultFarDistance a non-negative number After execution, this attribute holds the "resultFarDistance" from the internal BBoxLocator evaluator used to locate the target.
DEFAULT:  0
float X X
resultPosition x: a number
y: a number
z: a number
After execution, this attribute holds the "resultPosition" from the internal BBoxLocator evaluator used to locate the target.
DEFAULT:  <resultPosition x="0" y="0" z="0"/>
3D floating point vector X X
resultWidth a non-negative number After execution, this attribute holds the "resultWidth" from the internal BBoxLocator evaluator used to locate the target; only applies when using an orthographic camera. 
DEFAULT:  0
float X X
shape 0
1
2
3
4
Sets the interpolator's shape.
0 = Linear
1 = Stepped
2 = TCB
3 = 1D Bezier
4 = 2D Bezier
DEFAULT:  2
unsigned integer X X
transition true
false
Sets whether or not the locate should occur immediately (transition = false) or should be animated (transition = true).
DEFAULT:  true
boolean X X
updateClipPlanes true
false
Sets whether or not the camera's far clip plane should be updated after location; if true, the camera's far clip plane will be set to the "resultFarDistance" upon execution.
DEFAULT:  false
boolean X X

Examples

Locate

<MapProjectionCalculator>

Description

An evaluator which applies map projections to attributes (typically positional).

Derives From

Evaluator

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
center2d lon: a number
lat: a number
Specifies the center longitude and latitude coordinates for the projection calculation. 
DEFAULT:  <center2d lon="0" lat="0"/>
2D floating point vector X
mapProjection "azimuthalequidistant"
"balthasart"
"behrmann"
"cassini"
"equalarc"
"equalarea"
"gallorthographic"
"gnomic"
"lambert"
"mercator"
"othographic"
"peters"
"polyconic"
"sinusoidal"
"stereographic"
"tristanedwards"
Specifies the map projection to perform when evaluating.
DEFAULT:  "equalarc"
string X
pointWorld x: a number
y: a number
z: a number
A point in world space.  When this attribute is set, the point's geographic location is calculated, and the resulting lon/alt/lat is stored in "resultGeoLocation". 
DEFAULT:  <pointWorld x="0" y="0" z="0"/>
3D floating point vector X
position lon: a number
alt: a number
lat: a number
The input position.
DEFAULT:  <position lon="0" lat="0" lat="0"/>
3D floating point vector X
scale x: a number
y: a number
z: a number
Sets a scaling factor for "resultGeoLocation" and "resultPosition".
DEFAULT:  <scale x="1" y="1" z="1"/>
3D floating point vector X
resultGeoLocation lon: a number
alt: a number
lat: a number
After evaluation, this attribute contains the scaled longitude, altitude, and latitude coordinates of the projected input position. 
DEFAULT:  <resultGeoLocation lon="0" alt="0" lat="0"/>
3D floating point vector X
resultPosition x: a number
y: a number
z: a number
After evaluation, this attribute contains the scaled 3D x, y, and z coordinates of the projected input position.
DEFAULT:  <resultPosition x="0" y="0" z="0"/>
3D floating point vector X
units "kilometers"
"meters"
Sets the measurement units for the map projection.
DEFAULT:  "kilometers"
string X

<Material>

Description

A node which sets the current material for the scene.

Derives From

SGNode

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
ambient r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the ambient component for the material.
DEFAULT:  <ambient r="0.8" g="0.8" b="0.8" a="1"/>
4D floating point vector X X
ambientLevel [0 to 1] Sets the ambient component intensity level for the material.
DEFAULT:  1
float X X
color r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the color for the material.
DEFAULT:  <color r="1" g="1" b="1" a="1"/>
4D floating point vector X X
diffuse r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the diffuse component for the material.
DEFAULT:  <diffuse r="0.2" g="0.2" b="0.2" a="1"/>
4D floating point vector X X
diffuseLevel [0 to 1] Sets the diffuse component intensity level for the material.
DEFAULT:  1
float X X
doubleSided true
false
Sets the double-sided state for the material.
DEFAULT:  false
boolean X X
emissive r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the emissive component for the material.
DEFAULT:  <emissive r="0" g="0" b="0" a="1"/>
4D floating point vector X X
emissiveLevel [0 to 1] Sets the emissive component intensity level for the material.
DEFAULT:  0
float X X
glossiness any positive number Sets the glossiness component for the material.
DEFAULT:  0
float X X
opacity [0 to 1] Sets the opacity of the material.
DEFAULT:  1
float X X
specular r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the specular component for the material.
DEFAULT:  <specular r="0" g="0" b="0" a="1"/>
4D floating point vector X X
specularLevel [0 to 1] Sets the specular component intensity level for the material.
DEFAULT:  1
float X X

<MediaTexture>

Description

A node that adds a media-based (image, movie, etc.) texture to the scene.

Derives From

<Texture>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
alphaFilename a media resource URL Sets the URL of the alpha image; see "imageFilename" for a list of supported media formats.
DEFAULT:  ""
string X
imageFilename a media resource URL Sets the URL of the image.
DEFAULT:  ""

NOTE:  Supported formats include: 
AVI
Bitmap
GIF
JPEG
Motion JPEG
PNG
string X X
negateAlpha true
false
Enables/Disables alpha image negation, which modifies pixels so that each RGBA component is subtracted from 255.
DEFAULT:  false  
boolean X
negateImage true
false
Enables/Disables image negation, which modifies pixels so that each RGBA component is subtracted from 255.
DEFAULT:  false  
boolean X

<Model>

Description

A node for adding file-based (LightWave, ArcView, etc.) geometric objects to the scene.

Derives From

ParentableMotionElement

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
ambient r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the ambient material component for the model.
DEFAULT:  <ambient r="0.8" g="0.8" b="0.8" a="1"/>
4D floating point vector X X
ambientLevel [0 to 1] Sets the ambient material component intensity level for the model.
DEFAULT:  1
float X X
approximationLevels any positive integer Sets the number of sphere-tree approximation levels for the model;
used by ray-picking and other techniques employing the use of approximations
of the model's geometry.
DEFAULT:  1
unsigned integer X
color r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the color for the model.
DEFAULT:  <color r="1" g="1" b="1" a="1"/>
4D floating point vector X X
cullable true
false
Sets the cullable state for the model.
DEFAULT:  true
boolean X X
diffuse r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the diffuse material component for the model.
DEFAULT:  <diffuse r="0.2" g="0.2" b="0.2" a="1"/>
4D floating point vector X X
diffuseLevel [0 to 1] Sets the diffuse material component intensity level for the model.
DEFAULT:  1
float X X
dissolve [0 to 1] Sets the dissolve for the model.
DEFAULT:  0
float X
doubleSided true
false
Sets the double-sided state for surfaces of the model.
DEFAULT:  false
boolean X
emissive r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the emissive material component for the model.
DEFAULT:  <emissive r="0" g="0" b="0" a="1"/>
4D floating point vector X X
emissiveLevel [0 to 1] Sets the emissive material component intensity level for the model.
DEFAULT:  0
float X X
enableSharing true
false
Sets the "enableSharing" attribute for the model.  This attribute determines whether
or not the model will physically share the surface subtree of an identical model already loaded.
Sharing surface subtrees provides for improved efficiency for multiple identical models. 
Howeiver, if surface properties need to be unique between identical models, this value should be false.
DEFAULT:  true
boolean X
flipPolygons true
false
Sets the "flipPolygons" attribute for the geometry comprising the model.  If true, the directions of geometric
normals are reversed from their original directions.
DEFAULT:  false
boolean X
glossiness any positive number Sets the glossiness material component for the model.
DEFAULT:  0
float X X
indexedgeometry true
false
Sets whether or not the model's geometry can be indexed when loaded; must be set prior to loading,
otherwise setting will have no effect.  Indexing geometry provides for improved efficiency for rendering, but cannot always be used, such as when using morphing.
DEFAULT:  true
boolean X
intersectee true
false
Sets whether or not the model can be collided with during collision detection.  If false, active colliders ("intersectors") will not test against this model; see also:  "intersector".
DEFAULT:  true
boolean X
intersector true
false
Sets whether or not the model is an active collider for collision detection.  Active colliders ("intersectors") are tested against "instersectees" during collision detection.
DEFAULT:  true
boolean X
layer any positive integer Sets the layer number of the model.  This attribute is typically not set by the user, but rather it is used by the model importer.
DEFAULT:  0xFFFFFFFF (special value indicating layer not set) 
unsigned integer X
moveable true
false
Sets whether or not the model can be moved by object inspection.
DEFAULT:  true
boolean X
opacity [0 to 1] Sets the opacity of the model.
DEFAULT:  1
float X
pivotAboutGeometricCenter true
false
Sets whether the model should pivot about its geometric center or its actual pivot point during object rotation.
DEFAULT:  true
boolean X
screenScaleEnabled true
false
Enables screen scaling for the model.  When enabled, the model's scale is automatically updated so that its screen dimensions will correspond to "screenScalePixels" (see below) no matter where it is located in the projection space.
DEFAULT:  false
boolean X
screenScalePixels x: a number
y: a number
z: a number
Defines the scale (in pixels) when screen scaling is enabled; see "screenScaleEnabled" above.
DEFAULT:  <screenScalePixels x="0" y="0" z="0"/>
3D floating point vector X
selectable true
false
Sets the selectable state for the model, which determines if it can be selected by the selection listener.
DEFAULT:  true
boolean X X
shadowCaster true
false
Sets whether or not the model casts shadows when shadow casting is enabled.
DEFAULT:  false
boolean X
shadowTarget true
false
Sets whether or not the model receives shadows when shadow casting is enabled.
DEFAULT:  true
boolean X
show true
false
Sets the show state for the model.
DEFAULT:  true
boolean X X
showApproximationLevel any integer Displays the sphere-tree approximation level for the model when set to a value in the range [0, approximationLevels); see "approximationLevels" above. 
DEFAULT:  -1
integer X
sortPolygons true
false
Enables the sorting of polygons for the model; when enabled, polygons are sorted according to their distance from the camera, and drawn in the order from farthest to nearest.
DEFAULT:  false
boolean X
specular r [0 to 1]
g [0 to 1]

b [0 to 1]
a [0 to 1]
Sets the specular material component for the model.
DEFAULT:  <specular r="0" g="0" b="0" a="1"/>
4D floating point vector X X
specularLevel [0 to 1] Sets the specular material component intensity level for the model.
DEFAULT:  1
float X X
stationary true
false
Sets the stationary state of the model; used as a hint to collision detection to enhance performance.  DEFAULT:  false boolean X
texturesEnabled true
false
Enables/disables the drawing of all textures on the model.
DEFAULT:  true
boolean X
textureOpacity [0 to 1] Sets the opacity for all textures on the model.
DEFAULT:  1
float X
url A model file URL Specifies the URL of the model; when the closing </Model> tag is encountered, the model is loaded using this URL.
DEFAULT:  ""
string X X
vertices an array of numbers The vertices of the model. floating point array X

Examples

Initialize Bridgeworks With A Single Model
Initialize Bridgeworks With Multiple Models
CircleLayoutEvaluator With Models

<Morph>

Description

A command for specifying a geometric morph between two objects.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
morphIncr a non-negative number The morph amount increment value.  This value is added to the morph amount on each render cycle until the morph amount equals 1 (the morph amount starts at 0); in morphing, a morph amount of 0 is the source object, a morph amount of 1 is the target object, and a morph amount in the range (0, 1) is a linear combination of the source and target objects. 
DEFAULT:  0
float X
source a string The name of the source object;  the vertices of the target object will be morphed using the source object for the starting vertex positions, and the target object for the ending vertex positions.
DEFAULT:  "" 

NOTE:  the source object must contain the same number of vertices as the target object.
string X

Examples

Morph To Target
Morph To Source
Morph Ball To Cow

<MotionInterpolate>

Description

Creates a spline-based non-linear interpolated transition for any attribute from its current value to a new value.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
easeIn true
false
If true, the beginning "tween" motion will start out slowly and then quickly accelerate; if false, the beginning "tween" motion will play at a constant rate.
DEFAULT:  true 
boolean X X
easeOut true
false
If true, the ending "tween" motion will quickly decelerate as it comes to the end; if false, the ending "tween" motion will play at a constant rate.
DEFAULT:  true
boolean X X
endPosition x: a number
y: a number
z: a number
The ending position for the interpolation.
DEFAULT:  <endPosition x="0" y="0" z="0"/>
3D floating point vector X X
positionControl x: a number
y: a number
z: a number
The normalized curve generation direction vector; the curve is created by finding the midpoint on the curve between startPosition and endPosition, which will reside in the plane containing the line segments (endPosition - startPosition) and (startPosition + positionControl).  Specifically, the midpoint is calculated as:

midPoint = ((startPosition + endPosition) / 2) + (positionControl *  (DistanceBetween(startPosition, endPosition) / 2)).

DEFAULT:  <positionControl x="0" y="0" z="0"/>
3D floating point vector X X
resultPosition x: a number
y: a number
z: a number
The result position of the interpolation.  The KeyframeInterpolator's "resultValues" are targeted to this attribute.
DEFAULT:  <resultPosition x="0" y="0" z="0"/>
3D floating point vector X X
startPosition x: a number
y: a number
z: a number
The starting position for the interpolation.
DEFAULT:  <startPosition x="0" y="0" z="0"/>
3D floating point vector X X

Node

Description

The base class for scene graph nodes.

Derives From

AttributeContainer

Extended By

Evaluator, <GraphDiagram>, SGNode

Attributes

Attribute Value Description Data Type Plugin WebGL
applyLockPtr pointer A pointer to the "applyLock" thread lock, which is locked when directives are applied to this node. unsigned integer X
enabled true
false
Sets the enabled state for the node.  Disabled nodes are not traversed by directives.
DEFAULT:  true
boolean X X
name a string Sets the name of the node.
DEFAULT:  ""
string X X
orphan true
false
Sets whether or not this node is an orphan (not a child of another node).
DEFAULT:  false
boolean X X
synchronousUpdate true
false
Sets whether or not updates should occur immediately upon attribute changes (synchronousUpdate = true), or by the UpdateDirective (synchronousUpdate = false).
DEFAULT:  false

NOTE:  not supported by all node types. 
boolean X

<node>

Description

An attribute used to define graph diagram nodes.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
dimensions x: a number
y: a number
z: a number
The width, height, and depth of the node.
DEFAULT:  <dimensions x="0" y="0" z="0"/>
3D floating point vector X
endPosition x: a number
y: a number
z: a number
The ending position for animating node positional changes.
DEFAULT:  <endPosition x="0" y="0" z="0"/>
3D floating point vector X
expanded true
false
Sets the expanded state for the node (shows/hides the node subtree).
DEFAULT:  true 
boolean X
name a string The name of this container.
DEFAULT:  ""
string X
startPosition x: a number
y: a number
z: a number
The starting position for animating node positional changes. 
DEFAULT:  <startPosition x="0" y="0" z="0"/>
3D floating point vector X
targets AttributeVector<node> The vector of graph node targets for this node (the nodes that form edges with this node). AttributeVector<node> X

NodeMgr

Description

A class containing attributes primarily for the manipulation of scene graph structure.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
maxAnimationTimeInSecs a number The maximum animation time among all keyframe-based animation evaluators in the scene; read-only, setting will have no effect.
DEFAULT: 0
float X
sgPointer a string The name of the node to make the current node pointer for the scene graph. When parsing XML content, new nodes will be added as children of this node.
DEFAULT: ""
string X X

<NullObject>

Description

An object that contains no geometry and will not show up in a rendered image; oftentimes used for parent-based motion.

Derives From

ParentableMotionElement

Extended By

None

Attributes

None

Examples

Label Geographic Locations Using A MapProjectionsCalculator

<ObjectInspector>

Description

An evaluator which controls object-level inspection.

Derives From

Evaluator

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
constraintAxis x: a number
y: a number
z: a number
The world-space axis about which to constrain rotation when "constrainToAxis" is enabled.
DEFAULT:  <constraintAxis x="0" y="0" z="0"/>
3D floating point vector X
constrainToAxis true
false
Enables/Disables constraining rotation to one axis.  When enabled, rotation can only occur about the "constraintAxis".
DEFAULT:  false
boolean X
rotationDelta x: a number
y: a number
z: a number
[not used] 3D floating point vector X
rotationNow x: a number
y: a number
z: a number
Rotates an object [x, y, z] degrees about the about the camera's left, up, and forward direction vectors respectively. 3D floating point vector X
selectionCleared true
false
This attribute is set whenever the user clicks on "empty space" while object inspecting.

PROGRAMMER'S NOTE:  should be a PulseAttr.
boolean X
selectionOccurred true
false
This attribute is set whenever an object is selected while object inspecting.

PROGRAMMER'S NOTE:  should be a PulseAttr.
boolean X
translationDelta x: a number
y: a number
z: a number
Translates an object [x, y, z] units along the camera's left, up, and forward direction vectors respectively. 3D floating point vector X
translationNow x: a number
y: a number
z: a number
[not used] 3D floating point vector X

<OrthographicCamera>

Description

A node which sets the current camera for the scene graph. As the name implies, OrthographicCamera uses an othographic projection (distance from the camera does not influence size).

Derives From

Camera

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
width a positive number Specifies the width of the orthographic projection.  The projection will have the same aspect ratio as the current viewport.
DEFAULT:  2.0
float X

Examples

Schematic View (Orthographic Camera)

<OrthographicProjector>

Description

A node which adds a projector to the scene graph. As the name implies, OrthographicProjector uses orthographic projection (distance from the camera does not influence size).

Derives From

<Projector>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
width a positive number Specifies the width of the orthographic projection.
DEFAULT:  0
float X

Examples

Adding An Orthographic Projection
Adding An Orthographic Projection

ParentableMotionElement

Description

The base class for scene graph elements which can be motion-positioned and parented.

Derives From

RenderableElement

Extended By

Camera, Chart, <ClipPlane>, Light, <Model>, <NullObject>, <Projector>, RasterComponent, <Texture>

Attributes

Attribute Value Description Data Type Plugin WebGL
altitude x: a number
y: a number
z: a number
The altitude of the object; read-only, setting will have no effect.
DEFAULT:  (0, 0, 0)
3D floating point vector X
center x: a number
y: a number
z: a number
Specifies the euclidian geometric center of the object.
DEFAULT:  (0, 0, 0)
3D floating point vector X
geoPosition lon: a number
alt: a number
lat: a number
Sets the geographical position of the object. 3D floating point vector X
inheritPivot_X true
false
Specifies if this object should inherit the x component of its parent's pivot.
DEFAULT:  true
boolean X X
inheritPivot_Y true
false
Specifies if this object should inherit the y component of its parent's pivot.
DEFAULT:  true
boolean X X
inheritPivot_Z true
false
Specifies if this object should inherit the z component of its parent's pivot.
DEFAULT:  true
boolean X X
inheritPosition_X true
false
Specifies if this object should inherit the x component of its parent's position.
DEFAULT:  true
boolean X X
inheritPosition_Y true
false
Specifies if this object should inherit the y component of its parent's position.
DEFAULT:  true
boolean X X
inheritPosition_Z true
false
Specifies if this object should inherit the z component of its parent's position.
DEFAULT:  true
boolean X X
inheritRotation_X true
false
Specifies if this object should inherit the x component of its parent's rotation.
DEFAULT:  true
boolean X X
inheritRotation_Y true
false
Specifies if this object should inherit the y component of its parent's rotation.
DEFAULT:  true
boolean X X
inheritRotation_Z true
false
Specifies if this object should inherit the z component of its parent's rotation.
DEFAULT:  true
boolean X X
inheritScale_X true
false
Specifies if this object should inherit the x component of its parent's scale.
DEFAULT:  true
boolean X X
inheritScale_Y true
false
Specifies if this object should inherit the y component of its parent's scale.
DEFAULT:  true
boolean X X
inheritScale_Z true
false
Specifies if this object should inherit the z component of its parent's scale.
DEFAULT:  true
boolean X X
label a string Sets the label text for this object.
DEFAULT:  ""
string X
latitude x: a number
y: a number
z: a number
The latitude of the object; read-only, setting will have no effect.
DEFAULT:  (0, 0, 0)
X
longitude x: a number
y: a number
z: a number
The longitude of the object; read-only, setting will have no effect.
DEFAULT:  (0, 0, 0)
X
parent a string; the name of another ParentableMotionElement object, or null Specifies the parent object for this object; the parent object must be another ParentableMotionElement, or a sub-class of ParentableMotionElement.  Setting "null" will clear the parent.
DEFAULT:  "null"
string X X
pivot x: a number
y: a number
z: a number
Sets the pivot point of the object, given in world-space.
DEFAULT:  (0, 0, 0)
3D floating point vector X X
position x: a number
y: a number
z: a number
Sets the position of the object, given in world-space.
DEFAULT: (0, 0, 0)
3D floating point vector X X
rotation heading: a number
pitch: a number
bank: a number
Sets the rotation of the object, specified in degrees.
DEFAULT: (0, 0, 0)
3D floating point vector X X
scale x: a number
y: a number
z: a number
Sets the scale of the object.
DEFAULT:  (1, 1, 1)
3D floating point vector X X
screenPosition x: a number
y: a number
z: a number
The screen position of the object, given in screen space; read-only, setting will have no effect.
DEFAULT: (0, 0, 0)
3D floating point vector X
sectorOrigin x: a number
y: a number
z: a number
Sets the sector origin for the object, given in world-space.
DEFAULT: (0, 0, 0)
3D floating point vector X X
sectorPosition x: a number
y: a number
z: a number
Sets the sector position for the object, given in world-space.
DEFAULT: (0, 0, 0)
3D floating point vector X X
sectorWorldCenter x: a number
y: a number
z: a number
The sector-space euclidian geometric center of the object; read-only, setting will have effect.
DEFAULT: (0, 0, 0)
3D floating point vector X X
sectorWorldPosition x: a number
y: a number
z: a number
The sector-space position of the object; read-only, setting will have no effect.
DEFAULT: (0, 0, 0)
3D floating point vector X X
sectorWorldTransform a 4x4 matrix of numbers The sector-space transformation matrix for the object; read-only, setting will have no effect.
DEFAULT:
[1, 0, 0, 0,
 0, 1, 0, 0,
 0, 0, 1, 0,
 0, 0, 0, 1]
4x4 floating point matrix X X
worldCenter x: a number
y: a number
z: a number
The world-space euclidian geometric center of the object; read-only, setting will have effect.
DEFAULT: (0, 0, 0)
3D floating point vector X X
worldPosition x: a number
y: a number
z: a number
The world-space position of the object; read-only, setting will have no effect.
DEFAULT: (0, 0, 0)
3D floating point vector X X
worldRotation heading: a number
pitch: a number
bank: a number
The world-space rotation of the object;
read-only, setting will have no effect.
DEFAULT: (0, 0, 0)
3D floating point vector X X
worldScale x: a number
y: a number
z: a number
The world-space scale of the object; read-only, setting will have no effect.
DEFAULT: (0, 0, 0)
3D floating point vector X X
worldTransform a 4x4 matrix of numbers The world-space transformation matrix for the object; read-only, setting will have no effect.
DEFAULT:
[1, 0, 0, 0,
 0, 1, 0, 0,
 0, 0, 1, 0,
 0, 0, 0, 1]
4x4 floating point matrix X X

<PerspectiveCamera>

Description

A node which sets the current camera for the scene graph. As the name implies, PerspectiveCamera uses an perspective projection (distance from the camera does influence size).

Derives From

Camera

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
zoom a number Sets the lens zoom.
DEFAULT:  0
float X X

Examples

Initialize A New Bridgeworks Scene With A Single model

<PerspectiveProjector>

Description

A node which adds a projector to the scene graph. As the name implies, PerspectiveProjector uses perspective projection (distance from the camera does influence size).

Derives From

<Projector>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
zoom a number Sets the projection's lens zoom.
DEFAULT:  0
float X

Examples

Adding A PerspectiveProjector

<Plane>

Description

An attribute for specifying 3-dimensional plane parameters.

Derives From

AttributeContainer

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
point x: a number
y: a number
z: a number
A point on the plane.
DEFAULT:  <point x="0" y="0" z="0"/>
3D floating point vector X X
normal x: a number
y: a number
z: a number
The plane normal.
DEFAULT:  <normal x="0" y="0" z="1"/>
3D floating point vector X X
dot a number The dot product of the point and the normal; read-only.
DEFAULT:  0 
float X X

<Play>

Description

A command which instructs Bridgeworks to start playing animations.

Derives From

Command

Extended By

None

Attributes

None

Examples

Play

<PointLight>

Description

A node which adds a point light to the scene.

Derives From

Light

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
range a positive number Sets the range of the light specified in world units.
DEFAULT:  square_root(FLT_MAX)
float X

Examples

Add A PointLight
Change The Position And Color Attributes Of A PointLight Using An AutoInterpolate Command

<PointList>

Description

A node which adds one or more 3-dimensional points to the scene using non-indexed vertices.

Derives From

<VertexGeometry>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
size a positive number Sets the size of the points in pixels.
DEFAULT:  1
float X

Examples

Add A PointList

<PolyLines>

Description

A node which adds one or more 3-dimensional lines to the scene; PolyLines use camera-facing triangles to create the illusion of lines, thus allowing any width to be set on the lines, regardless of underlying render-engine support.

Derives From

<TriList>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
lines AttributeVectorLine The vector of lines. AttributeVector<LineAttr> X

Examples

<PrintGraph>

Description

A command which prints an ASCII representation of the target scene graph to stdout (standard output).

Derives From

Command

Extended By

None

Attributes

None

<Projector>

Description

The base class for projectors.

Derives From

ParentableMotionElement

Extended By

<OrthographicProjector>, <PerspectiveProjector>

Attributes

Attribute Value Description Data Type Plugin WebGL
aspectRatio a positive number Specifies the aspect ratio of the projection, which represents the width divided by the height.
DEFAULT:  1
float X
biasFactor x: a number
y: a number
z: a number
Sets the bias applied to texture coordinates when texture mapping the projection. The projection operation converts eye space into Normalized Device Coordinate (NDC) space.  In this space, the x, y, and z coordinates range from -1 to 1.  Texture coordinates range from 0 to 1.  Therefore mapping the entire image requires scaling by 0.5 (see "scaleFactor") then biasing by 0.5.
DEFAULT:  <biasFactor x="0.5" y="0.5" z="0"/>
3D floating point vector X
farDistance a positive number Specifies the distance from the projector to the far clipping plane.
DEFAULT:  0
float X
nearDistance a positive number Specifies the distance from the projector to the near clipping plane.
DEFAULT:  0
float X
scaleFactor x: a number
y: a number
z: a number
Sets the scaling factor applied to texture coordinates when texture mapping the projection.  The projection operation converts eye space into Normalized Device Coordinate (NDC) space.  In this space, the x, y, and z coordinates range from -1 to 1.  Texture coordinates range from 0 to 1.  Therefore mapping the entire image requires scaling by 0.5 then biasing by 0.5 (see "biasFactor").
DEFAULT:  <scaleFactor x="0.5" y="0.5" z="1"/>
3D floating point vector X
shadowCaster true
false
Sets whether or not the projection behaves like a "real-world" projector, where objects can block the projection.
DEFAULT:  true
boolean X
shadowInverted true
false
When "shadowCaster" is set, setting this attribute will cause the projection to be drawn in areas that would normally be in shadow (and not draw in areas that would otherwise be projected upon).
DEFAULT:  false
boolean X
viewVolume ViewVolumeAttr The view-volume of the projector; read-only, setting will have no effect. ViewVolumeAttr X

PulseAttr

Description

An attribute that is immediately reset after being pulsed (set).

Derives From

AttributeImpl

Extended By

None

Attributes

None

<QuaternionRotate>

Description

A node which applies a quaternion-based rotate transformation to the current world-transformation matrix in the scene graph.

Derives From

<Transform>

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
rotationQuat w: a number
x: a number
y: a number
z: a number
Sets the rotation quaternion.
DEFAULT:  <rotationQuat w="1" x="0" y="0" z="0"/>
4D floating point vector X
rotation x: a number
y: a number
z: a number
The x-, y-, and z-axis rotation angles generated by the quaternion; read-only, setting will have no effect.  Each angle specifies the degrees of rotation about it's respective axis, e.g., (45, 50, 60) would mean rotate 45 degrees about the x-axis, 50 degrees about the y-axis, and 60 degrees about the z-axis.
DEFAULT:  <rotation x="0" y="0" z="0"/> 
3D floating point vector X

RasterComponent

Description

The base class for raster-level scene components (labels, GUIs, etc.).

Derives From

ParentableMotionElement

Extended By

<BalloonTipLabel>, <HTMLLabel>, <Label>, <RasterPolygon>, <ScrollBarLabel>

Attributes

Attribute Value Description Data Type Plugin WebGL
opacity [0 to 1] Sets the opacity for the raster component.
DEFAULT:  1
float X
anchor x: an integer
y: an integer
Specifies the offset, in pixels, from the bottom-left corner of the raster component.
DEFAULT:  (0, 0)
2D integer vector X
origin bottomLeft
topLeft
Specifies the origin for the label.
DEFAULT:  "bottomLeft"
string X
show true
false
Sets the show state of the raster component.
DEFAULT:  true
boolean X
selectable true
false
Sets the selectable state of the raster component.
DEFAULT:  true
boolean X
cullable true
false
Sets the cullable state of the raster component.  If cullable, it is culled when
its position places it outside of the view-volume.
DEFAULT:  true
boolean X
rasterPosition x: a number
y: a number
z: a number
Specifies the raster position of the raster component.  When the raster position is set,
the raster component is placed at this position regardless of any other positional setting;
i.e., this overrides positional attributes inherited from ParentableMotionElement.
DEFAULT:  (0, 0, 0)
3D floating point vector X

<RasterPolygon>

Description

A node that defines a raster-level polygon.

Derives From

RasterComponent

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
labelHeight a non-negative number The label width in pixels; read-only, setting will have no effect. unsigned integer X
labelWidth a non-negative number The label height in pixels; read-only, setting will have no effect. unsigned integer X
rasterPolygonStyle RasterPolygonStyle Sets the raster polygon style for the label. RasterPolygonStyle X
windowHandle pointer A pointer to the window handle within which this label is displayed.
DEFAULT:  NULL 
unsigned integer X

<RasterPolygonStyle>

Description

An attribute for specifying raster-level polygon properties.

Derives From

Style

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
borderColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the polygon border color.
DEFAULT:  <borderColor r="1" g="1" b="1" a="1"/>
4D floating point vector X
fill true
false
Sets whether or not the polygon should be filled.
DEFAULT:  true
boolean X
fillColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the polygon fill color.
DEFAULT:  <fillColor r="1" g="1" b="1" a="1"/>
4D floating point vector X
height a non-negative number The polygon height, in pixels.
DEFAULT:  0
unsigned integer X
points AttributeVector<
x: a number
y: a number
z: a number
>
The polygon points, specifed in screen coordinates.  At least 3 points are required. AttributeVector<3D floating point vector> X
width a non-negative number The polygon width, in pixels.
DEFAULT:  0
unsigned integer X

<RayPickDirective>

Description

A directive which performs ray-based picking (selection) on geometric objects in the scene.

Derives From

SGDirective

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
camera AttributePointerAttr A pointer to the camera node for the viewport. AttributePointerAttr X X
clickPoint x: an integer
y: an integer
The sreen coordinates of the click point; must be within the viewport. 2D integer vector X X
viewport ViewportAttr The viewport to perform ray-picking within. ViewportAttr X X

<RegisterAttributes>

Description

A command which registers new attributes to the target container.

Derives From

Command

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
attributes AttributeVectorAttributeAttr The attribute(s) to register to the target container. AttributeVector<AttributeAttr> X

Examples

RegisterAttributes

<Remove>

Description

A command which removes the target node from the scene graph.

Derives From

Command

Extended By

None

Attributes

None

Examples

bwinclude
Use Group To Remove A SubTree

RenderAgent

Description

The agent class that controls rendering in Bridgeworks.

Derives From

Agent

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
desiredFrameRate a number The desired frame rate.
DEFAULT: 30
float X
elapsedTimeInSecs a number The elapsed time since rendering began or since the globalTimeInSecs was set directly by the user; read-only, setting will have no effect.
DEFAULT: 0
float X
frameRate a number The current frame rate; read-only, setting will have no effect.
DEFAULT: 0
float X
globalTimeInSec a number The global time. Starting at 0, it is incremented while keyframe animation is playing, and is reset to 0 when keyframe animation is stopped through the use of a Stop command.
DEFAULT: 0
float X
timeIncrement a number The amount of time incremented on keyframe animations to display them at the desired frame rate, even if the actual frame rate is less than the desired frame rate, using the following formula: increment = (desiredFrameRate / 30.0f) * elapsedTime, where desiredFrameRate is the desired frame rate, and elapsedTime is the elapsed time since the last rendering pass; read-only, setting will have no effect.
DEFAULT: 0
float X

RenderableElement

Description

The base class for renderable scene elements.

Derives From

SGNode

Extended By

Geometry, ParentableMotionElement

Attributes

Attribute Value Description Data Type Plugin WebGL
bbox BBoxAttr The bounding box for this element. BBoxAttr X
hasFocus an integer The focus state for this element.  Negative values represent "false", positive values represent "true", and zero represents "unknown".
DEFAULT:  0
integer X
renderableElementStyle RenderableElementStyle Sets the renderable element style for the element. RenderableElementStyle X
renderedSlot a positive integer Updated on renders, this value represents the rendering order for this element; e.g., for N elements, the first element rendered will have a value of 0, and the last element rendered will have a value of N-1.
DEFAULT:  0
unsigned integer X
renderSequenceSlot a positive integer Any value greater than 0 will cause this element to be rendered after any elements with a renderSequenceSlot of 0, in the order of smallest-renderSequenceSlot-value to largest-renderSequenceSlot-value. 
DEFAULT:  0

NOTE:  "renderedSlot" will not necessarily contain this value after the render.
unsigned integer X
selected an integer The selected state for this element.  Negative values represent "false", positive values represent "true", and zero represents "unknown".
DEFAULT:  0
integer X
styles Styles The styles for this element. Styles X
stylesMap StylesMap The styles map for this element. StylesMap X

<RenderDirective>

Description

A directive which performs rendering.

Derives From

SGDirective

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
antialiasType 0
1
2
3
4
5
6
7
8
9
10
Sets the antialias type.
0 = None
1 = 2-Pass
2 = 4-Pass
3 = 8-Pass
4 = 12-Pass
5 = 16-Pass
6 = 2-Pass Progressive
7 = 4-Pass Progressive
8 = 8-Pass Progressive
9 = 12-Pass Progressive
10 = 16-Pass Progressive
DEFAULT:  0
integer X
antialiasWaitTimeMs a positive integer Sets the antialias wait time in milliseconds.  This is the amount of time to postpone antialiasing after antialiasing can begin (no changes to the scene).
DEFAULT:  1000 (1 second)
integer X
backgroundColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the background color.  The background is cleared to this color before rendering; not used if "backgroundImageFilename" is specified and valid.
DEFAULT:  <backgroundColor r="0" g="0" b="0" a="0"/>
4D floating point vector X
backgroundImageFilename a media resource URL Sets the URL of the background image.  The background is cleared to this image before rendering; if unspecified, "backgroundColor" is used.
DEFAULT:  ""

NOTE:  Supported formats include: 
AVI
Bitmap
GIF
JPEG
Motion JPEG
PNG
string X X
foregroundAlphaFilename a media resource URL Sets the URL of the foreground alpha image; see "backgroundImageFilename" for a list of supported media formats.
DEFAULT:  ""
string X
foregroundFadeEnabled true
false
Sets whether or not the foreground alpha image contains values other than 0 (completely transparent) and 255 (completely opaque).  If true, any values in the alpha image < 128 will be considered transparent, and any values >= 128 will be considered opaque. X
foregroundImageFilename a media resource URL Sets the URL of the foreground image.  The foreground image is drawn after rendering; see "backgroundImageFilename" for a list of supported media formats.
DEFAULT:  ""
string X
jitterAmt x: a number
y: a number
Sets the camera position offset amount (used for antialiasing, this value is typically not set by the user).
DEAFULT:  <jitterAmt x="0" y="0"/>
2D floating point vector X
shadowColor r [0 to 1]
g [0 to 1]
b [0 to 1]
a [0 to 1]
Sets the shadow color for shadows when shadow-casting is enabled.
DEFAULT:  <shadowColor r="0.5" g="0.5" b="0.5" a="0.5"/>
4D floating point vector X
shadowType 0
1
Enables/Disables shadow-casting.
0 = None
1 = Perform Volumetric Shadow-Casting
DEFAULT:  0
integer X
texturesEnabled true
false
Enables/Disables the drawing of textures for any objects rendered by this directive.
DEFAULT:  true
boolean X
viewport ViewportAttr The viewport to render into. ViewportAttr X

Examples

Caffeine Molecule With Labels

<RenderMode>

Description

A node which sets/enables/disables specific rendering modes on the underlying rendering engine.

Derives From

SGNode

Extended By

None

Attributes

Attribute Value Description Data Type Plugin WebGL
depthBufferWriteEnabled true
false
Enables/Disables writing to the depth buffer.
DEFAULT:  true
boolean X
depthTestEnabled true
false
Enables/Disables the depth test.
DEFAULT:  true
boolean X
polygonOffset_BiasUnits a number Specifies a value that is multiplied by an implementation-specific value (see notes) to create a constant depth offset.
DEFAULT:  0

NOTE:  The value of the polygon offset is scaleUnits * ?z + r * biasUnits, where scaleUnits is the value of "polygonOffset_ScaleUnits", ?z is a measurement of the change in depth relative to the screen area of the polygon, r is the smallest value that is guaranteed to produce a resolvable offset for a given implementation, and "biasUnits is the value of this attribute.
float X
polygonOffset_FillEnabled true
false
Enables/Disables adding the polygon offset to depth values of polygon (triangle) fragments before depth comparison is performed.
DEFAULT:  false
boolean X
polygonOffset_LineEnabled true
false
Enables/Disables adding the polygon offset to depth values of line fragments before depth comparison is performed.
DEFAULT:  false
boolean X
polygonOffset_PointEnabled true
false
Enables/Disables adding the polygon offset to depth values of point fragments before depth comparison is performed.
DEFAULT:  false
boolean X
polygonOffset_ScaleUnits a number Specifies a scale factor that is used to create a variable depth offset for each polygon.
DEFAULT:  0

NOTE:  The value of the polygon offset is scaleUnits * ?z + r * biasUnits, where scaleUnits is the value of this attribute, ?z is a measurement of the change in depth relative to the screen area of the polygon, r is the smallest value that is guaranteed to produce a resolvable offset for a given implementation, and "biasUnits is the value of "polygonOffset_BiasUnits".
float X
stencilFunc 0
1
2
3
4
5
6
7
Sets the stencil function.
0 = Never
1 = Less
2 = LessEqual
3 = Equal
4 = NotEqual
5 = GreaterEqual
6 = Greater
7 = Always
DEFAULT:  7

NOTE:  "Never" means the stencil test never passes; "Always" means the stencil test always passes; The remaining functions pass if (stencilRef & stencilMask [stencil function] stencilBuffer & stencilMask) is true, where stencilRef and stencilMask are attributes of this node, [stencil function] is the stencil function (from this attribute), and stencilBuffer is the value in the stencil buffer.
unsigned integer X
stencilMask a positive integer Sets the mask used in the stencil test (see "stencilFunc").  This value will mask both the stencil reference value ("stencilRef") and the stencil buffer value before they are compared.
DEFAULT:  0
unsigned integer X
stencilOp_Fail 0
1
2
3
4
5
Specifies the stencil buffer operation to perform when the stencil test fails.
0 = Keep
1 = Replace
2 = Increment
3 = Decrement
4 = Invert
5 = Zero
DEFAULT:  0
unsigned integer X
stencilOp_ZFail 0
1
2
3
4
5
Specifies the stencil buffer operation to perform when the stencil test passes, and the depth test fails.
0 = Keep
1 = Replace
2 = Increment
3 = Decrement
4 = Invert
5 = Zero
DEFAULT:  0
unsigned integer