summaryrefslogtreecommitdiff
path: root/host/simu/robots/aquajim/view
diff options
context:
space:
mode:
authorNicolas Schodet2009-05-13 18:55:47 +0200
committerNicolas Schodet2009-05-13 18:55:47 +0200
commit78aa0c38b86c7cf124115e3e43a8e79ade36b2a4 (patch)
tree67c5c516e649d3d9da31d5a92326559401939fec /host/simu/robots/aquajim/view
parent9f98a7f973d4e8b36cd74d44b3e3d3f9ce7a1903 (diff)
* host/simu:
- take puck on table.
Diffstat (limited to 'host/simu/robots/aquajim/view')
-rw-r--r--host/simu/robots/aquajim/view/arm.py32
1 files changed, 21 insertions, 11 deletions
diff --git a/host/simu/robots/aquajim/view/arm.py b/host/simu/robots/aquajim/view/arm.py
index ee8aaa95..aab69c58 100644
--- a/host/simu/robots/aquajim/view/arm.py
+++ b/host/simu/robots/aquajim/view/arm.py
@@ -25,10 +25,12 @@
from simu.inter.drawable import Drawable
from math import pi, cos, sin
+from simu.view.table_eurobot2009 import puck_attr
+
class Arm (Drawable):
- width = 1
- height = 1
+ width = 320
+ height = 320
def __init__ (self, onto, model):
Drawable.__init__ (self, onto)
@@ -42,18 +44,26 @@ class Arm (Drawable):
def draw (self):
self.reset ()
- self.draw_arc ((0, 0), 0.45, start = 7 * pi / 12, extent = 10 * pi / 12,
+ self.draw_arc ((0, 0), 150, start = 7 * pi / 12, extent = 10 * pi / 12,
style = 'arc', outline = '#808080')
- self.draw_arc ((0, 0), 0.45, start = -5 * pi / 12, extent = 10 * pi / 12,
+ self.draw_arc ((0, 0), 150, start = -5 * pi / 12, extent = 10 * pi / 12,
style = 'arc', outline = '#808080')
- self.draw_arc ((0, 0), 0.25, start = -7 * pi / 12, extent = 14 * pi / 12,
+ self.draw_arc ((0, 0), 100, start = -7 * pi / 12, extent = 14 * pi / 12,
style = 'arc', outline = '#808080')
if self.angle is not None:
- self.trans_scale (0.4)
self.trans_rotate (-self.angle)
- self.draw_line ((0, 0), (0, 1))
- self.draw_line ((0, 1), (0.3, 1), arrow = 'last', fill = '#808080')
- self.draw_line ((0, 0), (cos (pi / 6), -sin (pi / 6)))
- self.draw_line ((0, 0), (-cos (pi / 6), -sin (pi / 6)))
- Drawable.draw (self)
+ for i in range (3):
+ self.draw_line ((0, 0), (0, 135))
+ self.draw_arc ((0, 0), 135, start = pi / 2, extent = pi / 3,
+ style = 'arc')
+ if i == 0:
+ self.draw_line ((0, 135), (70, 135), arrow = 'last',
+ fill = '#808080')
+ a = -2 * pi / 3
+ self.trans_rotate (0.15 * a)
+ puck = self.model.arm_slot[i]
+ if puck is not None:
+ self.draw_rectangle ((-35, 140), (35, 110),
+ **puck_attr[puck.color])
+ self.trans_rotate ((1 - 0.15) * a)