[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz gfx/demo/xupdf.py gfx/libcoords/Coords.cxx ...
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] gzz gfx/demo/xupdf.py gfx/libcoords/Coords.cxx ... |
Date: |
Sun, 20 Oct 2002 05:33:18 -0400 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Tuomas J. Lukka <address@hidden> 02/10/20 05:33:17
Modified files:
gfx/demo : xupdf.py
gfx/libcoords : Coords.cxx
gfx/libutil : effects.py
gzz/gfx/gl : GLVobMap.java
gzz/view : pagespanview.py xubuoy.py
test/gzz/gfx/gl: glvobcoorder.test
test/tools : gfx.py
Log message:
Among twiddles, really important test and bugfix for coordsys
concatenation
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/xupdf.py.diff?tr1=1.53&tr2=1.54&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/libcoords/Coords.cxx.diff?tr1=1.39&tr2=1.40&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/libutil/effects.py.diff?tr1=1.18&tr2=1.19&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/gfx/gl/GLVobMap.java.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/pagespanview.py.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/xubuoy.py.diff?tr1=1.24&tr2=1.25&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/test/gzz/gfx/gl/glvobcoorder.test.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/test/tools/gfx.py.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
Patches:
Index: gzz/gfx/demo/xupdf.py
diff -c gzz/gfx/demo/xupdf.py:1.53 gzz/gfx/demo/xupdf.py:1.54
*** gzz/gfx/demo/xupdf.py:1.53 Fri Oct 4 02:54:11 2002
--- gzz/gfx/demo/xupdf.py Sun Oct 20 05:33:17 2002
***************
*** 1,15 ****
from __future__ import nested_scopes
from gzz.index import XuLink
from gzz.gfx.gl import Stencil
- from gzz.vob.buoy import NadirAngler
from jarray import array, zeros
- from gzz.view import pagespanview
- from gfx.libutil import effects
- reload(pagespanview)
- reload(effects)
-
# Now, this is the start of the REAL demo, the one
# with Xanadu links between PDF and text.
--- 1,13 ----
from __future__ import nested_scopes
+
+ import gzz.view.xubuoy
+ reload(gzz.view.xubuoy)
+
from gzz.index import XuLink
from gzz.gfx.gl import Stencil
from jarray import array, zeros
# Now, this is the start of the REAL demo, the one
# with Xanadu links between PDF and text.
***************
*** 69,77 ****
cell = home.N(d1)
space.cellTexter.setEnfilade(cell, p)
cells.append(cell)
-
- import gzz.view.xubuoy
- reload(gzz.view.xubuoy)
#execfile("gzz/view/xubuoy.py")
--- 67,72 ----
Index: gzz/gfx/libcoords/Coords.cxx
diff -c gzz/gfx/libcoords/Coords.cxx:1.39 gzz/gfx/libcoords/Coords.cxx:1.40
*** gzz/gfx/libcoords/Coords.cxx:1.39 Sat Oct 19 10:27:02 2002
--- gzz/gfx/libcoords/Coords.cxx Sun Oct 20 05:33:17 2002
***************
*** 622,629 ****
return super->canPerformGL() && super2->canPerformGL();
}
virtual bool performGL() {
! if(!super2->performGL()) return false;
! return super->performGL();
}
virtual bool shouldBeDrawn() {
return super->shouldBeDrawn() && super2->shouldBeDrawn();
--- 622,629 ----
return super->canPerformGL() && super2->canPerformGL();
}
virtual bool performGL() {
! if(!super->performGL()) return false;
! return super2->performGL();
}
virtual bool shouldBeDrawn() {
return super->shouldBeDrawn() && super2->shouldBeDrawn();
Index: gzz/gfx/libutil/effects.py
diff -c gzz/gfx/libutil/effects.py:1.18 gzz/gfx/libutil/effects.py:1.19
*** gzz/gfx/libutil/effects.py:1.18 Sat Oct 19 10:27:22 2002
--- gzz/gfx/libutil/effects.py Sun Oct 20 05:33:17 2002
***************
*** 1,5 ****
from gzz.gfx.gl import GL, GLRen, GLSpans, Paper, GLCache
- from gzz.vob.buoy import NadirAngler
from gzz.vob.buoy import Buoy3Floater, Buoy4Floater
import math
--- 1,4 ----
Index: gzz/gzz/gfx/gl/GLVobMap.java
diff -c gzz/gzz/gfx/gl/GLVobMap.java:1.13 gzz/gzz/gfx/gl/GLVobMap.java:1.14
*** gzz/gzz/gfx/gl/GLVobMap.java:1.13 Wed Oct 2 07:43:44 2002
--- gzz/gzz/gfx/gl/GLVobMap.java Sun Oct 20 05:33:17 2002
***************
*** 25,31 ****
import java.awt.*;
public class GLVobMap implements VobMap {
! public static final String rcsid = "$Id: GLVobMap.java,v 1.13 2002/10/02
11:43:44 humppake Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.err.println(s); }
--- 25,31 ----
import java.awt.*;
public class GLVobMap implements VobMap {
! public static final String rcsid = "$Id: GLVobMap.java,v 1.14 2002/10/20
09:33:17 tjl Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.err.println(s); }
***************
*** 34,46 ****
public GLVobMap(gzz.client.gl.GLScreen screen) {
this.screen = screen;
if(dbg) pa("New GLVobMap for "+screen+": "+this);
}
- int[] list = new int[10000];
- int curs = 0;
- int[] cs = new int[10000];
- Object[] vobs = new Vob[10000];
- int nvobs = 0;
public void put(Vob3 vob, int coordsys1, int coordsys2, int coordsys3) {
curs = vob.addToListGL(screen, list, curs, coordsys1,
coordsys2, coordsys3);
--- 34,56 ----
public GLVobMap(gzz.client.gl.GLScreen screen) {
this.screen = screen;
if(dbg) pa("New GLVobMap for "+screen+": "+this);
+ clear();
+ }
+
+ int[] list;
+ int curs;
+ int[] cs;
+ Object[] vobs;
+ int nvobs;
+
+ public void clear() {
+ list = new int[10000];
+ curs = 0;
+ cs = new int[10000];
+ vobs = new Vob[10000];
+ nvobs = 0;
}
public void put(Vob3 vob, int coordsys1, int coordsys2, int coordsys3) {
curs = vob.addToListGL(screen, list, curs, coordsys1,
coordsys2, coordsys3);
***************
*** 81,85 ****
--- 91,97 ----
}
return null;
}
+
+
}
Index: gzz/gzz/view/pagespanview.py
diff -c gzz/gzz/view/pagespanview.py:1.13 gzz/gzz/view/pagespanview.py:1.14
*** gzz/gzz/view/pagespanview.py:1.13 Fri Oct 4 02:54:11 2002
--- gzz/gzz/view/pagespanview.py Sun Oct 20 05:33:17 2002
***************
*** 1,8 ****
from __future__ import nested_scopes
from gzz.gfx.gl import GL, GLRen, GLSpans, Paper, GLCache, Stencil
import gfx.libpaper.papermill
! from gfx.libutil import nvcode
! from gfx.libutil import effects
import gzz
import java
from jarray import zeros
--- 1,7 ----
from __future__ import nested_scopes
from gzz.gfx.gl import GL, GLRen, GLSpans, Paper, GLCache, Stencil
import gfx.libpaper.papermill
! from gfx.libutil import nvcode, effects
import gzz
import java
from jarray import zeros
Index: gzz/gzz/view/xubuoy.py
diff -c gzz/gzz/view/xubuoy.py:1.24 gzz/gzz/view/xubuoy.py:1.25
*** gzz/gzz/view/xubuoy.py:1.24 Sat Oct 19 10:28:06 2002
--- gzz/gzz/view/xubuoy.py Sun Oct 20 05:33:17 2002
***************
*** 5,14 ****
from gzz.index import XuLink
from gzz.gfx.gl import Stencil
- from gzz.vob.buoy import NadirAngler
from jarray import array, zeros
from gzz.view import pagespanview
from gfx.libutil import effects
--- 5,15 ----
from gzz.index import XuLink
from gzz.gfx.gl import Stencil
from jarray import array, zeros
+ # import gzz.view.pagespanview
+ # import gfx.libutil.effects
from gzz.view import pagespanview
from gfx.libutil import effects
***************
*** 143,149 ****
maincs, globalview = None,
globalusefancypaper = 0,
globalshowtessel = 0,
! globalspan = None):
if not self.cell:
return
cell = self.cell
--- 144,151 ----
maincs, globalview = None,
globalusefancypaper = 0,
globalshowtessel = 0,
! globalspan = None,
! nadircs = None):
if not self.cell:
return
cell = self.cell
***************
*** 168,173 ****
--- 170,180 ----
cs1 = floater.buoyCoordsys(main_end_cs, self.cell.getId())
+ if nadircs != None:
+ cs1_nad = vs.coords.nadirOrigin(cs1, nadircs)
+ vs.matcher.addSub(cs1, cs1_nad, "N")
+ cs1 = cs1_nad
+
# Then, make the buoy coordsys
***************
*** 276,282 ****
self.rad = screensize[0] * 5/12
! self.nadir = NadirAngler(self.ctrx, screensize[1]*2)
self.clip = 0
self.selectCS = None
self.currentvs = None
--- 283,289 ----
self.rad = screensize[0] * 5/12
! self.nadir = (self.ctrx, screensize[1]*2)
self.clip = 0
self.selectCS = None
self.currentvs = None
***************
*** 480,485 ****
--- 487,494 ----
def scene(self, vs):
bg(vs)
+ nadircs = vs.translateCS(0, "NAD", *self.nadir)
+
# projx = self.ctrx + 1.5*self.rad
# fbuoyparams = (self.ctrx, self.ctry, self.rad,
# projx, self.ctry, 1)
***************
*** 554,560 ****
globalview = self.view,
globalusefancypaper = self.usefancypaper,
globalshowtessel = self.showtessel,
! globalspan = self.span)
self.buoys.append(b)
for backlink in globalback:
b = XuPDFBuoy(0,(getattr(backlink,"from"), backlink.to),
--- 563,570 ----
globalview = self.view,
globalusefancypaper = self.usefancypaper,
globalshowtessel = self.showtessel,
! globalspan = self.span,
! nadircs = nadircs)
self.buoys.append(b)
for backlink in globalback:
b = XuPDFBuoy(0,(getattr(backlink,"from"), backlink.to),
***************
*** 563,569 ****
globalview = self.view,
globalusefancypaper = self.usefancypaper,
globalshowtessel = self.showtessel,
! globalspan = self.span)
self.buoys.append(b)
self.currentvs = vs
self.selectCS = None
--- 573,580 ----
globalview = self.view,
globalusefancypaper = self.usefancypaper,
globalshowtessel = self.showtessel,
! globalspan = self.span,
! nadircs = nadircs)
self.buoys.append(b)
self.currentvs = vs
self.selectCS = None
Index: gzz/test/gzz/gfx/gl/glvobcoorder.test
diff -c gzz/test/gzz/gfx/gl/glvobcoorder.test:1.11
gzz/test/gzz/gfx/gl/glvobcoorder.test:1.12
*** gzz/test/gzz/gfx/gl/glvobcoorder.test:1.11 Sat Oct 19 10:29:54 2002
--- gzz/test/gzz/gfx/gl/glvobcoorder.test Sun Oct 20 05:33:17 2002
***************
*** 1,37 ****
needGL()
from gzz.gfx.gl import GLVobCoorder, GL
from jarray import array, zeros
! def checkTrans(c, cs, srclist, dstlist, delta=0):
src = array(srclist, 'f')
dst = zeros(len(src), 'f')
! c.transformPoints3(cs, src, dst)
for i in range(0, len(src)):
failIf(abs(dst[i]-dstlist[i]) > delta, str([srclist, dstlist, dst, i,
dst[i], dstlist[i]]))
! def checkInterp(c1, c2, i, fract, cs, srclist, dstlist, delta=0):
src = array(srclist, 'f')
dst = zeros(len(src), 'f')
! failUnless(c1.transformPoints3_interp(i, c2, fract, 0, cs, src, dst))
for i in range(0, len(src)):
failIf(abs(dst[i]-dstlist[i]) > delta, str([srclist, dstlist, dst, i,
dst[i], dstlist[i]]))
def testTransform():
- c = GLVobCoorder()
cs1 = c.ortho(0, 5, 10, 15, 0.5, 1)
! checkTrans(c, cs1, [0, 0, 0, 1, 1, 1], [10, 15, 5, 10.5, 16, 6])
cs2 = c.scale(0, 2, 3, 4)
! checkTrans(c, cs2, [0, 0, 0, 1, 1, 1], [0, 0, 0, 2, 3, 4])
cs3 = c.distort(0, 0, 0, 0.1, 0.1, 20, 5)
! checkTrans(c, cs3, [0, 0, 0, 0.001, 0.001, 1], [0, 0, 0, 0.02, 0.02, 1],
delta=0.00001)
cs = c.concat(cs1, cs2)
! checkTrans(c, cs, [0, 0, 0, 1, 1, 1, 2, 2, 2], [10, 15, 5, 11, 18, 9, 12,
21, 13])
def checkInverse(c, cs):
# unit cube
--- 1,71 ----
needGL()
+ from gzz.vob import *
+ from java.awt import Color
+
from gzz.gfx.gl import GLVobCoorder, GL
+ from gzz.gfx.gl import GL, GLRen, GLCache, PaperMill
from jarray import array, zeros
+ from test.tools.gfx import *
+
+ vs = getvs()
+ c = vs.coords
+
+ interp = zeros(1000, 'i')
+ interp[0] = 999
+ vs1 = getvs()
+ c1 = vs1.coords
+ vs2 = getvs()
+ c2 = vs2.coords
! def checkTrans(vs, cs, srclist, dstlist, delta=0, alsoGL = 1):
src = array(srclist, 'f')
dst = zeros(len(src), 'f')
! vs.coords.transformPoints3(cs, src, dst)
for i in range(0, len(src)):
failIf(abs(dst[i]-dstlist[i]) > delta, str([srclist, dstlist, dst, i,
dst[i], dstlist[i]]))
+ if alsoGL:
+ for i in range(0, len(src), 3):
+ vs.map.clear()
+ vs.map.put(SolidBgVob(Color.red))
+ d = """
+ PointSize 3
+ Color 1 1 1
+ Begin POINTS
+ Vertex %s %s %s
+ End
+ """ % (src[i], src[i+1], src[i+2])
+ print "TEST: ",d
+ vs.map.put(GLCache.getCallListCoorded(d), cs)
+ render(vs)
+ checkNotAvgColor(
+ int(dstlist[i])-1, int(dstlist[i+1])-1,
+ 3, 3, (255, 0, 0), delta=50)
!
!
! def checkInterp(vs1, vs2, i, fract, cs, srclist, dstlist, delta=0):
src = array(srclist, 'f')
dst = zeros(len(src), 'f')
! failUnless(vs1.coords.transformPoints3_interp(i, vs2.coords,
! fract, 0, cs, src, dst))
for i in range(0, len(src)):
failIf(abs(dst[i]-dstlist[i]) > delta, str([srclist, dstlist, dst, i,
dst[i], dstlist[i]]))
def testTransform():
cs1 = c.ortho(0, 5, 10, 15, 0.5, 1)
! checkTrans(vs, cs1, [0, 0, 0, 1, 1, 1], [10, 15, 5, 10.5, 16, 6])
cs2 = c.scale(0, 2, 3, 4)
! checkTrans(vs, cs2, [0, 0, 0, 1, 1, 1], [0, 0, 0, 2, 3, 4])
cs3 = c.distort(0, 0, 0, 0.1, 0.1, 20, 5)
! checkTrans(vs, cs3, [0, 0, 0, 0.001, 0.001, 1], [0, 0, 0, 0.02, 0.02, 1],
delta=0.00001, alsoGL = 0)
cs = c.concat(cs1, cs2)
! checkTrans(vs, cs, [0, 0, 0, 1, 1, 1, 2, 2, 2], [10, 15, 5, 11, 18, 9,
12, 21, 13])
def checkInverse(c, cs):
# unit cube
***************
*** 91,108 ****
checkInverse(c, cs_dist)
- interp = zeros(1000, 'i')
- interp[0] = 999
- c1 = GLVobCoorder()
- c2 = GLVobCoorder()
-
def testInterpolateTranslation():
cs_trans1 = c1.translate(0, 10, 10)
cs_trans2 = c2.translate(0, 100, 20)
interp[cs_trans1] = cs_trans2
! checkInterp(c1, c2, interp, .5, cs_trans1,
[0, 0, 0],
[55, 15, 0]
)
--- 125,137 ----
checkInverse(c, cs_dist)
def testInterpolateTranslation():
cs_trans1 = c1.translate(0, 10, 10)
cs_trans2 = c2.translate(0, 100, 20)
interp[cs_trans1] = cs_trans2
! checkInterp(vs1, vs2, interp, .5, cs_trans1,
[0, 0, 0],
[55, 15, 0]
)
***************
*** 112,118 ****
cs_anchor = c1.translate(0, 10, 0)
cs_b1 = c1.buoyOnCircle(0, cs_anchor, 0, 0, 20, -20, 0, 1)
! checkTrans(c1, cs_b1,
[0, 0, 0],
[20, 0, 0],
.1)
--- 141,147 ----
cs_anchor = c1.translate(0, 10, 0)
cs_b1 = c1.buoyOnCircle(0, cs_anchor, 0, 0, 20, -20, 0, 1)
! checkTrans(vs1, cs_b1,
[0, 0, 0],
[20, 0, 0],
.1)
***************
*** 120,126 ****
cs_b2t = c2.affineCoordsys(0, 0, 200, 200, 1, 0, 0, 1)
interp[cs_b1] = cs_b2t
! checkInterp(c1, c2, interp, .5, cs_b1,
[0, 0, 0],
[110, 100, 0],
.1)
--- 149,180 ----
cs_b2t = c2.affineCoordsys(0, 0, 200, 200, 1, 0, 0, 1)
interp[cs_b1] = cs_b2t
! checkInterp(vs1, vs2, interp, .5, cs_b1,
[0, 0, 0],
[110, 100, 0],
.1)
+
+ def testNadir():
+
+ cs_nadir = c1.translate(0, 500, 1000)
+ cs_center = c1.translate(0, 500, 0)
+ cs_rot = c1.nadirOrigin(cs_center, cs_nadir)
+
+ checkTrans(vs1, cs_rot,
+ [0, 0, 0, 0, 10, 0],
+ [500, 0, 0, 500, 10, 0],
+ .1)
+
+ c1.setTranslateParams(cs_center, 0, 1000)
+
+ checkTrans(vs1, cs_rot,
+ [0, 0, 0, 0, 10, 0],
+ [0, 1000, 0, 10, 1000, 0],
+ .1)
+
+
+
+
+
+
+ # : vim: set syntax=python :
Index: gzz/test/tools/gfx.py
diff -c gzz/test/tools/gfx.py:1.4 gzz/test/tools/gfx.py:1.5
*** gzz/test/tools/gfx.py:1.4 Wed Oct 16 03:46:39 2002
--- gzz/test/tools/gfx.py Sun Oct 20 05:33:17 2002
***************
*** 26,32 ****
def checkAvgColor(x, y, w, h, color, delta=10):
real = getAvgColor(x, y, w, h)
! msg = str((color, real))
for i in range(0,3):
if abs(color[i]-real[i]) > delta:
--- 26,32 ----
def checkAvgColor(x, y, w, h, color, delta=10):
real = getAvgColor(x, y, w, h)
! msg = str((color, real, ":", x, y, w, h))
for i in range(0,3):
if abs(color[i]-real[i]) > delta:
***************
*** 35,41 ****
def checkNotAvgColor(x, y, w, h, color, delta=10):
real = getAvgColor(x, y, w, h)
! msg = str((color, real))
for i in range(0,3):
if abs(color[i]-real[i]) > delta:
--- 35,41 ----
def checkNotAvgColor(x, y, w, h, color, delta=10):
real = getAvgColor(x, y, w, h)
! msg = str((color, real, ":", x, y, w, h))
for i in range(0,3):
if abs(color[i]-real[i]) > delta:
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] gzz gfx/demo/xupdf.py gfx/libcoords/Coords.cxx ...,
Tuomas J. Lukka <=