package com.drawbridge.utils;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Point;
/**
* This class is intended to represent a simple geometric circle
* @author Alistair Stead
*
*/
public class Circle
{
public int radius;
public int x;
public int y;
/**
*
* @param x - top left
* @param y - top left
* @param radius
*/
public Circle(int x, int y, int radius){
this.x = x;
this.y = y;
this.radius = radius;
}
public boolean contains(int xIn, int yIn){
int centerX = x + radius;
int centerY = y + radius;
if(((xIn-centerX) * (xIn-centerX)) + ((yIn - centerY) * (yIn - centerY)) < (radius * radius)){
return true;
}
else
return false;
}
public Point getCenter(){
int centerX = x + radius;
int centerY = y + radius;
return new Point(centerX, centerY);
}
public int getDiameter(){
return radius * 2;
}
public void paint(Graphics g){
Graphics2D g2 = (Graphics2D) g;
g2.setColor(Color.black);
g2.fillOval(x, y, getDiameter(), getDiameter());
}
@Override
public String toString(){
return "Circle x:" + x + ", y:" + y + ", radius:" + radius;
}
}