namespace GeometriCS { /// /// A line through the R cubed space with double precision. /// public class Line3d { /// /// A point that lies on the line. /// public Vector3d PointOnLine { get { throw new NotImplementedException(); } } /// /// Direction vector, along which all the points on the line lie. /// public Vector3d Direction { get { throw new NotImplementedException(); } } /// /// Constructor for the line. /// /// Point that lies on the line. /// Direction vector on the line. public Line3d(Vector3d pointOnLine, Vector3d direction) { throw new NotImplementedException(); } /// /// String representation of the line. /// /// public override string ToString() { throw new NotImplementedException(); } /// /// Do the two objects represent the same line? /// /// Object to compare. /// /// true if any two different points on one line will also be on the other line. false public override bool Equals(object? obj) { if (obj is Line3d asLn) { return this == asLn; } else { return false; } } public override int GetHashCode() { throw new NotImplementedException(); } /// /// Deep copy the line. /// /// Deep copy of the line. public object Clone() { throw new NotImplementedException(); } /// /// Are the lines equal? /// /// First line. /// Second line. /// true if any two different points on one line will also be on the other line. false public static bool operator ==(Line3d a, Line3d b) { throw new NotImplementedException(); } /// /// Are the lines different? /// /// First line. /// Second line. /// true If there exists a point p from all the points occupying line a and does not lie on line b. Otherwise false. public static bool operator !=(Line3d a, Line3d b) { throw new NotImplementedException(); } } }