/*
* Graphyx
* copyright (c) 2009 Jakob Odersky
* made available under the MIT License
*/
package graphyx.graphics
import sims.dynamics._
case class GraphicalBody(real: Body) extends GraphicalObject {
val pos = real.pos
val fixed = real.fixed
val monitor = real.monitor
def draw() = {
val radius = 4
val posX = (pos.x * scale * ppm).toInt
val posY = correctY(pos.y * scale * ppm).toInt
g.setColor(java.awt.Color.yellow)
g.fillArc(posX - radius,
posY - radius,
(radius * 2).toInt,
(radius * 2).toInt,
0, 90)
g.fillArc(posX - radius,
posY - radius,
(radius * 2).toInt,
(radius * 2).toInt,
180, 90)
g.setColor(java.awt.Color.black)
g.fillArc(posX - radius,
posY - radius,
(radius * 2).toInt,
(radius * 2).toInt,
90, 90)
g.fillArc(posX - radius,
posY - radius,
(radius * 2).toInt,
(radius * 2).toInt,
270, 90)
}
}