gzz-commits
[Top][All Lists]
Advanced

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

[Gzz-commits] gzz gfx/demo/fontfilter2.py gzz/gfx/gl/PageSpan...


From: Tuomas J. Lukka
Subject: [Gzz-commits] gzz gfx/demo/fontfilter2.py gzz/gfx/gl/PageSpan...
Date: Tue, 04 Mar 2003 04:29:32 -0500

CVSROOT:        /cvsroot/gzz
Module name:    gzz
Changes by:     Tuomas J. Lukka <address@hidden>        03/03/04 04:29:31

Modified files:
        gfx/demo       : fontfilter2.py 
        gzz/gfx/gl     : PageSpanPaper.java 
        gzz/view       : PageSpanCellView.java 

Log message:
        Better halo

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/fontfilter2.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/gfx/gl/PageSpanPaper.java.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/PageSpanCellView.java.diff?tr1=1.28&tr2=1.29&r1=text&r2=text

Patches:
Index: gzz/gfx/demo/fontfilter2.py
diff -u gzz/gfx/demo/fontfilter2.py:1.2 gzz/gfx/demo/fontfilter2.py:1.3
--- gzz/gfx/demo/fontfilter2.py:1.2     Tue Mar  4 04:12:04 2003
+++ gzz/gfx/demo/fontfilter2.py Tue Mar  4 04:29:31 2003
@@ -45,7 +45,7 @@
 
     SPARE0 = (1-TEX0)
 
-    color = COL0
+    color = COL0 * SPARE0
     alpha = SPARE0.blue
 """)
 
@@ -61,46 +61,41 @@
 
 def textPaperScene(vs, layout, layoutBg, scale):
     
+    if currentScene.bg:
+       paperOnce(vs, 0, layoutBg, scale)
 
     if currentScene.halo:
-       if currentScene.bg:
-           paperOnce(vs, 0, layoutBg, scale)
        sz = 10
        for x in range(-sz,sz+1):
            for y in range(-sz,sz+1):
                if x==0 and y==0: continue
-               into = vs.translateCS(0, str((x,y)), 2*x, 2*y)
+               into = vs.translateCS(0, str((x,y)), x, y)
+
+               dist = math.hypot(x, y)
+               if dist > sz: continue
+
+               # f = .15*(1 - dist / sz)
+               f = .02
 
-               f = 1 / (1 + (math.hypot(x, y))**1.5)
                vs.put(getDListNocoords("""
                    Enable BLEND
                    Disable DEPTH_TEST
                    Disable ALPHA_TEST
-                   BlendFunc SRC_ALPHA ONE
+                   BlendFunc ONE ONE_MINUS_SRC_COLOR
+                   TexParameter TEXTURE_2D TEXTURE_MIN_FILTER 
LINEAR_MIPMAP_LINEAR
                    Color %(f)s %(f)s %(f)s
                """ % locals()))
                paperOnce(vs, into, layout, scale)
 
-       vs.put(getDListNocoords("""
-           Enable BLEND
-           Disable DEPTH_TEST
-           BlendFunc SRC_ALPHA ONE
-           BlendFunc SRC_ALPHA ONE_MINUS_SRC_ALPHA
-           Color 0 0 0
-       """ % locals()))
-       paperOnce(vs, 0, layout, scale)
-    else:
-       if currentScene.bg:
-           paperOnce(vs, 0, layoutBg, scale)
-       else:
-           vs.put(getDListNocoords("""
-               Enable BLEND
-               Disable DEPTH_TEST
-               BlendFunc SRC_ALPHA ONE
-               BlendFunc SRC_ALPHA ONE_MINUS_SRC_ALPHA
-               Color 0 0 0
-           """ % locals()))
-           paperOnce(vs, 0, layout, scale)
+    vs.put(getDListNocoords("""
+       Enable BLEND
+       Disable DEPTH_TEST
+       BlendFunc ONE ONE
+       BlendFunc ONE ONE_MINUS_SRC_ALPHA
+       TexParameter TEXTURE_2D TEXTURE_MIN_FILTER LINEAR_MIPMAP_LINEAR
+       Color 0 0 0
+    """ % locals()))
+    paperOnce(vs, 0, layout, scale)
 
 class OptMill(gzz.gfx.gl.PaperMill):
     def __init__(self, mill):
@@ -118,6 +113,7 @@
        self.pageSpanCellView.useBg = 0
        self.pageSpanCellViewBg = gzz.view.PageSpanCellView()
        self.pageSpanCellViewBg.useBg = 1
+       self.pageSpanCellViewBg.useText = 0
        self.key = KeyPresses(self,
            SlideLog("scale", 2, "scale", "<",">"),
            SlideLin("seed", -3900, 300, "paperseed", "P", "p"),
Index: gzz/gzz/gfx/gl/PageSpanPaper.java
diff -u gzz/gzz/gfx/gl/PageSpanPaper.java:1.14 
gzz/gzz/gfx/gl/PageSpanPaper.java:1.15
--- gzz/gzz/gfx/gl/PageSpanPaper.java:1.14      Mon Mar  3 10:36:14 2003
+++ gzz/gzz/gfx/gl/PageSpanPaper.java   Tue Mar  4 04:29:31 2003
@@ -126,16 +126,27 @@
 
     }
 
+    private Paper getBg() {
+       if(bg == null) {
+           if(paperMill == null)
+               throw new Error("Trying to use bg without papermill");
+           bg = paperMill.getOptimizedPaper(paperSeed, paperMillWindow);
+       }
+       return bg;
+    }
+
     public Paper getPaper(boolean withBackground) {
+       return getPaper(withBackground, true);
+    }
+    public Paper getPaper(boolean withBackground, boolean withSpan) {
+       if(!withSpan) {
+           if(!withBackground) throw new Error("Can't do without both");
+           return getBg();
+       }
        if(withBackground) {
-           if(bg == null) {
-               if(paperMill == null)
-                   throw new Error("Trying to use bg without papermill");
-               bg = paperMill.getOptimizedPaper(paperSeed, paperMillWindow);
-           }
            if(withHalo) {
                if (bgHaloPaper == null) {
-                   bgHaloPaper = (Paper)bg.clone();
+                   bgHaloPaper = (Paper)getBg().clone();
                    if(bgHaloPaper.getNPasses() == 1 &&
                       bgHaloPaper.getPass(0).getNTexGens() == 1) {
                        // Draw text-haloed paper
Index: gzz/gzz/view/PageSpanCellView.java
diff -u gzz/gzz/view/PageSpanCellView.java:1.28 
gzz/gzz/view/PageSpanCellView.java:1.29
--- gzz/gzz/view/PageSpanCellView.java:1.28     Mon Mar  3 07:25:48 2003
+++ gzz/gzz/view/PageSpanCellView.java  Tue Mar  4 04:29:31 2003
@@ -51,6 +51,7 @@
     public static float dicefactor = .5f;
 
     public boolean useBg = true;
+    public boolean useText = true;
 
     public Layout getLayout(Enfilade1D enf) {
        return new Layout(enf);
@@ -206,7 +207,7 @@
                curx += scale * xywh[4*p + 2];
 
                psps[p].request(importance, scale * pixelscale);
-               vs.map.put(GLRen.createPaperQuad(psps[p].getPaper(useBg), 
+               vs.map.put(GLRen.createPaperQuad(psps[p].getPaper(useBg, 
useText), 
                            xywh[4*p + 0], 
                            xywh[4*p + 1], 
                            xywh[4*p + 0]+xywh[4*p + 2], 




reply via email to

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