版本:Unity 6 (6000.0)
语言中文
  • C#

HandleUtility.ClosestPointToPolyLine

建议更正

成功!

感谢帮助我们提升 Unity 文档的质量。尽管我们无法接受所有提交,但会认真阅读用户建议的每个更改,并在适当情况下进行更新。

关闭

提交失败

由于某种原因,您建议的更改无法提交。请在几分钟后重试。感谢您花时间帮助我们提升 Unity 文档的质量。

关闭

取消

声明

public static Vector3 ClosestPointToPolyLine(params Vector3[] vertices);

说明

获取折线上(在 3D 空间中)距离当前鼠标位置最近的点。

折线只是一个由按顺序连接的一组点定义的锯齿线。ClosestPointToPolyLine 函数采用由点数组定义的折线,并将其“压扁”到屏幕空间中。然后找到压扁线和当前鼠标位置(也位于屏幕空间中)之间的最近点,并将其转换回原始 3D 折线上的 3D 点。这对于涉及使用鼠标操作任意 3D 形状的手柄 GUI 很实用;2D 鼠标移动通过 Unity 内置工具使用的熟悉方式转换到 3D 空间中。一种可以利用此功能的情况是,由一组航点定义的赛道 - 可以使用 ClosestPointToPolyLine 通过鼠标选择沿赛道线的位置。