bool Vector2::isSegmentIntersect(const Vector2& A, const Vector2& B, const Vector2& C, const Vector2& D, Vector2 *S, Vector2 *E)
 {
     if (isLineOverlap(A, B, C, D))
     {
         return isOneDimensionSegmentOverlap(A.x, B.x, C.x, D.x, &S->x, &E->x) &&
         isOneDimensionSegmentOverlap(A.y, B.y, C.y, D.y, &S->y, &E->y);
     }
     
     return false;
 }
Esempio n. 2
0
bool Point::isSegmentOverlap(const Point& A, const Point& B, const Point& C, const Point& D, Point* S, Point* E)
{

    if (isLineOverlap(A, B, C, D))
    {
        return isOneDimensionSegmentOverlap(A.x, B.x, C.x, D.x, &S->x, &E->x) &&
               isOneDimensionSegmentOverlap(A.y, B.y, C.y, D.y, &S->y, &E->y);
    }

    return false;
}