[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz ./TODO gzz/view/FisheyeState.java gzz/view/...
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] gzz ./TODO gzz/view/FisheyeState.java gzz/view/... |
Date: |
Thu, 13 Feb 2003 09:39:31 -0500 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Tuomas J. Lukka <address@hidden> 03/02/13 09:39:31
Modified files:
. : TODO
gzz/view : FisheyeState.java PageSpanCellView.java
gzz/view/buoy : buoymanager.py pagespanNodes.py
gzz/vob/impl : DefaultVobMatcher.java
Log message:
Fix animation of transclusion buoys in one direction
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/TODO.diff?tr1=1.573&tr2=1.574&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/FisheyeState.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/PageSpanCellView.java.diff?tr1=1.22&tr2=1.23&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/buoy/buoymanager.py.diff?tr1=1.33&tr2=1.34&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/buoy/pagespanNodes.py.diff?tr1=1.33&tr2=1.34&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/vob/impl/DefaultVobMatcher.java.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
Patches:
Index: gzz/TODO
diff -u gzz/TODO:1.573 gzz/TODO:1.574
--- gzz/TODO:1.573 Thu Feb 13 04:28:09 2003
+++ gzz/TODO Thu Feb 13 09:39:30 2003
@@ -17,7 +17,8 @@
tjl:
- the great buoy redesign
- irregu for pagespan nodes
- - buoy sizes
+ - buoy sizes / aspect ratios
+ - texture importances
- speedups
jvk:
- article: is buoy geometry and the reasons discussed?
Index: gzz/gzz/view/FisheyeState.java
diff -u gzz/gzz/view/FisheyeState.java:1.3 gzz/gzz/view/FisheyeState.java:1.4
--- gzz/gzz/view/FisheyeState.java:1.3 Wed Feb 12 08:08:20 2003
+++ gzz/gzz/view/FisheyeState.java Thu Feb 13 09:39:30 2003
@@ -10,7 +10,7 @@
* Uses clicks and drags by mouse button 3.
*/
public class FisheyeState {
-public static final String rcsid = "$Id: FisheyeState.java,v 1.3 2003/02/12
13:08:20 tjl Exp $";
+public static final String rcsid = "$Id: FisheyeState.java,v 1.4 2003/02/13
14:39:30 tjl Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.err.println(s); }
@@ -52,12 +52,18 @@
VobScene vs;
int cs, cs2;
+ /** Put the current fisheye coordinate system
+ * into the given vobscene. This puts more than one coordinate
+ * system, and only the first one uses the given key.
+ * The returned one is not matched and should be added to
+ * the matcher by the caller.
+ */
public int getCoordsys(VobScene vs, int into, Object key) {
this.vs = vs;
cs = ((GLVobCoorder)vs.coords).distort(into,
0, 0, 0, 0, 0, 0);
vs.matcher.add(into, cs, key);
- cs2 = vs.translateCS(cs, "TR", 0, 0);
+ cs2 = vs.coords.translate(cs, 0, 0);
setCoordsysParams();
return cs2;
}
Index: gzz/gzz/view/PageSpanCellView.java
diff -u gzz/gzz/view/PageSpanCellView.java:1.22
gzz/gzz/view/PageSpanCellView.java:1.23
--- gzz/gzz/view/PageSpanCellView.java:1.22 Wed Feb 12 08:58:00 2003
+++ gzz/gzz/view/PageSpanCellView.java Thu Feb 13 09:39:30 2003
@@ -177,6 +177,8 @@
/** Place this layout strictly fitted into the given
* box.
+ * Note that this won't interpolate nicely to
+ * "place".
*/
public void placeBoxed(VobScene vs, int into, float importance, float
pixelscale) {
int unit = vs.unitSqCS(into, "PSPCV.UNIT");
Index: gzz/gzz/view/buoy/buoymanager.py
diff -u gzz/gzz/view/buoy/buoymanager.py:1.33
gzz/gzz/view/buoy/buoymanager.py:1.34
--- gzz/gzz/view/buoy/buoymanager.py:1.33 Wed Feb 12 12:42:19 2003
+++ gzz/gzz/view/buoy/buoymanager.py Thu Feb 13 09:39:30 2003
@@ -59,8 +59,10 @@
-mainsize/2, -mainsize/2, 1, 1, mainsize,
mainsize)
self.vs.activate(main)
+ into = self.nadir(main)
+
self.links = []
- self.mainNode.renderMain(vs, self.nadir(main))
+ self.mainNode.renderMain(vs, into)
for l in self.links: self.linkReally(*l)
self.cs[main] = None
@@ -70,7 +72,7 @@
self.vs.matcher.keymapSingleCoordsys(main,
self.animationCS_buoy[0][3])
self.animationCS_buoy = None
- self.mainCS = main
+ self.mainCS = into
def link(self, *args):
self.links.append(args)
@@ -111,7 +113,7 @@
Color 0 0 0 0.6
"""))
- self.vs.map.put(lineconn, self.vs.unitSqCS(anchorCS, "UN"),
+ self.vs.map.put(lineconn, anchorUnit,
self.vs.unitSqCS(otherAnchorCS, "UN"))
# vs.map.put(filletconn, main_whole_cs, link_whole_cs)
@@ -124,7 +126,7 @@
if hasattr(self, "animationCS_main") and \
self.animationCS_main != None and \
linkId == self.animationCS_main[1][1]:
-
self.vs.matcher.keymapSingleCoordsys(otherAnchorCS,self.animationCS_main[0])
+ self.vs.matcher.keymapSingleCoordsys(into,self.animationCS_main[0])
self.animationCS_main = None
def key(self, key):
Index: gzz/gzz/view/buoy/pagespanNodes.py
diff -u gzz/gzz/view/buoy/pagespanNodes.py:1.33
gzz/gzz/view/buoy/pagespanNodes.py:1.34
--- gzz/gzz/view/buoy/pagespanNodes.py:1.33 Thu Feb 13 05:41:46 2003
+++ gzz/gzz/view/buoy/pagespanNodes.py Thu Feb 13 09:39:30 2003
@@ -8,12 +8,16 @@
area.
"""
+# The coordinate systems used inside a single node/mainnode:
+# all are matching-children of the "into" coordinate system.
+#
+# "LAYOUT" - the coordinate system in which the pagespan layout
+# is rendered into.
+# "VIEWPORT" - the edges of the viewport
+
import jarray
import java
-# Page span scrollblock as a whole;
-# in buoys, a part is shown.
-
import gzz
import gfx
from gzz.view.buoy import BuoyViewNodeType, BuoyViewMainNode
@@ -64,7 +68,11 @@
if data == None:
data = getScrollblockData(anchorSpan.getScrollBlock())
# For now, we'll just squish to fit
- data.layout.placeBoxed(vs, into, .3, 100)
+ unit = vs.unitSqCS(into, "UNIT")
+ scaled = vs.coords.scale(unit,
+ 1.0 / data.layout.w, 1.0 / data.layout.h)
+ vs.matcher.add(into, scaled, "LAYOUT")
+ data.layout.place(vs, scaled, .3, 100)
return into
@@ -161,9 +169,8 @@
self.scale = vs.scaleCS(self.ctr, "SCALE", self.scale, self.scale)
self.shift = self.fisheye.getCoordsys(vs, self.scale, "TR")
+ vs.matcher.add(into, self.shift, "LAYOUT")
- # XXX This is not right: the distortion
- # should be done here.
self.data.layout.place(vs, self.shift, .7, 300)
if self.nodetype.scrollBlockLinker.enfiladeOverlap != None:
Index: gzz/gzz/vob/impl/DefaultVobMatcher.java
diff -u gzz/gzz/vob/impl/DefaultVobMatcher.java:1.10
gzz/gzz/vob/impl/DefaultVobMatcher.java:1.11
--- gzz/gzz/vob/impl/DefaultVobMatcher.java:1.10 Wed Feb 12 12:42:19 2003
+++ gzz/gzz/vob/impl/DefaultVobMatcher.java Thu Feb 13 09:39:31 2003
@@ -28,9 +28,9 @@
/** A simple hierarchical implementation of VobMatcher.
*/
public class DefaultVobMatcher implements VobMatcher {
-private static final String rcsid = "$Id: DefaultVobMatcher.java,v 1.10
2003/02/12 17:42:19 tjl Exp $";
+private static final String rcsid = "$Id: DefaultVobMatcher.java,v 1.11
2003/02/13 14:39:31 tjl Exp $";
public static boolean dbg = false;
- private static void pa(String s) { System.err.println(s); }
+ private static void pa(String s) { System.out.println(s); }
static final int INITIAL_SIZE = 20;
static final Object NULL = new Object();
@@ -134,6 +134,8 @@
public int[] interpList(VobMatcher other0, boolean towardsOther) {
DefaultVobMatcher other = (DefaultVobMatcher)other0;
+ if(dbg) dump();
+ if(dbg) other.dump();
int[] interpList = new int[maxcs+1];
if(dbg) pa("interplist: "+interpList[0]);
int[] toOther = null;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] gzz ./TODO gzz/view/FisheyeState.java gzz/view/...,
Tuomas J. Lukka <=