API_ZoneType
구역(Zone) 스탬프를 의미합니다.
typedef struct {
API_Elem_Head head;
short pen;
short catInd;
GS::Bool8 useStampPens;
GS::Bool8 manual;
GS::Bool8 refLineFlag;
GS::Bool8 show_found_poly;
char info [API_InfoLen];
GS::uchar_t roomName [API_UniLongNameLen];
GS::uchar_t roomNoStr [32];
double roomBaseLev;
double roomHeight;
double roomTopOffset;
double roomFlThick;
double roomLSize;
char reducePercent;
GS::Bool8 oneMat;
short material;
Int32 filler_1;
double stampAngle;
GS::Bool8 fixedAngle;
char filler_2;
short floorFillPen;
short floorFillBGPen;
short floorFillInd;
short floorContLPen;
short floorContLType;
GS::Bool8 useContourLine;
GS::Bool8 useLocalOrigo;
GS::Bool8 use3DHatching;
GS::Bool8 useFloorFill;
Int32 libInd;
API_LinkToSettings linkToSettings;
short relativeTopStory;
short filler_3[3];
API_Polygon poly;
API_Coord pos;
API_Coord refPos;
API_Coord locOrigo;
double fillAngle;
API_Polygon refPoly;
API_Guid stampGuid;
} API_ZoneType;
멤버
- head
- 일반적인 요소 헤더입니다.
- pen
- 구역 스탬프에 대한 펜 속성 인덱스입니다.
useStampPens가false일 때에만 사용합니다. - catInd
- 실제 구역 카테고리의 인덱스입니다.
- useStampPens
- 단일 펜으로 그리거나 (
false) 또는 구역 카테고리 라이브러리 파트에서 정의한 펜을 사용하여 그립니다. (true) - manual
- 수동으로 생성된 구역입니다; 모든 모서리들은 static이며, reference 포인트가 없습니다. (
refPos) - refLineFlag
- 벽의 (옆면 라인들이 아닌) 레퍼런스 라인들에 의해 둘러싸였습니다.
- show_found_poly
- 만약
true이면, ArchiCAD는 계산을 위해 구역을 둘러싸는 벽들의 레퍼런스 라인을 사용합니다; 그 외에는 벽들의 안쪽 모서리들을 사용합니다. (refLineFlag가true일 때에만 사용할 수 있음) - info
- 문자열 형태의 일부 정보입니다. Zone Settings 다이얼로그의 리스팅 페이지 위에 나타납니다.
- roomName[API_UniLongNameLen]

- 룸(room)의 이름입니다.
- roomNoStr[32]

- 문자열 형태의 룸(room)의 개수입니다.
- roomBaseLev
- 바닥 레벨로부터 측정된 룸(room)의 베이스 레벨입니다.
- roomHeight
- 룸(room)의 높이입니다.
- roomTopOffset

- 만약 구역이 위층에 링크되어 있으면, 위층 바닥으로부터 오프셋입니다.
- roomFlThick
- 룸(room)의 서브-층 두께입니다.
- roomLSize
- mm 단위로 표현된 룸(room) 글자 크기입니다.
- reducePercent
- 이 값으로 구역 넓이를 감소시킵니다. [%]
- oneMat
- 만약 true이면, 모든 표면들에 대한
material을 사용합니다; 그 외에는 경계 벽들의 재질과 트리밍 요소들의 재질을 상속합니다. - material
- 3D 구역들의 (free or all) 표면들의 재질 속성 인덱스입니다.
- stampAngle

- 룸(room) 스탬프의 회전 각도입니다. [radian]
- fixedAngle

- 요소가 회전되고 이 flag가 true이면, stampAngle가 변경되지 않을 것입니다.
- floorFillPen

- 구역의 커버 채우기의 펜 속성 인덱스입니다.
- floorFillBGPen

- 구역의 커버 채우기의 배경 펜 속성 인덱스입니다.
- floorFillInd

- 구역의 커버 채우기의 채우기 속성 인덱스입니다.
- floorContLPen

- 구역의 외곽의 펜 속성 인덱스입니다.
- floorContLType

- 구역의 외곽의 라인 타입 속성 인덱스입니다.
- useContourLine

- 외곽 라인을 그립니까?
- useLocalOrigo

- 커버 채우기 드로잉에 대하여 로컬 원점을 사용합니까?
- use3DHatching

- Floor Plan 뷰에서 Vectorial 3D Hatch 패턴을 사용합니까? 이것은 요소의 꼭대기 면 재질에 대한 Vectorial 3D Hatch 세트를 적용하게 됩니다.
- useFloorFill

- 커버 채우기를 사용합니까?
- libInd
- 라이브러리의 구역 카테고리 라이브러리 파트에 대한 인덱스입니다.
- linkToSettings

- 홈 층에 링크하기 모드입니다.
- relativeTopStory

- 링크된 위층입니다. (홈 층에 상대적임) 음수는 유효하지 않습니다. 0 = 위층에 연결되어 있지 않음.
- poly
- 구역의 폴리곤입니다.
- pos
- 구역 스탬프의 원점의 위치입니다.
- refPos
- 수동으로 생성되지 않았다면 구역을 찾기 위한 레퍼런스 포인트입니다.
- locOrigo

- 만약 요소에 링크되어 있다면, 구역의 커버 채우기 레퍼런스 벡터의 베이스 좌표입니다.
- fillAngle

- 만약 요소에 링크되어 있다면, 구역의 커버 채우기 레퍼런스 벡터의 각도입니다.
- refPoly
- 구역의 발견한 폴리곤입니다. 당신은 구역의 API_ElementMemo를 통해 기하 정보에 접근할 수 있습니다.
- stampGuid

- 구역 스탬프 라이브러리 파트의 GUID입니다.
설명
구역 카테고리의 추가 파라미터들은 API_ElementMemo의 params 필드에서 찾을 수 있습니다.
ACAPI_Element_GetRelations를 통해 구역 내에 건설 요소들과 객체들이 얼마나 많은지, 어떤 것이 있는지 알 수 있습니다.
요구사항
- 버전: API 2.1 또는 이후
- 헤더: APIdefs_Elements.h
참고사항
API_Elem_Head, API_Coord, API_Element,
API_Polygon, API_AddParType, API_ElementMemo,
요소 관리자, API 타입