Text archives Help
- From: bigler@sci.utah.edu
- To: manta@sci.utah.edu
- Subject: [MANTA] r1353 - trunk/SwigInterface
- Date: Thu, 19 Apr 2007 21:29:35 -0600 (MDT)
Author: bigler
Date: Thu Apr 19 21:29:35 2007
New Revision: 1353
Modified:
trunk/SwigInterface/wxManta.py
Log:
Added support for showing the time view.
Added support for changing the number of processors.
Modified: trunk/SwigInterface/wxManta.py
==============================================================================
--- trunk/SwigInterface/wxManta.py (original)
+++ trunk/SwigInterface/wxManta.py Thu Apr 19 21:29:35 2007
@@ -394,7 +394,9 @@
# Basic settings.
self.engine = createManta()
- self.factory = Factory( self.engine )
+ # I thought this would be garbage collected properly, but for
+ # some reason on my laptop it crashes in the desctructor.
+ self.factory = manta_new(Factory( self.engine ))
self.factory.selectImageType ("rgba8")
self.factory.selectLoadBalancer ("workqueue")
@@ -474,6 +476,7 @@
self.trackball_radius = 0.8
self.left_mouse_is_down = False
self.right_mouse_is_down = False
+ self.timeView = None
###########################################################################
@@ -577,23 +580,29 @@
## OnChar
###########################################################################
def OnChar( self, event ):
- print "OnChar"
key = event.GetKeyCode()
if (key < 256):
key = chr(key)
- if key == 'P':
- print "Found a 'p'"
- elif key == 'V':
- print "Found a 'v'"
- elif key == "L":
+ if key == "L":
LightFrame(self, self.engine).Show()
+ elif key == 'P':
+ change = 1
+ if (event.ShiftDown()):
+ change = -1
+ self.engine.addTransaction("processor count change",
+
manta_new(createMantaTransaction(self.changeNumWorkers,
(self.engine.numWorkers(), change) )))
elif key == 'Q':
print "Quitting"
self.Close()
+ elif key == 'T':
+ self.OnTKey(event)
+ elif key == 'V':
+ self.OnAutoView(None)
else:
print "Unknown key '%s'" % key
else:
- print "Found special key '%s'" % key
+ pass
+ #print "Found special key '%s'" % key
event.Skip()
@@ -828,6 +837,38 @@
z = math.sqrt(1-rad2)
return Vector(x,y,z)
+
###########################################################################
+ ## changeNumWorkers
+
###########################################################################
+ def changeNumWorkers(self, value, change):
+ newProcs = value.value + change
+ if (newProcs < 1):
+ newProcs = 1
+ value.value = newProcs
+
+
###########################################################################
+ ## OnTKey
+
###########################################################################
+ def OnTKey(self, event):
+ if (self.timeView == None):
+ self.timeView =
TimeViewSampler.fromPixelSampler(self.engine.getPixelSampler())
+ if (self.timeView == None):
+ self.timeView = manta_new(TimeViewSampler(vectorStr()))
+ if (event.ControlDown()):
+ factor = 1.1
+ if (event.ShiftDown()):
+ factor = 1.0/factor
+ self.engine.addTransaction("TimeView scale",
+
manta_new(createMantaTransaction(self.timeView.changeScale, (factor,))))
+ else:
+ self.engine.addTransaction("TimeView toggle",
+
manta_new(createMantaTransaction(self.toggleTimeView, (None,) )))
+
+ def toggleTimeView(self, args):
+ currentTimeView = TimeViewSampler.toggleTimeView(self.engine,
self.timeView)
+ if (self.timeView != currentTimeView):
+ self.timeView = currentTimeView
+
def updateFramerate(self, framerate):
text = ""
if (framerate > 1):
- [MANTA] r1353 - trunk/SwigInterface, bigler, 04/19/2007
Archive powered by MHonArc 2.6.16.