motris.model
Class RigidModel

java.lang.Object
  extended bymotris.data.Description
      extended byparameter.ParameterizedObjectAdaptor
          extended bymotris.model.RigidModel
All Implemented Interfaces:
ParameterizedObject

public class RigidModel
extends ParameterizedObjectAdaptor

Rigid (ie unchangable, with no free size parameters) Model used to hiearchially build complex models such as humans.

Author:
preuter

Nested Class Summary
 
Nested classes inherited from class parameter.ParameterizedObject
ParameterizedObject.ParameterChangedListener, ParameterizedObject.ParameterizedObjectManager
 
Field Summary
private  java.lang.String ident
           
private  int idnum
           
private  DynamicModel localToParent
          Transformation Matrix (including derivatives) to go from local coordinate system to parent one Attention! localToParent and parentToLocal must be private because they use lazy update via Actor.needUpdate
private  VolumeRepresentation myVolume
           
private  java.lang.String name
           
private  RigidModel parent
           
private  JSci.maths.DoubleSquareMatrix parentToLocal
          Transformation from parent coordinates to local ones
private  java.util.Vector subModels
           
private  java.lang.String type
           
 
Fields inherited from class parameter.ParameterizedObjectAdaptor
parameterChangedNotifyList
 
Fields inherited from class motris.data.Description
 
Constructor Summary
RigidModel(RigidModel parent, ParameterSet params, State currentState, java.lang.String inputFileName)
           
 
Method Summary
 int assignID(int IDnum)
           
 void calculateDerivations(JSci.maths.DoubleSquareMatrix[] tensorinput, JSci.maths.DoubleSquareMatrix[] gradientinput, JSci.maths.DoubleSquareMatrix toGlobalinput, State state)
           
 java.lang.String getIdentifier()
           
 int getIDNum()
           
 JSci.maths.DoubleSquareMatrix getLocalToParent()
          needed by EMContourMinimizer
 java.lang.String getName()
           
 ParameterSet getParameters()
          Get a Vector of Strings with a description of each Parameter
 ParameterSet getParameters(boolean forSave)
           
(package private)  boolean hasStructureChanged()
           
 boolean setParameters(ParameterSet _params)
          Set Parameters of this class
 void update()
           
 void updateSceneGeometry(SceneGeometry geometry, Camera cam, DoubleVector cameraOriginLocal)
           
 void writeMatrixArrays(DoubleMatrix[] _toGlobals, DoubleMatrix[][] _firstDerivation, DoubleMatrix[][] _secondDerivation)
           
 
Methods inherited from class parameter.ParameterizedObjectAdaptor
addParameterChangedListener, finalize, fireParameterChanged, parameterEdited, removeParameterChangedListener
 
Methods inherited from class motris.data.Description
getDescription, setDescription, setIdentifier, setName
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

subModels

private java.util.Vector subModels

parent

private RigidModel parent

localToParent

private DynamicModel localToParent
Transformation Matrix (including derivatives) to go from local coordinate system to parent one Attention! localToParent and parentToLocal must be private because they use lazy update via Actor.needUpdate


parentToLocal

private JSci.maths.DoubleSquareMatrix parentToLocal
Transformation from parent coordinates to local ones


myVolume

private VolumeRepresentation myVolume

ident

private java.lang.String ident

name

private java.lang.String name

type

private java.lang.String type

idnum

private int idnum
Constructor Detail

RigidModel

public RigidModel(RigidModel parent,
                  ParameterSet params,
                  State currentState,
                  java.lang.String inputFileName)
Method Detail

update

public void update()

getParameters

public ParameterSet getParameters()
Description copied from interface: ParameterizedObject
Get a Vector of Strings with a description of each Parameter

Specified by:
getParameters in interface ParameterizedObject
Overrides:
getParameters in class ParameterizedObjectAdaptor

getParameters

public ParameterSet getParameters(boolean forSave)

setParameters

public boolean setParameters(ParameterSet _params)
Description copied from interface: ParameterizedObject
Set Parameters of this class

Specified by:
setParameters in interface ParameterizedObject
Overrides:
setParameters in class ParameterizedObjectAdaptor

getName

public java.lang.String getName()
Overrides:
getName in class Description

getIdentifier

public java.lang.String getIdentifier()
Overrides:
getIdentifier in class Description

calculateDerivations

public void calculateDerivations(JSci.maths.DoubleSquareMatrix[] tensorinput,
                                 JSci.maths.DoubleSquareMatrix[] gradientinput,
                                 JSci.maths.DoubleSquareMatrix toGlobalinput,
                                 State state)

assignID

public int assignID(int IDnum)

getIDNum

public int getIDNum()

writeMatrixArrays

public void writeMatrixArrays(DoubleMatrix[] _toGlobals,
                              DoubleMatrix[][] _firstDerivation,
                              DoubleMatrix[][] _secondDerivation)

hasStructureChanged

boolean hasStructureChanged()

updateSceneGeometry

public void updateSceneGeometry(SceneGeometry geometry,
                                Camera cam,
                                DoubleVector cameraOriginLocal)

getLocalToParent

public JSci.maths.DoubleSquareMatrix getLocalToParent()
needed by EMContourMinimizer