package sunw.demo.hotspots; import java.awt.*; import java.util.*; public class HotSpot extends Observable { private Coordinates _coord; private Dimensions _dim; public HotSpot() { _coord = new Coordinates(0, 0); _dim = new Dimensions(5, 5); } public HotSpot(Coordinates coord) { _coord = new Coordinates(coord); _dim = new Dimensions(5, 5); } public HotSpot(Coordinates coord, Dimensions dim) { _coord = new Coordinates(coord); _dim = new Dimensions(dim); } public Coordinates getCoordinates() { return new Coordinates(_coord); } public void setCoordinates(Coordinates coord) { _coord = new Coordinates(coord); setChanged(); } public Dimensions getDimensions() { return new Dimensions(_dim); } public void setDimensions(Dimensions dim) { _dim = new Dimensions(dim); setChanged(); } public void paint(Graphics g) { g.fillRect(_coord.x - _dim.w / 2, _coord.y - _dim.h / 2, _dim.w - 1, _dim.h - 1); } public boolean isAt(Coordinates coord) { if ((coord.x >= _coord.x - _dim.w / 2) && (coord.x <= _coord.x + (_dim.w - 1) / 2) && (coord.y >= _coord.y - _dim.h / 2) && (coord.y <= _coord.y + (_dim.h - 1) / 2)) { return true; } return false; } }