public CollisionCircleComponent(GameEntity entity, Vector2 center, float collisionRadius) : base(entity)
        {
            //_circle = (CollisionCircle)CollisionGeometryFactory.CreateGeometry(CollisionType.Circle);
            _circle = new CollisionCircle(center, collisionRadius);

            this.Geometry = _circle;
            RaiseCreated();
        }
 private bool CollisionCircleCollides(CollisionCircle a, CollisionGeometry b)
 {
     if (b is CollisionCircle)
     {
         return(a.Intersects((CollisionCircle)b));
     }
     if (b is CollisionBoundingBox)
     {
         return(a.Intersects((CollisionBoundingBox)b));
     }
     return(false);
 }
 public bool Intersects(CollisionCircle other)
 {
     return(Vector2.Distance(this.Center, other.Center) < (this.Radius + other.Radius));
 }
 public static bool Intersects(CollisionCircle a, Point b) => a.Intersects(b);
 public static bool Intersects(CollisionCircle a, Vector2 b) => a.Intersects(b);
예제 #6
0
 public bool Intersects(CollisionCircle other)
 {
     return(other.Intersects(this));
 }