Beispiel #1
0
        public Angle MinimalAngleWith(StraightLine3 line)
        {
            if (!this.valid || !line.valid)
            {
                return(Angle.ZERO);
            }

            return(this.direction.MinimalAngleWithAxis(line.direction));
        }
Beispiel #2
0
        public Angle MaximalAngleWith(StraightLine3 line)
        {
            if (!this.valid)
            {
                return(Angle.ZERO);
            }

            return(line.MaximalAngleWith(this.direction));
        }
Beispiel #3
0
        public StraightLine3 Reflect(StraightLine3 line)
        {
            if (!this.valid)
            {
                return(line);
            }

            return(new StraightLine3(Reflect(line.BasicPoint), RelativelyReflect(line.Direction)));
        }
Beispiel #4
0
 public static StraightLine3 TurnAt90Degrees(StraightLine3 line)
 {
     return(new StraightLine3(TurnAt90Degrees(line.BasicPoint), TurnAt90Degrees(line.Direction)));
 }
Beispiel #5
0
 public static StraightLine3 Reflect(StraightLine3 line)
 {
     return(new StraightLine3(Reflect(line.BasicPoint), Reflect(line.Direction)));
 }
Beispiel #6
0
 public bool IsParallelTo(StraightLine3 line)
 {
     return(this.valid && line.IsValid && this.direction.IsParallelTo(line.Direction));
 }
Beispiel #7
0
 public bool IsOrthogonalTo(StraightLine3 line)
 {
     return(this.valid && line.IsValid && this.direction.IsOrthogonalTo(line.Direction));
 }
Beispiel #8
0
 public StraightLine3(StraightLine3 line)
 {
     this.BasicPoint = line.BasicPoint;
     this.direction  = line.direction;
     this.valid      = line.valid;
 }
Beispiel #9
0
        // ========================================================

        public bool IsEqualTo(StraightLine3 line)
        {
            return(this.IsParallelTo(line) && this.direction.IsParallelTo(line.BasicPoint - this.BasicPoint));
        }
Beispiel #10
0
 public bool IsParallelTo(StraightLine3 line)
 {
     return(line.IsValid && line.Direction.IsParallelTo(B - A));
 }
Beispiel #11
0
 public Angle MaximalAngleWith(StraightLine3 line)
 {
     return(line.MaximalAngleWith(this.VectorAB));
 }
Beispiel #12
0
 public bool IsOrthogonalTo(StraightLine3 line)
 {
     return(line.IsValid && line.Direction.IsOrthogonalTo(B - A));
 }