APIEnv_Change3DCuttingPlanesID
3D 절단 면들을 변경합니다.
GSErrCode ACAPI_Environment ( APIEnv_Change3DCuttingPlanesID, API_3DCutPlanesInfo* cutInfo );
파라미터
- cutInfo
- "3D Cutting Planes..." 다이얼로그의 데이터입니다.
리턴 값
NoError
- 함수가 성공적으로 완료되었습니다.
APIERR_BADPARS
cutInfo
가NULL
이거나 유효하지 않은 데이터를 포함하고 있습니다.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 함수