이전 버전(1.33.4)의 문서를 보고 있습니다. 이 버전은 계속 지원됩니다.
최신 버전 정보는 1.33.5에서 확인하세요.

SAFETY_ZONE_SHAPE_DATA

여러 안전 구역(Safety Zone) 형상 유형을 담는 유연한 데이터 컨테이너를 정의하는 공용체입니다. 구조체 하나로 구, 원기둥, 직육면체, 캡슐이나 그 밖의 복잡한 3D 구역 형상을 표현할 수 있습니다. 구역 설정 구조체(예: CONFIG_SAFETY_ZONE)와 함께 사용합니다.

공용체는 여러 형상 정의가 데이터 블록 하나를 공유하므로 메모리를 효율적으로 사용합니다.

BYTE#

필드 이름

자료형

형상 유형

비고

0

_tSphere

SAFETY_ZONE_SHAPE_SPHERE

구

중심과 반지름으로 구 모양 구역을 정의합니다.

0

_tCylinder

SAFETY_ZONE_SHAPE_CYLINDER

원기둥

반지름과 Z 제한으로 원기둥 모양 구역을 정의합니다.

0

_tCuboid

SAFETY_ZONE_SHAPE_CUBOID

직육면체

전역 축에 정렬된 직육면체 박스를 정의합니다.

0

_tOBB

SAFETY_ZONE_SHAPE_TILTED_CUBOID

기울어진 직육면체

로컬 축으로 방향이 지정된(회전된) 박스를 정의합니다.

0

_tMultiPlane

SAFETY_ZONE_SHAPE_MULTI_PLANE

다중 평면

평면 최대 6개로 둘러싸인 볼록한 공간을 정의합니다.

0

_tCapsule

SAFETY_ZONE_SHAPE_CAPSULE

캡슐

캡슐 모양 구역(양 끝이 반구인 원기둥)을 정의합니다.

0

_iBuffer

unsigned char[120]

원시 메모리 버퍼

모든 형상 유형에 공통인 메모리 매핑에 사용합니다.

전체 크기: 120바이트(공유 버퍼 최대 크기)

정의 위치: DRFS.h

typedef union _SAFETY_ZONE_SHAPE_DATA
{
    SAFETY_ZONE_SHAPE_SPHERE        _tSphere;
    SAFETY_ZONE_SHAPE_CYLINDER      _tCylinder;
    SAFETY_ZONE_SHAPE_CUBOID        _tCuboid;
    SAFETY_ZONE_SHAPE_TILTED_CUBOID _tOBB;
    SAFETY_ZONE_SHAPE_MULTI_PLANE   _tMultiPlane;
    SAFETY_ZONE_SHAPE_CAPSULE       _tCapsule;
    unsigned char                   _iBuffer[120];
} SAFETY_ZONE_SHAPE_DATA, *LPSAFETY_ZONE_SHAPE_DATA;

참고

  • 이 공용체로 안전 구역 형상을 다형적으로 표현할 수 있습니다.

  • 선택한 구역 유형에 따라 한 번에 형상 필드 하나만 유효합니다.

  • _iBuffer는 데이터 직렬화나 프로토콜 전송에 사용하는 원시 바이너리 메모리 영역입니다.