IInkDisp::NearestPoint 메서드(msinkaut.h)

알려진 지점에 가장 가까운 InkDisp 개체 내의 IInkStrokeDisp를 검색합니다. 필요에 따라 가장 가까운 지점의 인덱스와 지정된 지점에서 스트로크까지의 거리를 제공합니다.

구문

HRESULT NearestPoint(
  [in]                long           X,
  [in]                long           Y,
  [in, out, optional] float          *PointOnStroke,
  [in, out, optional] float          *DistanceFromPacket,
  [out, retval]       IInkStrokeDisp **Stroke
);

매개 변수

[in] X

x- 점의 잉크 공간에 있는 위치입니다.

[in] Y

점의 y- 잉크 공간 위치를 지정합니다.

[in, out, optional] PointOnStroke

선택 사항입니다. InkDisp 개체 내의 지정된 지점에 가장 가까운 스트로크 줄의 점을 검색합니다. 예를 들어 값이 1.5이면 스트로크의 첫 번째 패킷과 두 번째 패킷 사이의 중간에 점이 떨어짐을 나타냅니다. 이 매개 변수는 NULL일 수 있습니다. 기본값은 0입니다.

[in, out, optional] DistanceFromPacket

선택 사항입니다. 잉크 공간의 지정된 지점과 InkDisp 개체에서 가장 가까운 스트로크 사이의 거리를 검색합니다. 이 매개 변수는 NULL일 수 있습니다. 기본값은 0입니다.

[out, retval] Stroke

이 메서드가 반환될 때 InkDisp 개체의 지정된 지점에 가장 가까운 점을 포함하는 IInkStrokeDisp가 포함됩니다. 둘 이상의 스트로크에 지정된 점과 동일한 거리가 있는 점이 포함된 경우 이 결과의 값은 임의입니다.

반환 값

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

반환 코드 설명
S_OK
성공.
E_POINTER
매개 변수에 잘못된 포인터가 포함되어 있습니다.
E_FAIL
지정되지 않은 오류가 발생했습니다.
E_INK_EXCEPTION
메서드 내에서 예외가 발생했습니다.
E_OUTOFMEMORY
메모리 작업을 할당할 수 없습니다.

설명

출력 지점 매개 변수는 스트로크 줄의 점이 두 개의 실제 좌표점 사이에 떨어질 수 있으므로 부동 소수점 숫자로 정의됩니다. 이 값을 사용하여 Split 메서드를 사용하여 스트로크를 분할하거나 값을 위로 또는 아래로 반올림하여 스트로크의 패킷을 인덱싱합니다.

distanceFromPacket 매개 변수는 지점에서 스트로크 봉투까지의 거리를 설명합니다. 이 값은 두 점 사이의 거리에서 스트로크 너비의 절반을 뺀 값입니다.

요구 사항

   
지원되는 최소 클라이언트 Windows XP 태블릿 PC 버전 [데스크톱 앱만 해당]
지원되는 최소 서버 지원되는 버전 없음
대상 플랫폼 Windows
헤더 msinkaut.h
라이브러리 InkObj.dll

참고 항목

IInkDisp

IInkStrokeDisp 인터페이스

InkDisp 클래스

NearestPoint 메서드 [IInkStrokeDisp 인터페이스]

Split 메서드