From ee6e89b700a264ede2b2b566227036f5211b0db5 Mon Sep 17 00:00:00 2001
From: Mansard <nmansard@laas.fr>
Date: Thu, 6 Oct 2011 11:57:24 +0200
Subject: [PATCH] Added hide and c

---
 python/mocap/footprint_parser.py | 27 +++++++++++++++++++--------
 1 file changed, 19 insertions(+), 8 deletions(-)

diff --git a/python/mocap/footprint_parser.py b/python/mocap/footprint_parser.py
index cac6fee..3391914 100644
--- a/python/mocap/footprint_parser.py
+++ b/python/mocap/footprint_parser.py
@@ -11,8 +11,7 @@ class FootPrintParser:
     def __init__(self,robotviewer=None,filename=None,dt=None,offset=None):
         if filename==None:
             self.clt=robotviewer
-            self.clt.updateElementConfig('RF',[0,0,-1000,0,0,0])
-            self.clt.updateElementConfig('LF',[0,0,-1000,0,0,0])
+            self.hide()
             self.events ={}
             return
         elif dt==None:
@@ -44,14 +43,15 @@ class FootPrintParser:
 
         for il,l in enumerate(self.file.readlines()):
             if len(l.split())==0:continue
-            try:(t,foot,x,y,theta)=[ float(x) for x in l.split()]
+            try:(t,foot,x,y,theta)=[ x if i==1 else float(x) for (i,x) in enumerate(l.split()) ]
             except: print 'Error on line ',il,': ',l
-            if foot==1: foot='LF'
+            if foot=='1' or foot=='LF': foot='LF'
             else: foot='RF'
 
-            if (x,y,theta) == (0,0,0): (x,y,theta)= (-100,-100,0)
-            p=R*matrix((x,y,1)).T; theta-=a
-            x=float(p[0,0]); y=float(p[1,0])
+            if (x,y,theta) == (0.0,0.0,0.0): (x,y,theta)= (-100.0,-100.0,0.0)
+            else:
+                p=R*matrix((x,y,1)).T; theta-=a
+                x=float(p[0,0]); y=float(p[1,0])
 
             t=int(round(t*dt))
             if not t in self.events.keys(): self.events[t] = []
@@ -61,5 +61,16 @@ class FootPrintParser:
     def update(self,iterTime):
         if not iterTime in self.events.keys(): return
         for (foot, pos) in self.events[iterTime]:
-            self.clt.updateElementConfig(foot,pos)
+            try:
+                self.clt.updateElementConfig(foot,pos)
+            except: None
+
+    def hide(self):
+        try:
+            self.clt.updateElementConfig('RF',[0,0,-1000,0,0,0])
+            self.clt.updateElementConfig('LF',[0,0,-1000,0,0,0])
+        except:                None
 
+    def close(self):
+        self.hide()
+        self.clt = None
-- 
GitLab