Main Content

xyzquat

변환 또는 회전을 간소한 3차원 자세 표현으로 변환

R2023b 이후

    설명

    pose = xyzquat(transformation)은 변환 transformation을 간소한 3차원 자세 표현 pose로 변환합니다.

    예제

    pose = xyzquat(rotation)은 회전 rotation을 평행 이동이 없는 간소한 3차원 자세 표현 pose로 변환합니다.

    예제

    예제

    모두 축소

    xyz 위치가 [2 3 1]이고 숫자형 쿼터니언으로 정의되는 회전이 있는 SE(3) 변환을 만듭니다. eul2quat 함수를 사용하여 숫자형 쿼터니언을 생성합니다.

    trvec = [2 3 1];
    quat1 = eul2quat([0 0 deg2rad(30)]);
    pose1 = [trvec quat1]
    pose1 = 1×7
    
        2.0000    3.0000    1.0000    0.9659    0.2588         0         0
    
    
    T = se3(pose1,"xyzquat")
    T = se3
        1.0000         0         0    2.0000
             0    0.8660   -0.5000    3.0000
             0    0.5000    0.8660    1.0000
             0         0         0    1.0000
    
    

    변환을 간소한 표현의 자세로 다시 변환합니다.

    pose2 = xyzquat(T)
    pose2 = 1×7
    
        2.0000    3.0000    1.0000    0.9659    0.2588         0         0
    
    

    숫자형 쿼터니언으로 정의되는 SO(3) 회전을 만듭니다. eul2quat 함수를 사용하여 숫자형 쿼터니언을 생성합니다.

    quat1 = eul2quat([0 0 deg2rad(30)])
    quat1 = 1×4
    
        0.9659    0.2588         0         0
    
    
    R = so3(quat1,"quat")
    R = so3
        1.0000         0         0
             0    0.8660   -0.5000
             0    0.5000    0.8660
    
    

    회전을 간소한 표현의 3차원 자세로 변환합니다.

    pose1 = xyzquat(R)
    pose1 = 1×7
    
             0         0         0    0.9659    0.2588         0         0
    
    

    입력 인수

    모두 축소

    변환으로, se3 객체로 지정되거나 se3 객체 요소를 N개 가진 배열로 지정됩니다. 여기서 N은 총 변환 수입니다.

    회전으로, so3 객체로 지정되거나 so3 객체 요소를 N개 가진 배열로 지정됩니다. 여기서 N은 총 회전 개수입니다.

    출력 인수

    모두 축소

    간소한 표현의 3차원 자세로, M×3 행렬로 반환되며, 여기서 각 행의 형식은 [x y z qw qx qy qz]입니다. M은 지정된 총 변환 수입니다. x, y, z는 xyz 위치를 구성하며, qw, qx, qy, qz는 쿼터니언 회전을 구성합니다.

    버전 내역

    R2023b에 개발됨

    참고 항목

    |