/// <summary>
/// 判断一个坐标点是否在“线段”上
/// </summary>
/// <param name="pos"></param>
/// <param name="lineFrom"></param>
/// <param name="lineTo"></param>
/// <returns></returns>
public static bool IsInLine(this Vector3 pos,Vector3 lineFrom,Vector3 lineTo) {
Vector3 v1 = pos - lineFrom;
Vector3 v2 = lineTo - lineFrom;
float angle =Mathf.Abs(Vector3.Angle(v1.normalized,v2.normalized));
float length_v1 = Vector3.SqrMagnitude(v1);
float length_v2 = Vector3.SqrMagnitude(v2);
return angle <= 0.0001f && length_v1 < length_v2;
}
Unity 判断一个点是否在线段上
猜你喜欢
转载自blog.csdn.net/qq_26318597/article/details/129725296
今日推荐
周排行