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);
public bool Intersects(CollisionCircle other) { return(other.Intersects(this)); }