|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.kuka.math.geometry.AbstractRotation
public abstract class AbstractRotation
Abstract representation of a rotation in 3-dimensional space. A rotation of some rigid body in space has three degrees of freedom. Coordinate systems can be regarded as rigid bodies.
By default all computations will be done on the MatrixRotation
representation of the rotation.
If you want to implement your own Rotation class, you should derive it from
AbstractRotation.
Note: When operating on AbstractRotation there is no guarantee that
the type is immutable, unless you have explicitly converted it to an
immutable type before.
| Constructor Summary | |
|---|---|
AbstractRotation()
|
|
| Method Summary | |
|---|---|
Point3D |
applyTo(Point3D point)
Applies this rotation to the given point, i.e. rotates the point around the origin of its coordinate system. |
Vector3D |
applyTo(Vector3D vector)
Applies this rotation to the given vector. |
IRotation |
compose(IRotation other)
If the rotations A and B are represented as matrices, then the effect of A.compose(B) is corresponding to the matrix multiplication A*B. |
abstract Matrix |
getMatrix()
Returns a matrix representing this rotation. |
IRotation |
invert()
Returns an inverted rotation, i.e. a rotation that reverses the effect of this one. |
double |
rotationalDistanceTo(IRotation other)
Calculates the rotational distance from this rotation to the other rotation. |
IRotation |
rotationTo(IRotation other)
Calculates the rotation needed to turn this rotation into the other rotation. |
String |
toString()
Returns a textual description of the rotation. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public AbstractRotation()
| Method Detail |
|---|
public Vector3D applyTo(Vector3D vector)
IRotation
applyTo in interface IRotationvector - the vector to be rotated
public Point3D applyTo(Point3D point)
IRotation
applyTo in interface IRotationpoint - the point to be rotated around the origin of its coordinate
system
public IRotation compose(IRotation other)
IRotation
compose in interface IRotationother - the rotation to combine with this one
public IRotation invert()
IRotation
invert in interface IRotationpublic String toString()
This implementation will return a description in Euler Z-Y-X angles in [rad] with KUKA notation (A, B, C). The following string can be regarded as typical:
"[A=1.23 B=3.14 C=-0.13]"
toString in class Objectpublic IRotation rotationTo(IRotation other)
IRotation
rot1.compose(rot1.rotationTo(rot2)) is equal to rot2
rotationTo in interface IRotationother - another rotation
public double rotationalDistanceTo(IRotation other)
IRotationAxisAngleRotation which turns this rotation into the other
rotation.
Use this function to compare two rotations.
rotationalDistanceTo in interface IRotationother - another rotation
public abstract Matrix getMatrix()
IRotation
getMatrix in interface IRotationMatrix representing this rotation. This is potentially
a costly conversion
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||