12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- """
- @package mapdisp.py
- @brief Command line useg of GIS map display canvas.view).
- Classes:
- - Command
- (C) 2006-2009 by the GRASS Development Team
- This program is free software under the GNU General Public
- License (>=v2). Read the file COPYING that comes with GRASS
- for details.
- @author Jachym Cepicky
- """
- import sys
- import time
- from debug import Debug
- from threading import Thread
- class Command(Thread):
- """
- Creates thread which will observe the command file and see, if
- there is new command to be executed
- """
- def __init__ (self, parent, Map, cmdfile):
- Thread.__init__(self)
- global cmdfilename
- self.parent = parent
- self.map = Map
- self.cmdfile = open(cmdfile, "r")
- def run(self):
- """
- Run this in thread
- """
- dispcmd = []
- while 1:
- self.parent.redraw = False
- line = self.cmdfile.readline().strip()
- if line == "quit":
- break
- if line:
- try:
- Debug.msg (3, "Command.run(): cmd=%s" % (line))
- cmd = line.split(" ")
- opacity = 1
- if " opacity=" in line:
- cmd2 = cmd
- cmd = []
- for c in cmd2:
- if c.find("opacity=") == 0:
- opacity = float(c.split("=")[1]) / 100
- else:
- cmd.append(c)
- self.map.AddLayer(type="raster",
- name='',
- command=cmd,
- l_opacity=opacity)
- self.parent.redraw =True
- except Exception, e:
- print "Command Thread: ",e
- time.sleep(0.1)
- sys.exit()
|