com.kuka.roboticsAPI.geometricModel.physics
Class InertiaTensor

java.lang.Object
  extended by com.kuka.roboticsAPI.geometricModel.physics.InertiaTensor

public final class InertiaTensor
extends Object

Represents the inertia of a physical object.


Field Summary
static InertiaTensor ZERO
          Immutable InertiaTensor instance representing zero inertia.
 
Method Summary
 InertiaTensor add(InertiaTensor other)
          Adds the inertia in this tensor to the other tensor's values and returns a new instance of an InertiaTensor.
 Inertia getInertia()
          Gets the inertia of the tensor.
 Rotation getRotation()
          Gets the rotation of the tensor.
static InertiaTensor joinTensors(double mass1, Vector com1, InertiaTensor inertia1, double mass2, Vector com2, InertiaTensor inertia2)
          Joints two tensor values and calculates the resulting tensor.
static InertiaTensor of(Inertia inertia, IRotation rot)
          Transforms the given Inertia inertia into a InertiaTensor .
 InertiaTensor translateTensor(double kilograms, Vector delta)
          Application of Steiner's Theorem on the inertia tensor: Calculates a new tensor which belongs to an object of given mass such that it reflects the translation of the former tensor's values by the vector delta.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ZERO

public static final InertiaTensor ZERO
Immutable InertiaTensor instance representing zero inertia.

Method Detail

of

public static InertiaTensor of(Inertia inertia,
                               IRotation rot)
Transforms the given Inertia inertia into a InertiaTensor .

Parameters:
inertia - the inertia
rot - The rotation of the desired target system in which the current inertia is defined. null is not allowed.
Returns:
The resulting tensor.

getInertia

public Inertia getInertia()
Gets the inertia of the tensor.

Returns:
The inertia of the tensor.

getRotation

public Rotation getRotation()
Gets the rotation of the tensor.

Returns:
The rotation of the tensor.

add

public InertiaTensor add(InertiaTensor other)
Adds the inertia in this tensor to the other tensor's values and returns a new instance of an InertiaTensor.

Parameters:
other - the other tensor
Returns:
a new instance with the sum of the tensors

translateTensor

public InertiaTensor translateTensor(double kilograms,
                                     Vector delta)
Application of Steiner's Theorem on the inertia tensor: Calculates a new tensor which belongs to an object of given mass such that it reflects the translation of the former tensor's values by the vector delta.

Parameters:
kilograms - Mass of the object in [kg] that is represented by this inertia tensor.
delta - The vector of translation.
Returns:
A new instance with the values of the modified tensor.

joinTensors

public static InertiaTensor joinTensors(double mass1,
                                        Vector com1,
                                        InertiaTensor inertia1,
                                        double mass2,
                                        Vector com2,
                                        InertiaTensor inertia2)
Joints two tensor values and calculates the resulting tensor.

The two tensors need to be defined in the same system as well as the two transformations of the center of masses.

Parameters:
mass1 - The mass of object 1 in [kg].
com1 - The center of mass translation of object 1.
inertia1 - The inertia tensor of object 1.
mass2 - The mass of object 2 in [kg].
com2 - The center of mass translation of object 2.
inertia2 - The inertia tensor of object 2.
Returns:
The resulting tensor in the combined center of mass.


Copyright © 2019. All rights reserved.