Contenido principal

so2

Rotación SO(2)

Desde R2022b

    Descripción

    El objeto so2 representa una rotación SO(2) en 2D.

    Para obtener más información, consulte la sección Matriz de rotación ortonormal 2D.

    Este objeto actúa como una matriz numérica que permite componer rotaciones utilizando la multiplicación y la división.

    Creación

    Descripción

    rotation = so2 crea una rotación SO(2) que representa una rotación de identidad sin traslación.

    rotation=[1001]

    rotation = so2(rotation) crea una rotación SO(2) rotation que representa una rotación pura definida por la rotación ortonormal rotation.

    rotation=[r11r12r21r22]

    rotation = so2(transformation) crea una rotación SO(2) a partir de la transformación SE(2) transformation.

    rotation = so2(angle,"theta") crea una rotación SO(2) rotation a partir de un ángulo de rotación angle en torno al eje z.

    ejemplo

    Nota

    Si una entrada contiene más de una rotación, la salida rotation es un arreglo de N elementos de objetos so2 que corresponde a cada una de las N rotaciones de entrada.

    Argumentos de entrada

    expandir todo

    Rotación ortonormal, especificada como una matriz de 2 por 2, una matriz de 2 por 2 por N, un objeto so2 escalar o un arreglo de N elementos de objetos so2. N es el número total de rotaciones.

    Si rotation es un arreglo, el número resultante de objetos so2 creados en el arreglo de salida es igual a N.

    Ejemplo: eye(2)

    Tipos de datos: single | double

    Transformación homogénea, especificada como una matriz de 3 por 3, un arreglo de 3 por 3 por N, un objeto escalar se3 o un arreglo de N elementos de objetos se2. N es el número total de transformaciones especificado.

    Si transformation es un arreglo, el número resultante de objetos so2 creados es igual a N.

    Ejemplo: eye(3)

    Tipos de datos: single | double

    Ángulo de rotación del eje z, especificado como una matriz de N por M. Cada elemento de la matriz es un ángulo, en radianes, sobre el eje z. El objeto so2 crea un objeto so2 para cada ángulo.

    Si angle es una matriz de N por M, el número resultante de objetos so2 creados es igual a N.

    El ángulo de rotación es positivo en sentido contrario a las agujas del reloj cuando se observa a lo largo del eje hacia el origen.

    Tipos de datos: single | double

    Funciones del objeto

    expandir todo

    mtimes, *Transformation or rotation multiplication
    mrdivide, /Transformation or rotation right division
    rdivide, ./Element-wise transformation or rotation right division
    times, .*Element-wise transformation or rotation multiplication
    interpInterpolate between transformations
    distCalculate distance between transformations
    normalizeNormalize transformation or rotation matrix
    transformApply rigid body transformation to points
    rotmExtraer matriz de rotación
    trvecExtract translation vector
    tformExtraer transformación homogénea
    thetaConvert transformation or rotation to 2-D rotation angle
    xythetaConvert transformation or rotation to compact 2-D pose representation
    so3Rotación SO(3)

    Ejemplos

    contraer todo

    Defina una rotación del ángulo de pi/4 y una traslación xy de [6 4].

    angle = pi/4;

    Cree una rotación SO(2) usando el ángulo.

    R = so2(angle,"theta")
    R = so2
        0.7071   -0.7071
        0.7071    0.7071
    
    

    Algoritmos

    expandir todo

    Capacidades ampliadas

    expandir todo

    Generación de código C/C++
    Genere código C y C++ mediante MATLAB® Coder™.

    Historial de versiones

    Introducido en R2022b

    expandir todo

    Consulte también

    Funciones

    Objetos