cmsOverrideMove¶
SYNOPSYS¶
VT_I4 cmsOverrideMove([in] VT_I4 BoardId, [in] VT_I4 Axis,
[in] VT_R8 NewDistance, [out] VT_PI4 IsIgnored)
DESCRIPTION¶
이 함수는 cmsSxMoveStart() 이송 함수를 통하여 수행되는 상대좌표 In-position 모션에 대하여 상대좌표값, 즉 목표 거리값을 오버라이딩하는 함수입니다.
이 함수의 사용과 호출에 있어, 제공된 ㈜커미조아의 함수 헤더 Visual Basic 에서는 함수의 첨두어 cms 가 붙지 않습니다.
PARAMETER¶
▶ BoardId: 사용자가 설정한 디바이스(보드) ID.
▶ Axis : 축(채널) 번호. 축번호는 상수값으로 0번째 채널을 기준 채널로 임의의 채널을 설정할 수 있습니다.
▶ NewDistance : 새로운 목표 거리값을 지정합니다. 이 값의 기준 위치는 오버라이드하고자 하는 대상이 되는 cmsSxMoveStart() 작업에서 사용한 기준점과 같습니다. 즉, 새로운 목표 거리는 cmsSxMoveStart() 함수를 실행하기 바로직전의 위치를 기준으로 계산하여야 합니다.
▶ IsIgnored : cmsOverrideMove의 적용 성공/실패 여부를 반환 합니다.
Value
Meaning
0 또는 cmsFALSE 모션에러가 발생하였거나 이미 이송이 완료되어위치 오버라이드가 적용되지 않음.1
위치 오버라이드가 적용됨.
RETURN VALUE¶
Value |
Meaning |
---|---|
음수 |
수행 실패 |
ERR_NONE |
수행 성공 |
REFERENCE¶
위치 오버라이드를 수행하려는 시점에 이미 이송이 완료되어 버린 경우에는 위치 오버라이드는 무시되고 반환값을 0으로 반환합니다. 따라서 사용자는 반환값이 0인 경우에는 이미 이송이 완료되어 오버라이드가 적용되지 않은 것으로 인지하여야 하며, 그럼에도 불구하고 목표좌표를 수정해야하는 경우에는 cmsSxMove() 또는 cmsSxMoveTo() 함수를 추가적으로 수행해야 합니다. 이러한 경우에는 오버라이드라는 개념 보다는 추가 이송의 개념을 의미합니다.