public StraightLine3 Reflect(StraightLine3 line) { if (!this.valid) { return(line); } return(new StraightLine3(Reflect(line.BasicPoint), RelativelyReflect(line.Direction))); }
public Angle MaximalAngleWith(StraightLine3 line) { if (!this.valid || !line.IsValid) { return(Angle.ZERO); } return(Angle.PId2 + this.normal.AngleWith(line.Direction)); }
public bool IsOrthogonalTo(StraightLine3 line) { return(line.IsValid && this.IsOrthogonalTo(line.Direction)); }
public bool IsParallelTo(StraightLine3 line) { return(line.IsValid && this.IsParallelTo(line.Direction)); }
public StraightLine3 Reflect(StraightLine3 line) { return(new StraightLine3(Reflect(line.BasicPoint), -line.Direction)); }
public bool IsOrthogonalTo(StraightLine3 line) { return(this.valid && line.IsValid && this.normal.IsParallelTo(line.Direction)); }