diff options
Diffstat (limited to 'src/main/scala/graphyx/graphics/GraphicalWorld.scala')
-rw-r--r-- | src/main/scala/graphyx/graphics/GraphicalWorld.scala | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/main/scala/graphyx/graphics/GraphicalWorld.scala b/src/main/scala/graphyx/graphics/GraphicalWorld.scala new file mode 100644 index 0000000..abc9cbb --- /dev/null +++ b/src/main/scala/graphyx/graphics/GraphicalWorld.scala @@ -0,0 +1,28 @@ +/* + * Graphyx + * copyright (c) 2009 Jakob Odersky + * made available under the MIT License +*/ + +package graphyx.graphics + +import sims.dynamics._ +case class GraphicalWorld(real: World){ + val time = real.time + val timeStep = real.timeStep + val iterations = real.iterations + val overCWarning = real.overCWarning + val gravity = real.gravity + val monitorResults = for (m <- real.monitors) yield + new MonitorResult(m, + for (b <- real.bodies.toList; if (b.monitor)) yield (b.uid, m._1, m._2(b)) + ) + val monitorFlatResults = for (b <- real.bodies; m <- real.monitors; if (b.monitor)) yield (b.uid, m._1, m._2(b)) + val enableCollisionDetection = real.enableCollisionDetection + val enablePositionCorrection = real.enablePositionCorrection +} + +class MonitorResult ( + val monitor: (String, Body => Any), + val results: List[(Int, String, Any)] +) |