Graphisoft®

API Development KitVersion: 18

APIEnv_Change3DCuttingPlanesID

3D 절단 면들을 변경합니다.

    GSErrCode ACAPI_Environment (
        APIEnv_Change3DCuttingPlanesID,
        API_3DCutPlanesInfo*     cutInfo
    );

 

파라미터

cutInfo
"3D Cutting Planes..." 다이얼로그의 데이터입니다.

 

리턴 값

NoError
함수가 성공적으로 완료되었습니다.
APIERR_BADPARS
cutInfoNULL이거나 유효하지 않은 데이터를 포함하고 있습니다.
APIERR_NOPLAN
열린 프로젝트가 없습니다.

 

설명

이 함수는 3D 절단 면 파라미터들을 변경하는 데 사용합니다.

 

예제

API_3DCutPlanesInfo cutInfo;
BNZeroMemory (&cutInfo, sizeof (API_3DCutPlanesInfo));

GSErrCode err = ACAPI_Environment (APIEnv_Get3DCuttingPlanesID, &cutInfo, NULL);
if (err == NoError) {
    if (cutInfo.shapes != NULL)
        BMKillHandle ((GSHandle *) &(cutInfo.shapes));

    cutInfo.isCutPlanes = true;
    cutInfo.nShapes = 2;
    cutInfo.shapes = reinterpret_cast<API_3DCutShapeType**> (BMAllocateHandle (cutInfo.nShapes * sizeof (API_3DCutShapeType), ALLOCATE_CLEAR, 0));
    if (cutInfo.shapes != NULL) {
        (*cutInfo.shapes)[0].cutStatus = 2;
        (*cutInfo.shapes)[0].cutPen = 3;
        (*cutInfo.shapes)[0].cutMater = 11;
        (*cutInfo.shapes)[0].pa = -3.0499805934954503;
        (*cutInfo.shapes)[0].pb = 0.43107875694662845;
        (*cutInfo.shapes)[0].pc = 3.5670423669734248;
        (*cutInfo.shapes)[0].pd = 2.4161856450872907;
        (*cutInfo.shapes)[1].cutStatus = 3;
        (*cutInfo.shapes)[1].cutPen = 4;
        (*cutInfo.shapes)[1].cutMater = 12;
        (*cutInfo.shapes)[1].pa = -2.9081872443425456;
        (*cutInfo.shapes)[1].pb = 0.37912781320386035;
        (*cutInfo.shapes)[1].pc = 3.4016167929617027;
        (*cutInfo.shapes)[1].pd = -1.1569668026192714;
    }

    err = ACAPI_Environment (APIEnv_Change3DCuttingPlanesID, &cutInfo, NULL);
    if (err == NoError) {
        API_WindowInfo windowInfo;
        BNZeroMemory (&windowInfo, sizeof (API_WindowInfo));
        windowInfo.typeID = APIWind_3DModelID;
        err = ACAPI_Automate (APIDo_ChangeWindowID, &windowInfo, NULL);
    }

    BMKillHandle ((GSHandle *) &(cutInfo.shapes));
}

 

요구사항

버전: API 3.1 또는 이후
헤더: APIdefs_Environment.h

 

참고사항

API_3DCutPlanesInfo
APIEnv_Get3DCuttingPlanesID
ACAPI_Environment
API 함수