Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

rigidtform3d

Transformación geométrica rígida 3D

Desde R2022b

    Descripción

    Un objeto rigidtform3d almacena información sobre una transformación geométrica rígida 3D y permite transformaciones directas e inversas.

    Creación

    Descripción

    tform = rigidtform3d crea un objeto rigidtform3d que realiza una transformación identidad.

    tform = rigidtform3d(R,Translation) crea un objeto rigidtform3d que realiza una transformación rígida basada en los valores especificados de las propiedades R y Translation. Estas propiedades indican la matriz de rotación y las cantidades de traslación en las direcciones x-, y- y z.

    ejemplo

    tform = rigidtform3d(eulerAngles,Translation) crea un objeto rigidtform3d que realiza una transformación rígida basada en ángulos de Euler y el valor especificado de la propiedad Translation.

    tform = rigidtform3d(A) crea un objeto rigidtform3d y establece la propiedad A como la matriz de transformación rígida 3D especificada.

    tform = rigidtform3d(tformIn) crea un objeto rigidtform3d a partir de otro objeto de transformación geométrica, tformIn, que representa una transformación geométrica rígida 3D válida.

    Argumentos de entrada

    expandir todo

    Ángulos de Euler en orden x,y,z en grados, especificados como vector numérico de 3 elementos con forma [rx ry rz]. Los ángulos de Euler establecen la propiedad R como un producto con tres matrices de rotación según lo siguiente:

     Rx = [1 0 0; 0 cosd(rx) -sind(rx); 0 sind(rx) cosd(rx)];
     Ry = [cosd(ry) 0 sind(ry); 0 1 0; -sind(ry) 0 cosd(ry)];
     Rz = [cosd(rz) -sind(rz) 0; sind(rz) cosd(rz) 0; 0 0 1];
      R = Rz*Ry*Rx;

    Tipos de datos: double | single

    Transformación geométrica rígida 3D, especificada como objeto affinetform3d, rigidtform3d, simtform3d o transltform3d.

    Propiedades

    expandir todo

    Transformación rígida 3D directa, especificada como matriz numérica de 4 por 4. Al crear el objeto, también puede especificar A como matriz numérica de 3 por 4. En este caso, el objeto concatena el vector fila [0 0 0 1] al final de la matriz, formando una matriz de 4 por 4. El valor predeterminado de A es la matriz identidad.

    La matriz A transforma el punto (u, v, w) en el espacio de coordenadas de entrada en el punto (, x, y, z) en el espacio de coordenadas de salida utilizando la convención:

    [xyz1]=Α×[uvw1]

    En una transformación rígida, A tiene la forma:

    Α=[R(1,1)R(1,2)R(1,3)txR(2,1)R(2,2)R(2,3)tyR(3,1)R(3,2)R(3,3)tz0001]

    donde cada elemento R(i,j) es elemento (i, j) de la matriz de rotación especificada por la propiedad R. tx, ty y tz son la cantidad de traslación en las direcciones x-, y- y z, respectivamente, y corresponden a la propiedad Translation.

    Tipos de datos: double | single

    Matriz de rotación, especificada como matriz numérica de 3 por 3. La matriz de rotación tiene el efecto de rotación por el eje z primero, después por el eje y, y finalmente por el eje x.

    Cantidad de traslación, especificada como vector numérico de 3 elementos con forma [tx ty tz].

    Tipos de datos: double | single

    Esta propiedad o parámetro es de solo lectura.

    Dimensionalidad de la transformación geométrica para puntos tanto de entrada como de salida, especificada como 3.

    Tipos de datos: double

    Funciones del objeto

    invertInvertir la transformación geométrica
    outputLimitsFind output spatial limits given input spatial limits
    transformPointsForwardApply forward geometric transformation
    transformPointsInverseApply inverse geometric transformation

    Ejemplos

    contraer todo

    Especifique ángulos de Euler y cantidades de traslación.

    angles = [30 0 90];
    translation = [10 20.5 15];

    Cree un objeto rigidtform3d que realice la rotación y traslación especificadas.

    tform = rigidtform3d(angles,translation)
    tform = 
      rigidtform3d with properties:
    
        Dimensionality: 3
           Translation: [10 20.5000 15]
                     R: [3x3 double]
                     A: [4x4 double]
    
    

    Examine el valor de la propiedad A.

    tform.A
    ans = 4×4
    
             0   -0.8660    0.5000   10.0000
        1.0000         0         0   20.5000
             0    0.5000    0.8660   15.0000
             0         0         0    1.0000
    
    

    Capacidades ampliadas

    Historial de versiones

    Introducido en R2022b

    expandir todo