IInkStrokeDisp::NearestPoint 方法 (msinkaut.h)

查找笔划上最接近已知点的位置,并返回该点与笔划的距离。 所有内容都位于墨迹空间坐标中。

语法

HRESULT NearestPoint(
  [in]                long  X,
  [in]                long  Y,
  [in, out, optional] float *Distance,
  [out, retval]       float *Point
);

参数

[in] X

要测试的点墨迹空间中的 x 位置。

[in] Y

要测试的点墨迹空间中的 y 位置。

[in, out, optional] Distance

可选。 从点到笔划的距离。 此参数可以为 NULL。 默认值为 0。

[out, retval] Point

此方法返回时,包含浮点索引值,该值表示笔划上最近的位置。

浮点索引是一个浮点值,表示笔划中两个点之间的某个位置。 例如,如果 0.0 是笔划中的第一个点,1.0 是笔划中的第二个点,则 0.5 是第一个和第二个点之间的一半。 同样,浮点索引值 37.25 表示笔划 37 点到 38 点之间的直线上 25% 的位置。

返回值

此方法可以返回其中一个值。

返回代码 说明
S_OK
成功。
E_POINTER
参数包含无效指针。
E_FAIL
发生了未指定的错误。
E_INK_EXCEPTION
方法内发生异常。

注解

distance 参数描述从笔划的点到信封的距离。 这是两个点之间的距离减去笔划宽度的一半。

要求

要求
最低受支持的客户端 Windows XP Tablet PC Edition [仅限桌面应用]
最低受支持的服务器 无受支持的版本
目标平台 Windows
标头 msinkaut.h
Library InkObj.dll

另请参阅

GetRectangleIntersections 方法

HitTest (点,单) 方法

IInkStrokeDisp 接口

NearestPoint 方法 [InkDisp 类]