M-File Help: SE2 View code for SE2

SE2

Representation of 2D rigid-body motion

This subclasss of SO2 < RTBPose is an object that represents an SE(2) rigid-body motion.

Constructor methods

SE2 general constructor
SE2.exp exponentiate an se(2) matrix
SE2.rand random transformation
new new SE2 object

Information and test methods

dim* returns 2
isSE* returns true
issym* true if rotation matrix has symbolic elements
isa check if matrix is SE2

Display and print methods

plot* graphically display coordinate frame for pose
animate* graphically animate coordinate frame for pose
print* print the pose in single line format
display* print the pose in human readable matrix form
char* convert to human readable matrix as a string

Operation methods

det determinant of matrix component
eig eigenvalues of matrix component
log logarithm of rotation matrix
inv inverse
simplify* apply symbolic simplication to all elements
interp interpolate between poses

Conversion methods

check convert object or matrix to SE2 object
theta return rotation angle
double convert to rotation matrix
R convert to rotation matrix
SE2 convert to SE2 object with zero translation
T convert to homogeneous transformation matrix
t translation column vector

Compatibility methods

isrot2* returns false
ishomog2* returns true
tr2rt* convert to rotation matrix and translation vector
t2r* convert to rotation matrix
trprint2* print single line representation
trplot2* plot coordinate frame

tranimate2* animate coordinate frame

transl2 return translation as a row vector

Static methods

check convert object or matrix to SO2 object

SE2.SE2

Construct an SE(2) object

Constructs an SE(2) pose object that contains a 3x3 homogeneous transformation matrix.

T = SE2() is a null relative motion

T = SE2(x, y) is an object representing pure translation defined by x and y

T = SE2(xy) is an object representing pure translation defined by xy (2x1). If xy (Nx2) returns an array of SE2 objects, corresponding to the rows of xy.

T = SE2(x, y, theta) is an object representing translation, x and y, and rotation, angle theta.

T = SE2(xy, theta) is an object representing translation, xy (2x1), and rotation, angle theta

T = SE2(xyt) is an object representing translation, xyt(1) and xyt(2), and rotation, angle xyt(3). If xyt (Nx3) returns an array of SE2 objects, corresponding to the rows of xyt.

T = SE2(R) is an object representing pure rotation defined by the orthonormal rotation matrix R (2x2)

T = SE2(R, xy) is an object representing rotation defined by the orthonormal rotation matrix R (2x2) and position given by xy (2x1)

T = SE2(T) is an object representing translation and rotation defined by the homogeneous transformation matrix T (3x3). If T (3x3xN) returns an array of SE2 objects, corresponding to the third index of T

T = SE2(T) is an object representing translation and rotation defined by the SE2 object T, effectively cloning the object. If T (Nx1) returns an array of SE2 objects, corresponding to the index of T

Options

'deg' Angle is specified in degrees

Notes


SE2.check

Convert to SE2

q = SE2.check(x) is an SE2 object where x is SE2 or 3x3 homogeneous transformation matrix.


SE2.exp

Construct SE2 object from Lie algebra

p = SE2.exp(se2) creates an SE2 object by exponentiating the se(2) argument (3x3).


SE2.get.t

Get translational component

P.t is a column vector (2x1) representing the translational component of the rigid-body motion described by the SE2 object P.

Notes

case use P.transl().

See also

SE2.transl


SE2.interp

Interpolate between SO2 objects

P1.interp(p2, s) is an SE2 object representing interpolation between rotations represented by SE3 objects P1 and p2. s varies from 0 (P1) to 1 (p2). If s is a vector (1xN) then the result will be a vector of SE2 objects.

Notes

See also

SO2.angle


SE2.inv

Inverse of SE2 object

q = inv(p) is the inverse of the SE2 object p. p*q will be the identity matrix.

Notes


SE2.isa

Test if matrix is SE(2)

SE2.ISA(T) is true (1) if the argument T is of dimension 3x3 or 3x3xN, else false (0).

SE2.ISA(T, true') as above, but also checks the validity of the rotation sub-matrix.

Notes

See also

SO3.ISA, SE2.ISA, SO2.ISA, ishomog2


SE2.log

Lie algebra

se2 = P.log() is the Lie algebra augmented skew-symmetric matrix (3x3) corresponding to the SE2 object P.

See also

SE2.Twist, logm


SE2.new

Construct a new object of the same type

p2 = P.new(x) creates a new object of the same type as P, by invoking the SE2 constructor on the matrix x (3x3).

p2 = P.new() as above but defines a null motion.

Notes

See also

SE3.new, SO3.new, SO2.new


SE2.rand

Construct a random SE(2) object

SE2.rand() is an SE2 object with a uniform random translation and a uniform random orientation. Random numbers are in the interval 0 to 1.

See also

rand


SE2.SE3

Lift to 3D

q = P.SE3() is an SE3 object formed by lifting the rigid-body motion described by the SE2 object P from 2D to 3D. The rotation is about the z-axis, and the translational is within the xy-plane.

See also

SE3


SE2.set.t

Set translational component

P.t = TV sets the translational component of the rigid-body motion described by the SE2 object P to TV (2x1).

Notes


SE2.SO2

Extract SO(2) rotation

q = SO2(p) is an SO2 object that represents the rotational component of the SE2 rigid-body motion.

See also

SE2.R


SE2.T

Get homogeneous transformation matrix

T = P.T() is the homogeneous transformation matrix (3x3) associated with the SE2 object P, and has zero translational component. If P is a vector (1xN) then T (3x3xN) is a stack of rotation matrices, with the third dimension corresponding to the index of P.

See also

SO2.T


SE2.transl

Get translational component

tv = P.transl() is a row vector (1x2) representing the translational component of the rigid-body motion described by the SE2 object P. If P is a vector of objects (1xN) then tv (Nx2) will have one row per object element.


SE2.Twist

Convert to Twist object

tw = P.Twist() is the equivalent Twist object. The elements of the twist are the unique elements of the Lie algebra of the SE2 object P.

See also

SE2.log, Twist


SE2.xyt

Construct SE2 object from Lie algebra

xyt = P.xyt() is a column vector (3x1) comprising the minimum three parameters of this rigid-body motion [x; y; theta] with translation (x,y) and rotation theta.


 

© 1990-2014 Peter Corke.