fr.cnes.sirius.patrius.assembly.properties
Class AbstractInertiaProperty

java.lang.Object
  extended by fr.cnes.sirius.patrius.assembly.properties.AbstractInertiaProperty
All Implemented Interfaces:
IPartProperty, IInertiaProperty
Direct Known Subclasses:
InertiaCylinderProperty, InertiaParallelepipedProperty, InertiaSimpleProperty, InertiaSphereProperty

public abstract class AbstractInertiaProperty
extends Object
implements IInertiaProperty

This class is the abstract class for all inertia properties : those properties can provide the inertia matrix and mass center of the part. All of them shall extend it to assure they have the same "PropertyType"

Since:
1.2
Version:
$Id: AbstractInertiaProperty.java 17588 2017-05-10 13:31:54Z bignon $
Author:
Thomas Trapier
See Also:
IInertiaProperty
Concurrency :
not thread-safe
Concurrency comment :
the use of frames makes this class not thread-safe

Constructor Summary
protected AbstractInertiaProperty(Vector3D massCenter, Matrix3D inertiaMatrix, MassProperty mass)
          Constructor for the abstract inertia property.
protected AbstractInertiaProperty(Vector3D massCenter, Matrix3D inertiaMatrix, Vector3D inertiaReferencePoint, MassProperty mass)
          Constructor for the abstract inertia property.
 
Method Summary
 Matrix3D getInertiaMatrix()
          
 double getMass()
          
 Vector3D getMassCenter()
          
 MassProperty getMassProperty()
          
 PropertyType getType()
          Get the type of the property.
protected  void setInertiaMatrix(Matrix3D inertiaMatrix)
          Sets the inertia matrix
protected  void setMassCenter(Vector3D massCenter)
          Sets the mass center.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractInertiaProperty

protected AbstractInertiaProperty(Vector3D massCenter,
                                  Matrix3D inertiaMatrix,
                                  MassProperty mass)
Constructor for the abstract inertia property.

Parameters:
massCenter - the mass center
inertiaMatrix - the inertia matrix
mass - the mass property associated to this part

AbstractInertiaProperty

protected AbstractInertiaProperty(Vector3D massCenter,
                                  Matrix3D inertiaMatrix,
                                  Vector3D inertiaReferencePoint,
                                  MassProperty mass)
Constructor for the abstract inertia property. The inertia matrix is expressed with respect to a point that can be different from the mass center.

Parameters:
massCenter - the mass center
inertiaMatrix - the inertia matrix
inertiaReferencePoint - the point with respect to the inertia matrix is expressed (in the part frame)
mass - the mass property associated to this part
Method Detail

getType

public PropertyType getType()
Get the type of the property.

Specified by:
getType in interface IPartProperty
Returns:
the type of the property (see PropertyType enumeration)

getMassCenter

public Vector3D getMassCenter()

Specified by:
getMassCenter in interface IInertiaProperty
Returns:
the position of the mass center in the reference frame

getMass

public double getMass()

Specified by:
getMass in interface IInertiaProperty
Returns:
the mass of the considered part.

getInertiaMatrix

public Matrix3D getInertiaMatrix()

Specified by:
getInertiaMatrix in interface IInertiaProperty
Returns:
the inertia matrix at the mass center of the part.

setMassCenter

protected void setMassCenter(Vector3D massCenter)
Sets the mass center.

Parameters:
massCenter - the new mass center

setInertiaMatrix

protected void setInertiaMatrix(Matrix3D inertiaMatrix)
Sets the inertia matrix

Parameters:
inertiaMatrix - the new inetria matrix

getMassProperty

public MassProperty getMassProperty()

Specified by:
getMassProperty in interface IInertiaProperty
Returns:
the mass property


Copyright © 2017 CNES. All Rights Reserved.