namespace GeometriCS
{
///
/// Intersection between a line and a line segment
///
public class IntersectionLine2ToLineSegment2d
{
///
/// Possible statuses the intersection can be.
///
public enum Statuses
{
///
/// Intersection is valid.
///
SUCCESS,
///
/// The two lines are parallel.
///
PARALLEL,
///
/// The intersection would happen if the intersectors were unbounded, but not inside the bounds.
///
OUTOFBOUNDS,
}
///
/// The intersecting line.
///
public Line2d Line { get; }
///
/// The intersecting line segment.
///
public LineSegment2d LineSegment { get; }
///
/// Status of the intersection.
///
public Statuses Status { get; }
///
/// The point of the intersection between the line and line segment.
///
public Vector2d? Result { get; }
///
/// Constructor for Line2d to LinearSegment2d intersection.
///
/// The intersecting line.
/// The intersecting lineSegment.
public IntersectionLine2ToLineSegment2d(Line2d line, LineSegment2d lineSegment)
{
Line = line;
LineSegment = lineSegment;
// Process the intersection
throw new NotImplementedException();
}
}
}