summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorNicolas Schodet2012-04-13 21:41:48 +0200
committerNicolas Schodet2012-04-13 21:41:48 +0200
commit7d4a35254d844735b52a61c237ae0fb6adbe7a13 (patch)
treec81a007572de17a4f0a0ddcd7c0c71aea6ab915f
parent46092c1a71b75b948d6177acf2dd7c9afac06232 (diff)
host/simu/model/position: also update attached obstacles
-rw-r--r--host/simu/model/position.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/host/simu/model/position.py b/host/simu/model/position.py
index c3fa1307..f13c8e66 100644
--- a/host/simu/model/position.py
+++ b/host/simu/model/position.py
@@ -26,13 +26,19 @@ from utils.observable import Observable
class Position (Observable):
- def __init__ (self, link):
+ def __init__ (self, link, obstacles = None):
Observable.__init__ (self)
self.link = link
+ self.obstacles = obstacles or [ ]
self.link.register (self.__notified)
def __notified (self):
self.pos = self.link.pos
self.angle = self.link.angle
self.notify ()
+ # Also update attached obstacles.
+ for o in self.obstacles:
+ o.pos = self.pos
+ o.angle = self.angle
+ o.notify ()