de.grogra.imp3d.objects
Interface Transformation

All Known Implementing Classes:
ArgShoot, Arrange, Axis, AxisBase, BlockColor, BlockScale, Box, Cell, ColoredNull, Cone, CSGNode, Cylinder, DTGShoot, F, F0, FAdd, FMul, Frustum, FrustumBase, GRotation, GRSVertex, HDir, Horn, Hydra, Instance, Instance3D, Label, LightNode, Line, M, M0, MAdd, Mark, MeshNode, Minus, MMul, Move, MRel, MTGNode, MTGRoot, Null, NullWithShaderNode, NumericLabel, NURBSCurve, NURBSSurface, Parallelogram, Patch, PhiBall, Plane, Plus, Point, PointCloud, Polygon, RD, RG, RH, RL, RN, RO, Rotate, Rotate, Rotation, RP, RU, RV, RV0, RVAdd, RVMul, Scale, Scale, SensorNode, ShadedNull, Shoot, Sky, Sphere, Supershape, TextLabel, TextLabelBase, ToolRoot3D, TransformTool, Translate, Translate, Tree, Tropism, TurtleStep, URotation, Vertex

public interface Transformation

This interface represents affine 3D coordinate transformations for an object in a graph. The preTransform is applied to the post-transformation of the object's parent in the scene hierarchy in order to obtain the transformation of the object. The postTransform is applied to this transformation in order to obtain the object's post-transformation.

Author:
Ole Kniemeyer

Method Summary
 void postTransform(java.lang.Object object, boolean asNode, Matrix4d in, Matrix4d out, Matrix4d parent, GraphState gs)
          Implements the change from object's transformation in to the object's post-transformation out.
 void preTransform(java.lang.Object object, boolean asNode, Matrix4d in, Matrix4d out, GraphState gs)
          Implements the change from the parent's post-transformation in to the object's transformation out.
 

Method Detail

postTransform

void postTransform(java.lang.Object object,
                   boolean asNode,
                   Matrix4d in,
                   Matrix4d out,
                   Matrix4d parent,
                   GraphState gs)
Implements the change from object's transformation in to the object's post-transformation out.

Parameters:
object - the object for which the transformation is computed
asNode - is object a node or an edge?
in - the transformation of the object
out - the post-tranformation of the object to be computed
parent - the post-transformation of the object's parent
gs - the graph state in which the computation has to be done

preTransform

void preTransform(java.lang.Object object,
                  boolean asNode,
                  Matrix4d in,
                  Matrix4d out,
                  GraphState gs)
Implements the change from the parent's post-transformation in to the object's transformation out.

Parameters:
object - the object for which the transformation is computed
asNode - is object a node or an edge?
in - the post-transformation of the object's parent
out - the tranformation of the object to be computed
gs - the graph state in which the computation has to be done