summaryrefslogtreecommitdiff
path: root/layers.py
diff options
context:
space:
mode:
Diffstat (limited to 'layers.py')
-rw-r--r--layers.py29
1 files changed, 26 insertions, 3 deletions
diff --git a/layers.py b/layers.py
index 38aeba4..6c1d33f 100644
--- a/layers.py
+++ b/layers.py
@@ -18,7 +18,7 @@ class layer:
except:
print "gps layer: failed to parse", file
def findpixel(self,pos):
- return latLng(int((pos.lng-self.tl.lng)/self.pixsize.lng),int((pos.lat-self.br.lat)/self.pixsize.lat))
+ return (int((pos.lng-self.tl.lng)/self.pixsize.lng),int((pos.lat-self.br.lat)/self.pixsize.lat))
def checkcoord(self,pos):
p=self.findpixel(pos)
if p!=self.pixel:
@@ -27,7 +27,10 @@ class layer:
else:
return None
def setcoord(self,pos):
- return str(1.0)
+ """constructs a list of messages when values change"
+ returns None otherwise"""
+ result=None
+ return r
class trigger():
"""a generic trigger -
@@ -43,6 +46,26 @@ class trigger():
return None
class indexlayer(layer):
+ """generates gps triggers from an index colour image
+ triggers when colour changes"""
triggers=[]
+ colour=-1
def setcoord(self,pos):
- return str(1) \ No newline at end of file
+ result=None
+ #210 35 5 185
+ c=self.image.getpixel(pos)
+ if c!=self.colour:
+ self.colour=c
+ print "indexlayer: new colour",c
+ for t in self.triggers:
+ if c==t.id:
+ result=t.command
+ return result
+
+class scalelayer(layer):
+ """generates a varying signal based on interpolating a greyscale image
+ uses sub pixel position"""
+ def findpixel(self,pos):
+ return (int((pos.lng-self.tl.lng)/self.pixsize.lng),int((pos.lat-self.br.lat)/self.pixsize.lat))
+ def setcoord(self,pos):
+ result=None \ No newline at end of file