Exemplo n.º 1
0
        public static bool Contains(Segment containingSegment, RealPoint containedPoint)
        {
            // Vérifie que le point est situé sur la droite
            if (!LineWithRealPoint.Contains((Line)containingSegment, containedPoint))
            {
                return(false);
            }
            // Puis qu'il est entre les deux extrémités

            if (containedPoint.X - RealPoint.PRECISION > Math.Max(containingSegment.StartPoint.X, containingSegment.EndPoint.X) ||
                containedPoint.X + RealPoint.PRECISION < Math.Min(containingSegment.StartPoint.X, containingSegment.EndPoint.X) ||
                containedPoint.Y - RealPoint.PRECISION > Math.Max(containingSegment.StartPoint.Y, containingSegment.EndPoint.Y) ||
                containedPoint.Y + RealPoint.PRECISION < Math.Min(containingSegment.StartPoint.Y, containingSegment.EndPoint.Y))
            {
                return(false);
            }

            return(true);
        }
Exemplo n.º 2
0
 public static double Distance(RealPoint point, Line line)
 {
     return(LineWithRealPoint.Distance(line, point));
 }
Exemplo n.º 3
0
 public static List <RealPoint> GetCrossingPoints(RealPoint point, Line line)
 {
     return(LineWithRealPoint.GetCrossingPoints(line, point));
 }
Exemplo n.º 4
0
 public static bool Cross(RealPoint point, Line line)
 {
     return(LineWithRealPoint.Cross(line, point));
 }