public static bool PointProject(Segment2 segment, Vector2 point, out Vector2 result) { return(PointProject(segment.P, segment.Q, point, out result)); }
public static int CircleIntersect(Segment2 segment, Vector2 center, float radius, out Vector2 intersection1, out Vector2 intersection2, float epsilon = float.Epsilon) { return(CircleIntersect(segment.P, segment.Q, center, radius, out intersection1, out intersection2, epsilon)); }
public bool Equals(Segment2 other) { return(P == other.P && Q == other.Q); }
public static bool IntersectAsLine( Segment2 first, Segment2 second, out Vector2 point, float epsilon = float.Epsilon) { return(IntersectAsLine(first.P, first.Q, second.P, second.Q, out point, epsilon)); }
public bool IntersectAsLine(Segment2 other, out Vector2 point) { return(IntersectAsLine(this, other, out point)); }
public static float Distance(Segment2 segment, Vector2 point) { return(Distance(segment.P, segment.Q, point)); }
public static float SqrDistanceAsLine(Segment2 segment, Vector2 point) { return(SqrDistanceAsLine(segment.P, segment.Q, point)); }
public static float SqrDistance(Segment2 first, Segment2 second, float epsilon = float.Epsilon) { return(SqrDistance(first.P, first.Q, second.P, second.Q, epsilon)); }
public static void ClosestPoints(Segment2 first, Segment2 second, out Vector2 pointOnFirst, out Vector2 pointOnSecond, float epsilon = float.Epsilon) { ClosestPoints(first.P, first.Q, second.P, second.Q, out pointOnFirst, out pointOnSecond, epsilon); }
public static SegmentRelation RelationInfo( Segment2 first, Segment2 second, out Vector2 intersection, float epsilon = float.Epsilon) { return(RelationInfo(first.P, first.Q, second.P, second.Q, out intersection, epsilon)); }
public static SegmentRelation Relation( Segment2 first, Segment2 second, float epsilon = float.Epsilon) { return(Relation(first.P, first.Q, second.P, second.Q, epsilon)); }
public static bool IsPerpendicular( Segment2 first, Segment2 second, float epsilon = float.Epsilon) { return(IsPerpendicular(first.P, first.Q, second.P, second.Q, epsilon)); }