APIIo_SetConstraintID
그래픽 사용자 입력을 위한 드로잉 제약사항을 세트합니다.
GSErrCode ACAPI_Interface (
APIIo_SetConstraintID,
API_ConstraintPars* constraintPars
);
파라미터
- constraintPars
- [in] 드로잉 제약사항의 파라미터들입니다.
리턴 값
NoError- 함수가 성공적으로 완료되었습니다.
APIERR_BADPARSconstraintPars가NULL입니다.APIERR_BADIDconstraintPars안에 유효하지 않은 타입의 드로잉 제약조건이 있습니다.
다른 공통 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 함수