APIDb_DoClipID
클리핑(clipping) 세션 도중에 생성된 요소들을 자릅니다.
GSErrCode ACAPI_Database ( APIDb_DoClipID, API_Region* clipRegion, API_ClipTran* clipTran );
파라미터
- clipRegion
- 요소들을 자르는 영역입니다.
- clipTran
- 클리핑(clipping) 변환입니다.
리턴 값
NoError
- 함수가 성공적으로 완료되었습니다.
APIERR_BADPARS
clipRegion
이NULL
입니다.APIERR_NESTING
- 해당 데이터베이스에 대한 클립 세션(clip session)이 열려 있습니다.
다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.
설명
클리핑(clipping) 영역과 변환을 이용하여 잘린 요소들을 현재 데이터베이스 안에 생성할 수 있습니다.
APIDb_StartClippingSessionID 데이터베이스 함수를 사용하여 임시 데이터베이스를 엽니다.
ACAPI_Element_Create로 요소들을 생성하여 거기에 넣고,
APIDb_DoClipID
를 호출하여 주어진 클리핑(clipping) 파라미터들을 적용하여 그것들을 병합하여 실제 데이터베이스로 넣습니다.
대상 데이터베이스를 복원하기 위해 APIDb_StopClippingSessionID 데이터베이스 함수로 클리핑 세션(clipping session)을 닫는 것을 잊지 마십시오.
2D 드로잉 요소들만 자를 수 있음을 참고하십시오. 벽, 기둥과 같은 건설 요소들은 클리핑 알고리즘에 참여하지 않습니다.
예제
API_Region clipRegion; API_Element element; GSErrCode err; BNZeroMemory (&clipRegion, sizeof (API_Region)); clipRegion.box.xMin = 0.0; clipRegion.box.xMax = 2.0; clipRegion.box.yMin = 1.54; clipRegion.box.yMax = 2.54; err = ACAPI_Database (APIDb_StartClippingSessionID, NULL, NULL); if (err == NoError) { /* ... */ err = ACAPI_Element_Create (&element, NULL); /* ... */ err = ACAPI_Database (APIDb_DoClipID, &clipRegion, NULL); } err = ACAPI_Database (APIDb_StopClippingSessionID, NULL, NULL);
요구사항
- 버전: API 4.1 또는 이후
- 헤더: APIdefs_Database.h
참고사항
API_Region
APIDb_StartClippingSessionID
APIDb_StopClippingSessionID
ACAPI_Element_Create
ACAPI_Database
API 함수