-
Notifications
You must be signed in to change notification settings - Fork 15
MATLAB toolbox changes
remo-pillat edited this page Jul 31, 2024
·
4 revisions
RVC3 uses, as much as possible, MATLAB supported tooling. Many functions used are from MATLAB 23a and later releases. A small number of functions still have no MATLAB equivalents and are provided in the RVC3 Toolbox.
RVC2 function | MathWorks replacement | RVC3 toolbox | Notes |
---|---|---|---|
colnorm | vecnorm | ||
ctraj | transformtraj | ||
lspb | trapveltraj | MathWorks function doesn't have visualization, but example visualizations are in documentation | |
mplot | stackedplot | mplot(t, q, "label", {..}) can be replaced with stackedplot(t, q, "DisplayLabels", [...], "GridVisible", 1) | |
mstraj | trapveltraj | ||
mtraj | quinticpolytraj, trapveltraj | MathWorks function doesn't have visualization, but example visualizations are in documentation | |
numcols(a) | size(a,2) | ||
numrows(a) | size(a,1) | ||
Polygon | polyshape | Introduced in 17b, has similar functionality | |
randinit | rng("default") | ||
tpoly | quinticpolytraj |
RVC2 function | MathWorks replacement | RVC3 toolbox | Notes |
---|---|---|---|
angvec2r | axang2rotm | angvec2r(theta, v) ~ axang2rotm([v theta]) |
|
delta2tr | delta2tform | Renamed in RVC3 to use "tform" for 4x4 transform used in other functions | |
e2h | cart2hom | e2h | e2h(x) ~ cart2hom(x')' |
eul2r | eul2rotm | eul2r(a,b,c) ~ eul2rotm([a,b,c], "ZYZ") |
|
eul2tr | eul2tform | ||
h2e | hom2cart | h2e | h2e(x) ~ hom2cart(x')' |
isrot2 | isrotm2d | Renamed in RVC3 to use "rotm" for rotation matrix used in other functions | |
oa2r | oa2rotm | Renamed in RVC3 to use "rotm" for rotation matrix used in other functions | |
oa2tr | oa2tform | Renamed in RVC3 to use "tform" for transform matrix used in other functions | |
plot_circle | plotcircle | ||
plot_ellipse | plotellipse | ||
plot_ellipse | plotellipsoid | ||
plot_homline | plothomline | ||
plot_point | plotpoint | ||
plot_vehicle | plotvehicle | ||
plot_poly | plotpoly | An alternative in MATLAB is polyshape/plot | |
Plucker | Plucker | ||
Quaternion | quaternion | methods are different | |
r2t | se3 and rotm2tform | ||
rt2tr | se3 and rotm2tform | rt2tr(R,t) ~ se3(R,t) |
|
rot2 | rotm2d | ||
rotx | rotmx | ||
roty | rotmy | ||
rotz | rotmz | ||
SE3.Ad | tform2adjoint | ||
SE3.velxform | velxform | ||
rpy2r | eul2rotm | eul2rotm([a,b,c], 'xyz') ~ rpy2r(c,b,a, 'xyz') |
|
rpy2tr | eul2tform | eul2tform([a,b,c], 'xyz') ~ rpy2tr(c,b,a, 'xyz') |
|
skew | vec2skew | ||
skewa | vec2skewa | ||
tr2angvec | tform2axang | HTM case: tr2angvec returns 2 arguments, theta and v. tform2axang returns a single 4-vector, which is a concatenation of [v, theta] | |
tr2angvec | rotm2axang | RM case: tr2angvec returns 2 arguments, theta and v. rotm2axang returns a single 4-vector, which is a concatenation of [v, theta] | |
tr2delta | tform2delta | ||
tr2eul | tform2eul | For HTM case: tr2eul(T) ~ tform2eul(T, "ZYZ")
|
|
tr2eul | rotm2eul | For RM case: tr2eul(R) ~ rotm2eul(R, "ZYZ")
|
|
t2r | tform2rotm | ||
tr2rpy | rotm2eul | HTM case: tr2rpy(T,'abc') ~ flip(tform2eul(T,"abc"), 2)
|
|
tr2rpy | rotm2eul | RM case: tr2rpy(R,'abc') ~ flip(rotm2eul(R,"abc"), 2)
|
|
tr2rt | tform2trvec, trvec2tform | [R,t]=tr2rt(T) R=tform2rotm(T), t=tform2trvec(T)
|
|
tranimate | animtform | ||
tranimate2 | animtform2d | ||
transl | trvec2tform | transl(t) ~ trvec2tform(t) |
|
transl | tform2trvec | transl(T) ~ tform2trvec(T) |
|
trexp | expm |
trexp is efficient analytical form, but is actually slower than expm
|
|
tripleangle | tripleangleApp | ||
trlog | logm |
logm is slower than trlog
|
|
trnorm | tformnorm | ||
trot2 | tformr2d | ||
trotx | tformrx | ||
troty | tformry | ||
trotz | tformrz | ||
trplot | plottform | ||
trplot2 | plottform2d | ||
Twist | Twist2d | For SE(2) | |
Twist | Twist | For SE(3) | |
vex | skew2vec | ||
vexa | skewa2vec |
RVC2 function | MathWorks replacement | RVC3 toolbox | Notes |
---|
RVC2 function | MathWorks replacement | RVC3 toolbox | Notes |
---|
All angles are in radians. The "deg" option (angles in degrees instead of radians) does not exist for any replacement functions. Use deg2rad or rad2deg if required.
RVC3 function names conform to MathWorks naming and argument conventions.
RVC3 Wiki