256 |
Disable STENCIL_TEST |
Disable STENCIL_TEST |
257 |
Color 1 1 1 |
Color 1 1 1 |
258 |
Enable BLEND |
Enable BLEND |
259 |
BlendFunc ONE_MINUS_DST_COLOR ZERO |
BlendFunc ZERO ZERO |
260 |
""") |
""") |
261 |
pas.setTeardowncode(""" |
pas.setTeardowncode(""" |
262 |
PopAttrib |
PopAttrib |
273 |
self.nadir = NadirAngler(self.ctrx, screensize[1]*2) |
self.nadir = NadirAngler(self.ctrx, screensize[1]*2) |
274 |
self.showcontext = 1 |
self.showcontext = 1 |
275 |
self.clip = 0 |
self.clip = 0 |
276 |
|
self.selectCS = None |
277 |
|
self.currentvs = None |
278 |
def key(self, key): |
def key(self, key): |
279 |
global currentScene |
global currentScene |
280 |
if key == 'z': |
if key == 'z': |
281 |
currentScene = XuPDFScene_PDFZoom() |
currentScene = XuPDFScene_PDFZoom() |
282 |
|
self.currentvs = None |
283 |
if key == 'm': |
if key == 'm': |
284 |
rotatelist(self.mag) |
rotatelist(self.mag) |
285 |
|
self.currentvs = None |
286 |
if key == 'c': |
if key == 'c': |
287 |
self.clip = not self.clip |
self.clip = not self.clip |
288 |
|
self.currentvs = None |
289 |
if key == 's': |
if key == 's': |
290 |
self.showcontext = not self.showcontext |
self.showcontext = not self.showcontext |
291 |
|
self.currentvs = None |
292 |
def mouse(self, ev): |
def mouse(self, ev): |
293 |
global globalx, globaly |
global globalx, globaly |
294 |
if ev.getID() == ev.MOUSE_CLICKED: |
if ev.getID() == ev.MOUSE_CLICKED: |
309 |
else: |
else: |
310 |
print "Didn't hit anything" |
print "Didn't hit anything" |
311 |
checkGlobalCoords() |
checkGlobalCoords() |
312 |
|
self.currentvs = None |
313 |
print "Mouse ",globalx, globaly |
print "Mouse ",globalx, globaly |
314 |
AbstractUpdateManager.chg() |
AbstractUpdateManager.chg() |
315 |
elif ev.getID() == ev.MOUSE_PRESSED: |
elif ev.getID() == ev.MOUSE_PRESSED: |
331 |
self.currentvs.coords.inverseTransformPoints3(self.papercs, point, dst) |
self.currentvs.coords.inverseTransformPoints3(self.papercs, point, dst) |
332 |
self.corner2 = (dst[0], dst[1]) |
self.corner2 = (dst[0], dst[1]) |
333 |
ctr = (0.5*(self.corner1[0]+self.corner2[0]), |
ctr = (0.5*(self.corner1[0]+self.corner2[0]), |
334 |
0.5 *(self.corner1[1]+self.corner1[1])) |
0.5 *(self.corner1[1]+self.corner2[1])) |
335 |
s = (0.5*(self.corner1[0]-self.corner2[0]), |
s = (0.5*(self.corner1[0]-self.corner2[0]), |
336 |
0.5 *(self.corner1[1]-self.corner1[1])) |
0.5 *(self.corner1[1]-self.corner2[1])) |
337 |
self.currentvs.coords.setAffineParams(self.selectCS, 0, |
self.currentvs.coords.setAffineParams(self.selectCS, 0, |
338 |
ctr[0], ctr[1], s[0], 0, 0, s[1]) |
ctr[0], ctr[1], s[0], 0, 0, s[1]) |
339 |
|
print "paint: ",ctr, s |
340 |
|
AbstractUpdateManager.chg() |
341 |
|
|
342 |
|
|
343 |
else: |
else: |
344 |
print "Unused mouse: ",ev |
print "Unused mouse: ",ev |
345 |
def scene(self, vs): |
def scene(self, vs): |
346 |
|
if self.currentvs: |
347 |
|
AbstractUpdateManager.setNoAnimation() |
348 |
|
return self.currentvs |
349 |
bg(vs) |
bg(vs) |
350 |
bf = effects.NadirCircleFloater_NoAnchor(vs, (self.ctrx, self.ctry), self.rad, |
bf = effects.NadirCircleFloater_NoAnchor(vs, (self.ctrx, self.ctry), self.rad, |
351 |
self.nadir, 1) |
self.nadir, 1) |