java.lang.Object
de.grogra.imp3d.objects.SceneTree.Node
de.grogra.imp3d.objects.SceneTree.InnerNode
- Enclosing class:
- SceneTree
This class represents an inner node of a scene tree. Inner nodes
have a set of
children
, stored as a linked list of
SceneTree.Node
s, and specify a coordinate transformation by the
fields m00
to m23
. The coordinate transformation
transforms from the children's coordinate systems to the coordinate
system of this inner node.- Author:
- Ole Kniemeyer
-
Field Summary
Modifier and TypeFieldDescriptionThe first node of the linked list of children.static final int
int
Stores flagsIS_GROUP
,HAS_MORE_THAN_ONE_CHILD
as well as the the CSG operation performed by this node, one of theCSG
constants inAttributes
.static final int
static final int
float
00-component of the local transformation matrix.float
01-component of the local transformation matrix.float
02-component of the local transformation matrix.float
03-component of the local transformation matrix.float
10-component of the local transformation matrix.float
11-component of the local transformation matrix.float
12-component of the local transformation matrix.float
13-component of the local transformation matrix.float
20-component of the local transformation matrix.float
21-component of the local transformation matrix.float
22-component of the local transformation matrix.float
23-component of the local transformation matrix.Fields inherited from class de.grogra.imp3d.objects.SceneTree.Node
next
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal void
accept
(SceneTree.Visitor visitor) void
Gets the transformation of this inner node and writes it toout
.boolean
protected boolean
void
Sets the transformation of this inner node tom
.toString()
void
Multipliesin
from right by the transformation of this node and stores the result inout
.void
Transforms the pointt
by this node's affine transformation.void
Transforms the pointt
by this node's affine transformation.void
Transforms the vectort
by the rotational component of this node's transformation.void
Transforms the vectort
by the rotational component of this node's transformation.
-
Field Details
-
children
The first node of the linked list of children. -
CSG_MASK
public static final int CSG_MASK- See Also:
-
IS_GROUP
public static final int IS_GROUP- See Also:
-
HAS_MORE_THAN_ONE_CHILD
public static final int HAS_MORE_THAN_ONE_CHILD- See Also:
-
flags
public int flagsStores flagsIS_GROUP
,HAS_MORE_THAN_ONE_CHILD
as well as the the CSG operation performed by this node, one of theCSG
constants inAttributes
. -
m00
public float m0000-component of the local transformation matrix. -
m01
public float m0101-component of the local transformation matrix. -
m02
public float m0202-component of the local transformation matrix. -
m03
public float m0303-component of the local transformation matrix. -
m10
public float m1010-component of the local transformation matrix. -
m11
public float m1111-component of the local transformation matrix. -
m12
public float m1212-component of the local transformation matrix. -
m13
public float m1313-component of the local transformation matrix. -
m20
public float m2020-component of the local transformation matrix. -
m21
public float m2121-component of the local transformation matrix. -
m22
public float m2222-component of the local transformation matrix. -
m23
public float m2323-component of the local transformation matrix.
-
-
Constructor Details
-
InnerNode
public InnerNode()
-
-
Method Details
-
accept
- Specified by:
accept
in classSceneTree.Node
-
set
Sets the transformation of this inner node tom
.- Parameters:
m
- affine coordinate transformation
-
get
Gets the transformation of this inner node and writes it toout
.- Parameters:
out
- the transformation is written to this instance
-
transform
Multipliesin
from right by the transformation of this node and stores the result inout
.- Parameters:
in
- input transformationout
- output transformation (may bein
)
-
transformVector
Transforms the vectort
by the rotational component of this node's transformation.- Parameters:
t
- a vector to be transformed
-
transformVector
Transforms the vectort
by the rotational component of this node's transformation.- Parameters:
t
- a vector to be transformed
-
transformPoint
Transforms the pointt
by this node's affine transformation.- Parameters:
t
- a point to be transformed
-
transformPoint
Transforms the pointt
by this node's affine transformation.- Parameters:
t
- a point to be transformed
-
isSpecial
protected boolean isSpecial() -
isProperGroup
public boolean isProperGroup() -
toString
-