Graphisoft®

API Development KitVersion: 18

APIAny_DeleteSubPolyID

폴리곤으로부터 전체 서브 폴리곤(구멍)을 제거합니다.

    GSErrCode ACAPI_Goodies (
        APIAny_DeleteSubPolyID,
        API_ElementMemo*     elementMemo,
        Int32*               subPolyIndex
    );

 

파라미터

elementMemo
[in/out] 폴리곤 데이터입니다.
subPolyIndex
[in] 제거할 서브 폴리곤 인덱스입니다.

 

리턴 값

NoError
함수가 성공적으로 완료되었습니다.
APIERR_BADPARS
파라미터들 중 하나 이상이 NULL입니다. 또는 유효하지 않은 subPolyIndex가 전달되었습니다.
APIERR_MEMFULL
메모리가 부족합니다.
APIERR_IRREGULARPOLY
입력 폴리곤이 불규칙적입니다.

다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.

 

설명

이 함수는 API_ElementMemo structure에 전달된 폴리곤으로부터 전체 서브폴리곤(구멍)을 제거하는 데 사용합니다.

폴리곤 데이터 structure에 대하여 더 자세한 것을 알기 위해서는 API_Polygon structure를 참조하십시오. API_ElementMemo structure의 coords, pends, parcs, vertexIDs 핸들들은 반드시 초기화되어야 합니다.

다른 메모 핸들들은 건드리지 않는다는 것을 참고하십시오. 폴리곤이 초기화된 사이드 각도들을 가진 지붕에 속한 경우, 이것은 수동으로 정렬되어야 합니다.

 

예제

GSErrCode DeleteSubPoly (const API_Guid& guid)
{
    API_ElementMemo   memo;
    Int32             lastSubPoly;
    GSErrCode         err;

    err = ACAPI_Element_GetMemo (guid, &memo);
    if (err) {
        lastSubPoly = BMGetHandleSize ((GSHandle) memo.pends) / sizeof (Int32) - 1;
        if (lastSubPoly > 1)
            err = ACAPI_Goodies (APIAny_DeleteSubPolyID, &memo, &lastSubPoly);
    }
    return err;
}

 

요구사항

버전: API 4.1 또는 이후
헤더: APIdefs_Goodies.h

 

참고사항

API_Polygon, API_ElementMemo,
APIAny_InsertPolyNodeID, APIAny_DeletePolyNodeID, APIAny_InsertSubPolyID,
ACAPI_Goodies, API 함수