APIIo_SetConstraintID
그래픽 사용자 입력을 위한 드로잉 제약사항을 세트합니다.
GSErrCode ACAPI_Interface ( APIIo_SetConstraintID, API_ConstraintPars* constraintPars );
파라미터
- constraintPars
- [in] 드로잉 제약사항의 파라미터들입니다.
리턴 값
NoError
- 함수가 성공적으로 완료되었습니다.
APIERR_BADPARS
constraintPars
가NULL
입니다.APIERR_BADID
constraintPars
안에 유효하지 않은 타입의 드로잉 제약조건이 있습니다.
다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.
설명
이 함수는 사용자 입력 전에 드로잉 제약조건을 세트하는 데 사용합니다.
이것은 APIIo_GetPointID, APIIo_GetLineID, APIIo_GetArcID, APIIo_GetPolyID 직전에,
또는 addPolyNodeProc
, delPolyNodeProc
콜백 함수들 안에서 호출될 수 있습니다.
입력을 마친 후에 APIIo_ResetConstraintID 함수를 호출하는 것을 잊지 마십시오.
예제
API_GetPointType pointInfo; API_GetLineType lineInfo; API_ConstraintPars constPars; Int32 ind; char buffer [256]; GSErrCode err; BNZeroMemory (&pointInfo, sizeof (API_GetPointType)); BNZeroMemory (&lineInfo, sizeof (API_GetLineType)); BNZeroMemory (&constPars, sizeof (API_ConstraintPars)); CHCopyC ("Click the first point of the line", pointInfo.prompt); err = ACAPI_Interface (APIIo_GetPointID, &pointInfo, NULL); if (err == NoError) { constPars.constType = APIConst_X; constPars.constValue = 2.0; constPars.useLocOrigo = true; err = ACAPI_Interface (APIIo_SetConstraintID, &constPars, NULL); if (err == NoError) { CHCopyC ("Enter the second point of the line", lineInfo.prompt); lineInfo.startCoord = pointInfo.pos; /* 클릭한 포인트로 라인을 시작함 */ err = ACAPI_Interface (APIIo_GetLineID, &lineInfo, NULL); } ACAPI_Interface (APIIo_ResetConstraintID, NULL, NULL); } if (err == APIERR_CANCEL) ACAPI_WriteReport ("Input was interrupted", true);
API 개발 키트의 Interface_Functions 예제 프로젝트도 보십시오.
요구사항
- 버전: API 6.1 또는 이후
- 헤더: APIdefs_Interface.h
참고사항
APIIo_ResetConstraintID
API_ConstraintPars
API_GetPolyType
API_RubberPolyCallbacks
APIIo_GetPointID
APIIo_GetLineID
APIIo_GetArcID
ACAPI_Interface
API 함수