/[gzz]/gzz/gfx/demo/xupdf.py
ViewVC logotype

Diff of /gzz/gfx/demo/xupdf.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.37 by tjl, Wed Oct 2 12:20:22 2002 UTC revision 1.38 by tjl, Wed Oct 2 13:24:15 2002 UTC
# Line 245  class XuPDFBuoy: Line 245  class XuPDFBuoy:
245      def hit(self, coords, point3):      def hit(self, coords, point3):
246          return self.view.hitClip(coords, point3, self.cliprect)          return self.view.hitClip(coords, point3, self.cliprect)
247    
248  selectPaper = Paper()  if 1:
249  selectPaper.setNPasses(1)      selectPaper = Paper()
250  pas = selectPaper.getPass(0)      selectPaper.setNPasses(1)
251  pas.setSetupcode("""      pas = selectPaper.getPass(0)
252      PushAttrib ENABLE_BIT COLOR_BUFFER_BIT      pas.setSetupcode("""
253      Disable TEXTURE_2D          PushAttrib ENABLE_BIT COLOR_BUFFER_BIT
254      Disable DEPTH_TEST          Disable TEXTURE_2D
255      Disable STENCIL_TEST          Disable DEPTH_TEST
256      Color 1 1 1          Disable STENCIL_TEST
257      Enable BLEND          Color 1 1 1
258      BlendFunc ONE_MINUS_DST_COLOR ZERO          Enable BLEND
259  """)          BlendFunc ONE_MINUS_DST_COLOR ZERO
260  pas.setTeardowncode("""      """)
261      PopAttrib      pas.setTeardowncode("""
262  """)          PopAttrib
263  selectPaperQuad = GLRen.createPaperQuad(selectPaper, -1,-1,1,1, 1)      """)
264        selectPaperQuad = GLRen.createPaperQuad(selectPaper, -1,-1,1,1, 1)
265    
266    
267  class XuPDFScene_PDFContext:  class XuPDFScene_PDFContext:
# Line 304  class XuPDFScene_PDFContext: Line 305  class XuPDFScene_PDFContext:
305              checkGlobalCoords()              checkGlobalCoords()
306              print "Mouse ",globalx, globaly              print "Mouse ",globalx, globaly
307              AbstractUpdateManager.chg()              AbstractUpdateManager.chg()
308            elif ev.getID() == ev.MOUSE_PRESSED:
309                self.pressx = ev.getX()
310                self.pressy = ev.getY()
311                self.origpt = None
312                return
313            elif ev.getID() == ev.MOUSE_DRAGGED:
314                if not self.selectCS:
315                    self.selectCS = self.currentvs.coords.affineCoordsys(self.papercs, 0, 0, 0, 1, 0, 0, 1)
316                    self.currentvs.map.put(selectPaperQuad, self.selectCS, 0)
317                if not self.origpt:
318                    point = array([self.pressx, self.pressy, 0], 'f')
319                    dst = zeros(3, 'f')
320                    self.currentvs.coords.inverseTransformPoints3(self.papercs, point, dst)
321                    self.corner1 = (dst[0], dst[1])
322                point = array([ev.getX(), ev.getY(), 0], 'f')
323                dst = zeros(3, 'f')
324                self.currentvs.coords.inverseTransformPoints3(self.papercs, point, dst)
325                self.corner2 = (dst[0], dst[1])
326                ctr = (0.5*(self.corner1[0]+self.corner2[0]),
327                           0.5 *(self.corner1[1]+self.corner1[1]))
328                s = (0.5*(self.corner1[0]-self.corner2[0]),
329                           0.5 *(self.corner1[1]-self.corner1[1]))
330                self.currentvs.coords.setAffineParams(self.selectCS, 0,
331                        ctr[0], ctr[1], s[0], 0, 0, s[1])
332    
333    
334          else:          else:
335              print "Unused mouse: ",ev              print "Unused mouse: ",ev
336      def scene(self, vs):      def scene(self, vs):
# Line 348  class XuPDFScene_PDFContext: Line 375  class XuPDFScene_PDFContext:
375                  b.add(vs, 0, 0, 1, bf, maincs = cs1_trans)                  b.add(vs, 0, 0, 1, bf, maincs = cs1_trans)
376                  self.buoys.append(b)                  self.buoys.append(b)
377          self.currentvs = vs          self.currentvs = vs
378            self.selectCS = None
379            self.papercs = cs1_trans
380    
381  class XuPDFScene_PDFZoom:  class XuPDFScene_PDFZoom:
382      def __init__(self):      def __init__(self):

Legend:
Removed from v.1.37  
changed lines
  Added in v.1.38

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26