Example #1
0
 /** Test a ray against another ray.
  * When no collision is found, this function returns null.
  * Returns a `RayIntersection` if a collision is found. */
 public static RayIntersection rayWithRay(Ray ray1, Ray ray2)
 {
     return(Sat2D.testRayVsRay(ray1, ray2));
 }
Example #2
0
 public override ShapeCollision testPolygon(Polygon polygon, bool flip = false)
 {
     return(Sat2D.testPolygonVsPolygon(this, polygon, flip));
 }
Example #3
0
 public override RayCollision testRay(Ray ray)
 {
     return(Sat2D.testRayVsPolygon(ray, this));
 }
Example #4
0
 public override bool IntersectsRay(Ray ray, out RayCollision rayCollision)
 => Sat2D.TestRayVsCircle(ray, this, out rayCollision);
Example #5
0
 public override ShapeCollision testCircle(Circle circle, bool flip = false)
 {
     return(Sat2D.testCircleVsPolygon(circle, this, !flip));
 }
Example #6
0
 public override bool CollidesWithPolygon(Polygon polygon, out ShapeCollision shapeCollision, bool flip = false)
 => Sat2D.TestCircleVsPolygon(this, polygon, out shapeCollision, flip);
Example #7
0
 public override bool CollidesWithCircle(Circle circle, out ShapeCollision shapeCollision, bool flip = false)
 => Sat2D.TestCircleVsCircle(this, circle, out shapeCollision, flip);
Example #8
0
 public override RayCollision testRay(Ray ray)
 {
     return(Sat2D.testRayVsCircle(ray, this));
 }
Example #9
0
 public override ShapeCollision testCircle(Circle circle, bool flip = false)
 {
     return(Sat2D.testCircleVsCircle(this, circle, flip));
 }
Example #10
0
 public override bool CollidesWithCircle(Circle circle, out ShapeCollision shapeCollision, bool flip = false)
 => Sat2D.TestCircleVsPolygon(circle, this, out shapeCollision, !flip);