Main Content

Cette page a été traduite par traduction automatique. Cliquez ici pour voir la dernière version en anglais.

rotm2tform

Convertir la matrice de rotation en transformation homogène

Description

exemple

tform = rotm2tform(rotm) convertit la matrice de rotation rotm en une matrice de transformation homogène tform. La matrice de rotation d'entrée doit être sous la forme de prémultiplication pour les rotations. Lorsque vous utilisez la matrice de transformation, prémultipliez-la par les coordonnées à transformer (par opposition à la postmultiplication).

Exemples

réduire tout

rotm = [1 0 0 ; 0 -1 0; 0 0 -1];
tform = rotm2tform(rotm)
tform = 4×4

     1     0     0     0
     0    -1     0     0
     0     0    -1     0
     0     0     0     1

Arguments d'entrée

réduire tout

Matrice de rotation, spécifiée sous la forme d'un tableau n de 2 x 2 x ou d'un tableau n de 3 x 3 x contenant n matrices de rotation. Chaque matrice de rotation est soit 2 par 2, soit 3 par 3 et est orthonormée. La matrice de rotation d'entrée doit être sous la forme prémultipliée pour les rotations.

Remarque

Les matrices de rotation qui ne sont pas orthonormées peuvent être normalisées avec la fonction normalize .

Les matrices de rotation 2D sont de cette forme :

R=[r11r12r21r22]

Les matrices de rotation 3D sont de cette forme :

R=[r11r12r13r11r22r23r31r32r33]

Exemple : [0 0 1; 0 1 0; -1 0 0]

Arguments de sortie

réduire tout

Transformation homogène, renvoyée sous la forme d'un tableau 3 par 3 par n ou d'un tableau 4 par 4 par- n . n est le nombre de transformations homogènes. Lorsque vous utilisez la matrice de transformation, prémultipliez-la par les coordonnées à transformer (par opposition à la postmultiplication).

Les matrices de transformation homogènes 2D sont de cette forme :

T=[r11r12t1r21r22t2001]

Les matrices de transformation homogènes 3D sont de cette forme :

T=[r11r12r13t1r21r22r23t2r31r32r33t30001]

Exemple : [0 0 1 0; 0 1 0 0; -1 0 0 0; 0 0 0 1]

En savoir plus

réduire tout

Matrice de transformation homogène 2D

Les matrices de transformation homogènes 2D se composent à la fois d'une rotation SO(2) et d'une translation xy.

Pour en savoir plus sur les rotations SO(2), consultez la section 2-D Orthonormal Rotation Matrix de l'objet so2 .

La traduction s'effectue le long des axes x- et y - en tant que vecteur colonne à deux éléments :

t=[xy]

Le SO(2) la matrice de rotation R est appliquée au vecteur de translation t pour créer la matrice de translation homogène T. La matrice de rotation est présente dans le coin supérieur gauche de la matrice de transformation sous forme de sous-matrice 2 x 2, et le vecteur de translation est présent sous forme de vecteur à deux éléments dans la dernière colonne.

T=[Rt01×21]=[I2t01×21]·[R001×21]

Matrice de transformation homogène 3D

Les matrices de transformation homogènes 3D se composent à la fois d'une rotation SO(3) et d'une translation xyz.

Pour en savoir plus sur les rotations SO(3), consultez la section Matrice de rotation orthonormale 3D de l'objet so3 .

La traduction s'effectue le long des axes x-, y- et z - en tant que vecteur colonne à trois éléments :

t=[xyz]

La matrice de rotation SO(3) R est appliquée au vecteur de translation t pour créer la matrice de translation homogène T. La matrice de rotation est présente dans le coin supérieur gauche de la matrice de transformation sous forme de sous-matrice 3 x 3, et le vecteur de translation est présent sous forme de vecteur à trois éléments dans la dernière colonne.

T=[Rt01x31]=[I3t01x31]·[R001x31]

Capacités étendues

Génération de code C/C++
Générez du code C et C++ avec MATLAB® Coder™.

Historique des versions

Introduit dans R2015a

développer tout

Voir aussi

| | | |