Orientation classes
vector-classes.RdAn vector of orientations, each represented by a vector of numbers.
Each of these types stores orientations as rows of a matrix in slot x.
The eulerzyx class uses 3 Euler angles in the roll-pitch-yaw scheme
(rotation about Z axis, then Y axis, then X axis).
The eulerzxz class uses 3 Euler angles in the X system scheme
(rotation about Z axis, then X axis, then Z axis again).
The rotvector class uses the 9 components of a 3 x 3 rotation matrix, stored
in column-major order.
The quaternion class uses the 4 components of a unit quaternion.
The skewvector class uses the 3 non-zero components of a skew-symmetric matrix,
where (x,y,z) stores the matrix ((0, -z, y), (z, 0, -x), (-y, x, 0)).
Objects from the Class
Objects of each class can be created by calls to the corresponding constructor
functions: eulerzyx, eulerzxz, rotvector,
quaternion, skewmatrix and skewvector.
Methods
- [, [<-
Extract or assign to subvector
- [[, [[<-
Extract or assign to an entry
- length
The length of the
orientationvector- coerce
Coerce methods are defined to convert all
orientationdescendants from one to another, and to coerce an appropriately shaped matrix or array to arotmatrix
See also
Constructor and coercion functions rotmatrix, eulerzyx, eulerzxz, rotvector,
quaternion, and skewvector.
Classes matrix-classes, orientation-class.
Examples
x <- eulerzyx(0,pi/4,0)
x
#> An object of class "eulerzyx"
#> Slot "x":
#> psi theta phi
#> [1,] 0 0.7853982 0
#>
eulerzxz(x)
#> An object of class "eulerzxz"
#> Slot "x":
#> phi theta psi
#> [1,] 1.570796 0.7853982 -1.570796
#>
rotmatrix(x)
#> An object of class "rotmatrix"
#> Slot "x":
#> , , 1
#>
#> [,1] [,2] [,3]
#> [1,] 0.7071068 0 -0.7071068
#> [2,] 0.0000000 1 0.0000000
#> [3,] 0.7071068 0 0.7071068
#>
#>
rotvector(x)
#> An object of class "rotvector"
#> Slot "x":
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
#> [1,] 0.7071068 0 0.7071068 0 1 0 -0.7071068 0 0.7071068
#>
quaternion(x)
#> An object of class "quaternion"
#> Slot "x":
#> q1 q2 q3 q4
#> [1,] 0 0.3826834 0 0.9238795
#>
skewvector(x)
#> An object of class "skewvector"
#> Slot "x":
#> [,1] [,2] [,3]
#> [1,] 0 0.7853982 0
#>