gzz-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gzz-commits] fenfire/org/fenfire demo/buoyoing.py demo/detai...


From: Janne V. Kujala
Subject: [Gzz-commits] fenfire/org/fenfire demo/buoyoing.py demo/detai...
Date: Wed, 30 Apr 2003 08:13:43 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Changes by:     Janne V. Kujala <address@hidden>        03/04/30 08:13:43

Modified files:
        org/fenfire/demo: buoyoing.py 
        org/fenfire/demo/detail: pagespanbgfilter.py 
        org/fenfire/util: PageSpanPaper.java pagespanpaper.py 

Log message:
        Make blurring toggleable

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/demo/buoyoing.py.diff?tr1=1.34&tr2=1.35&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/demo/detail/pagespanbgfilter.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/util/PageSpanPaper.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/util/pagespanpaper.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text

Patches:
Index: fenfire/org/fenfire/demo/buoyoing.py
diff -u fenfire/org/fenfire/demo/buoyoing.py:1.34 
fenfire/org/fenfire/demo/buoyoing.py:1.35
--- fenfire/org/fenfire/demo/buoyoing.py:1.34   Mon Apr 28 11:20:20 2003
+++ fenfire/org/fenfire/demo/buoyoing.py        Wed Apr 30 08:13:43 2003
@@ -215,3 +215,5 @@
         screenshots()
     if k == "Ctrl-PrinT":
         screenshots()
+    if k == "Ctrl-B":
+        ff.util.PageSpanPaper.withBlur = not ff.util.PageSpanPaper.withBlur
Index: fenfire/org/fenfire/demo/detail/pagespanbgfilter.py
diff -u fenfire/org/fenfire/demo/detail/pagespanbgfilter.py:1.2 
fenfire/org/fenfire/demo/detail/pagespanbgfilter.py:1.3
--- fenfire/org/fenfire/demo/detail/pagespanbgfilter.py:1.2     Mon Apr 28 
06:17:14 2003
+++ fenfire/org/fenfire/demo/detail/pagespanbgfilter.py Wed Apr 30 08:13:43 2003
@@ -30,20 +30,32 @@
 from org.nongnu import alph
 from org.nongnu import storm
 
+from vob.putil.demokeys import *
+
 pool = org.nongnu.storm.impl.TransientPool(java.util.HashSet())
 myalph = alph.impl.StormAlph(pool)
 sc = myalph.addFile(java.io.File('../alph/testdata/test1.pdf'), 
'application/pdf')
 enfMaker = alph.impl.Enfilade1DImpl.Enfilade1DImplMaker()
 
 class Scene:
+    def __init__(self):
+       self.key = KeyPresses(
+            self, 
+           Toggle("blur", 0, "Blur bg", "b"),
+           SlideLin("x", 0, 50, "x coord", "Right", "Left"),
+           SlideLin("y", 0, 50, "y coord", "Down", "Up"),
+           SlideLog("scale", 1, "scale", "-", "+"),
+       )
     def scene(self, vs):
        vs.map.put(vob.vobs.SolidBackdropVob(java.awt.Color.yellow))
 
-       scaled = vs.orthoCS(0, "X", 0, 0, 0, .9, .9)
+       scaled = vs.orthoCS(0, "X", 0, self.x, self.y, self.scale, self.scale)
 
        layout = ff.view.PageSpanLayout(enfMaker.makeEnfilade(sc.getCurrent()))
         ff.util.PageSpanPaper.paperMill = vob.gl.PaperMill.getInstance()
         ff.util.PageSpanPaper.paperMillWindow = vob.putil.demowindow.w
        #layout.useBg = 0
+
+        ff.util.PageSpanPaper.withBlur = self.blur
        
        layout.place(vs, scaled, 1, 100000)
Index: fenfire/org/fenfire/util/PageSpanPaper.java
diff -u fenfire/org/fenfire/util/PageSpanPaper.java:1.3 
fenfire/org/fenfire/util/PageSpanPaper.java:1.4
--- fenfire/org/fenfire/util/PageSpanPaper.java:1.3     Mon Apr 28 09:12:09 2003
+++ fenfire/org/fenfire/util/PageSpanPaper.java Wed Apr 30 08:13:43 2003
@@ -61,7 +61,8 @@
     Paper bgPaper;
     Paper bgHaloPaper;
     Paper noBgPaper;
-    GL.Program fpDualBlur;
+    Paper bgBlurPaper;
+    GL.Program fpBlurDual;
 
     /** Return callgl code to bind this page's texture
      * to the given texunit.
@@ -110,8 +111,14 @@
      */
     public static String setupHaloDualPass = null;
 
+    /** Set up code for being the extra pass with blurring.
+     */
+    public static String setupBlurDualPass = null;
+
     public static boolean withHalo = false;
 
+    public static boolean withBlur = false;
+
     public static String teardown = null;
 
     int paperSeed;
@@ -173,6 +180,29 @@
                    }
                }
                return bgHaloPaper;
+           } else if (withBlur) {
+               if (bgBlurPaper == null) {
+                   bgBlurPaper = (Paper)getBg().clone();
+                   if(bgBlurPaper.getNPasses() == 1 &&
+                      bgBlurPaper.getPass(0).getNTexGens() == 1) {
+                       // Draw text-haloed paper
+                       Paper.Pass pass = bgBlurPaper.getPass(0);
+                       pass.setNTexGens(2);
+                       pass.putNormalTexGen(1, getTexgen());
+                       pass.setSetupcode(
+                                         pass.getSetupcode() +
+                                         setupBlurDualPass + 
+                                         getBindTexture(1));
+                       pass.setTeardowncode(teardown + 
+                                            pass.getTeardowncode());
+                   } else {
+                       // We don't have an optimized paper;
+                       // add a pass.
+                       addPaperPass(bgBlurPaper, setupExtraPass);
+                       // FIXME: add blur
+                   }
+               }
+               return bgBlurPaper;
            } else {
                if(bgPaper == null) {
                    bgPaper = (Paper)getBg().clone();
Index: fenfire/org/fenfire/util/pagespanpaper.py
diff -u fenfire/org/fenfire/util/pagespanpaper.py:1.5 
fenfire/org/fenfire/util/pagespanpaper.py:1.6
--- fenfire/org/fenfire/util/pagespanpaper.py:1.5       Mon Apr 28 09:21:18 2003
+++ fenfire/org/fenfire/util/pagespanpaper.py   Wed Apr 30 08:13:43 2003
@@ -99,7 +99,7 @@
 """
 
 if GL.hasExtension("GL_ARB_fragment_program"):
-    PageSpanPaper.fpDualBlur = GL.createProgram("""!!ARBfp1.0
+    PageSpanPaper.fpBlurDual = GL.createProgram("""!!ARBfp1.0
     # Computes color = tex0 * tex1 with
     # tex0 blurred near non-white parts of tex1.
 
@@ -119,7 +119,7 @@
     # as follows:
     #   1 -> no bias
     #   0 -> large bias
-    DP4 coord0.w, {-100,-100,-100,300}, tex1b;
+    DP4 coord0.w, {-10,-10,-10,30}, tex1b;
 
     # Filter background texture with the proper LOD bias
     TEMP tex0;
@@ -129,10 +129,10 @@
     END
     """)
 
-    PageSpanPaper.setupDualPass = ("""
+    PageSpanPaper.setupBlurDualPass = ("""
         PushAttrib ENABLE_BIT TEXTURE_BIT COLOR_BUFFER_BIT CURRENT_BIT
         BindProgram FRAGMENT_PROGRAM_ARB %s
         Enable FRAGMENT_PROGRAM_ARB
         Disable REGISTER_COMBINERS_NV
         Disable BLEND
-    """ % PageSpanPaper.fpDualBlur.getProgId())
+    """ % PageSpanPaper.fpBlurDual.getProgId())




reply via email to

[Prev in Thread] Current Thread [Next in Thread]