[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz doc/pegboard/vobscene_twids--tjl/peg.rst gz...
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] gzz doc/pegboard/vobscene_twids--tjl/peg.rst gz... |
Date: |
Fri, 06 Dec 2002 07:20:17 -0500 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Tuomas J. Lukka <address@hidden> 02/12/06 07:20:17
Modified files:
doc/pegboard/vobscene_twids--tjl: peg.rst
gzz/modules/pp : PPView2.java PlaneView.java
gzz/vob : VobMatcher.java VobScene.java
gzz/vob/impl : DefaultVobMatcher.java
Log message:
Implement vobscene_twids--tjl
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/doc/pegboard/vobscene_twids--tjl/peg.rst.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/modules/pp/PPView2.java.diff?tr1=1.23&tr2=1.24&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/modules/pp/PlaneView.java.diff?tr1=1.59&tr2=1.60&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/vob/VobMatcher.java.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/vob/VobScene.java.diff?tr1=1.22&tr2=1.23&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/vob/impl/DefaultVobMatcher.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
Patches:
Index: gzz/doc/pegboard/vobscene_twids--tjl/peg.rst
diff -u gzz/doc/pegboard/vobscene_twids--tjl/peg.rst:1.1
gzz/doc/pegboard/vobscene_twids--tjl/peg.rst:1.2
--- gzz/doc/pegboard/vobscene_twids--tjl/peg.rst:1.1 Fri Nov 15 08:49:53 2002
+++ gzz/doc/pegboard/vobscene_twids--tjl/peg.rst Fri Dec 6 07:20:16 2002
@@ -3,9 +3,9 @@
=============================================================
:Author: Tuomas Lukka
-:Date: $Date: 2002/11/15 13:49:53 $
-:Revision: $Revision: 1.1 $
-:Status: Accepted
+:Date: $Date: 2002/12/06 12:20:16 $
+:Revision: $Revision: 1.2 $
+:Status: Implemented
There are some small details in VobScene and related classes
that need to be addressed.
Index: gzz/gzz/modules/pp/PPView2.java
diff -u gzz/gzz/modules/pp/PPView2.java:1.23
gzz/gzz/modules/pp/PPView2.java:1.24
--- gzz/gzz/modules/pp/PPView2.java:1.23 Thu Dec 5 20:03:51 2002
+++ gzz/gzz/modules/pp/PPView2.java Fri Dec 6 07:20:16 2002
@@ -173,7 +173,7 @@
// CS from virtualpaper to screen
final int paper2screen = glc.concat(framecenterCS, panZoom);
- vs.matcher.addSub(frameCS, paper2screen, "PAPER2S");
+ vs.matcher.add(frameCS, paper2screen, "PAPER2S");
final int bg2screen = vs.scaleCS(paper2screen, "BGSCA",
bgscale, bgscale);
@@ -194,9 +194,9 @@
// Irregu needs frame 2 paper
final int screen2paper = glc.invert(paper2screen);
- vs.matcher.addSub(paper2screen, screen2paper, "INVER2S");
+ vs.matcher.add(paper2screen, screen2paper, "INVER2S");
final int frameUnit2paper = glc.concat(screen2paper, frameUnit);
- vs.matcher.addSub(screen2paper, frameUnit2paper, "f2pap");
+ vs.matcher.add(screen2paper, frameUnit2paper, "f2pap");
final int paper2screen_shifted = vs.translateCS(paper2screen,
"SHIFTUP",
@@ -276,7 +276,7 @@
int[] pan = getCoords(c);
final int c2fCS = vs.coords.ortho(0, 0,
-pan[0]*buoyZoom, -pan[1]*buoyZoom, buoyZoom, buoyZoom);
- vs.matcher.addSub(buoycs, c2fCS, "C2F");
+ vs.matcher.add(buoycs, c2fCS, "C2F");
buoyqueue.add(new Runnable() {
public void run() {
@@ -351,7 +351,7 @@
// cell to frame CS
int c2fCS = vs.coords.ortho(0, 0, 0, 0, 10, 10);
- vs.matcher.addSub(mainctr, c2fCS, "C2F");
+ vs.matcher.add(mainctr, c2fCS, "C2F");
int[] coords = getCoords(context.getAccursed());
if(coords != null) {
@@ -461,7 +461,7 @@
int c2f = vs.coords.ortho(0, 0, 0, 0,
leftPanelZoom, leftPanelZoom);
- vs.matcher.addSub(ctr, c2f, "C2F"+ y);
+ vs.matcher.add(ctr, c2f, "C2F"+ y);
buoy_vc.setAccursed(p);
@@ -503,7 +503,7 @@
int c2f = vs.coords.ortho(0, 0,
-linkbuoyZoom*coords[0],
-linkbuoyZoom*coords[1],
linkbuoyZoom, linkbuoyZoom);
- vs.matcher.addSub(ctr, c2f, "C2F");
+ vs.matcher.add(ctr, c2f, "C2F");
buoy_vc.setAccursed(otherNote);
buoy_singlePlane.render(vs, frameCS, c2f);
Index: gzz/gzz/modules/pp/PlaneView.java
diff -u gzz/gzz/modules/pp/PlaneView.java:1.59
gzz/gzz/modules/pp/PlaneView.java:1.60
--- gzz/gzz/modules/pp/PlaneView.java:1.59 Thu Nov 7 04:33:31 2002
+++ gzz/gzz/modules/pp/PlaneView.java Fri Dec 6 07:20:16 2002
@@ -41,7 +41,7 @@
*/
public class PlaneView {
-public static final String rcsid = "$Id: PlaneView.java,v 1.59 2002/11/07
09:33:31 tjl Exp $";
+public static final String rcsid = "$Id: PlaneView.java,v 1.60 2002/12/06
12:20:16 tjl Exp $";
public static boolean dbg = true;
private static void pa(String s) { System.err.println(s); }
@@ -81,14 +81,14 @@
BgVob bg = BgVob.create(plane, null);
int bginto = vs.coords.ortho(viewport2screen, 500, 0, 0, 1, 1);
int bgpap = vs.coords.ortho(paper2viewport, 0, 0, 0, 100, 100);
- vs.matcher.addSub(viewport2screen, bginto, "BGTRANS");
- vs.matcher.addSub(paper2viewport, bgpap, "BGPAP");
+ vs.matcher.add(viewport2screen, bginto, "BGTRANS");
+ vs.matcher.add(paper2viewport, bgpap, "BGPAP");
vs.map.put(bg, bginto, bgpap);
vs.map.put(GLCache.getCallList("Color 0 0 0"));
int into = ((GLVobCoorder)vs.coords).concat(viewport2screen,
paper2viewport);
- vs.matcher.addSub(viewport2screen, into, "PLANEINTO");
+ vs.matcher.add(viewport2screen, into, "PLANEINTO");
Space space = cursor.space;
Dim d_1 = space.getDim(Ids.d_1);
@@ -196,7 +196,7 @@
center = center.getRootclone();
int place[] = Params.getInts(center.s(d.pan, 1), d.pan, 2, null);
float scale = 0.01f;
- int p2v = vs.matcher.addSub(
+ int p2v = vs.matcher.add(
cs,
vs.coords.ortho(0, 0,
-scale*place[0]+0.5f, -scale*place[1]+0.5f,
Index: gzz/gzz/vob/VobMatcher.java
diff -u gzz/gzz/vob/VobMatcher.java:1.4 gzz/gzz/vob/VobMatcher.java:1.5
--- gzz/gzz/vob/VobMatcher.java:1.4 Tue Oct 15 09:29:19 2002
+++ gzz/gzz/vob/VobMatcher.java Fri Dec 6 07:20:16 2002
@@ -37,9 +37,31 @@
/**
* @return cs.
*/
- int addSub(int into, int cs, Object key);
+ int add(int into, int cs, Object key);
+ /** Return the index of the coordinate system that
+ * was added with the given key.
+ * @return The index of the coordinate system, or -1 if none.
+ */
int getCS(Object key);
+
+ /** Return the index of the coordinate system that was
+ * added into the given parent with the given key.
+ * @return The index of the coordinate system, or -1 if none.
+ */
+ int getCS(int parent, Object key);
+
+ /** Get the matcher parent of the given coordinate system.
+ */
+ int getParent(int cs);
+
+ /** Whether calling getParent(cs) recursively
+ * (at least one time!) would eventually
+ * return parent. I.e. the coordinate system
+ * itself is not its own ancestor.
+ */
+ boolean isAncestor(int cs, int ancestor);
+
Object getKey(int cs);
Index: gzz/gzz/vob/VobScene.java
diff -u gzz/gzz/vob/VobScene.java:1.22 gzz/gzz/vob/VobScene.java:1.23
--- gzz/gzz/vob/VobScene.java:1.22 Fri Dec 6 07:08:28 2002
+++ gzz/gzz/vob/VobScene.java Fri Dec 6 07:20:16 2002
@@ -141,51 +141,51 @@
final public int orthoCS(int into, Object key, float depth,
float x, float y, float sx, float sy) {
- return matcher.addSub(into, coords.ortho(into,
+ return matcher.add(into, coords.ortho(into,
depth, x, y, sx, sy), key);
}
final public int translateCS(int into, Object key, float x, float y) {
- return matcher.addSub(into, coords.translate(into, x, y), key);
+ return matcher.add(into, coords.translate(into, x, y), key);
}
public int translateCS(int into, Object key,
float x, float y, float z) {
- return matcher.addSub(into, coords.translate(into, x, y, z), key);
+ return matcher.add(into, coords.translate(into, x, y, z), key);
}
public int scaleCS(int into, Object key, float sx, float sy) {
- return matcher.addSub(into, coords.scale(into, sx, sy), key);
+ return matcher.add(into, coords.scale(into, sx, sy), key);
}
// Affine
public int affineCS(int into, Object key,
float depth, float cx, float cy,
float x_x, float x_y, float y_x, float y_y) {
- return matcher.addSub(into,
+ return matcher.add(into,
af().affineCoordsys(into, depth, cx, cy,
x_x, x_y, y_x, y_y), key
);
}
public int rotateCS(int into, Object key, float degrees) {
- return matcher.addSub(into, af().rotate(into, degrees), key);
+ return matcher.add(into, af().rotate(into, degrees), key);
}
public int scaleCS(int into, Object key,
float sx, float sy, float sz) {
- return matcher.addSub(into, af().scale(into, sx, sy, sz), key);
+ return matcher.add(into, af().scale(into, sx, sy, sz), key);
}
public int unitSqCS(int into, Object key) {
- return matcher.addSub(into, coords.unitSq(into), key);
+ return matcher.add(into, coords.unitSq(into), key);
}
public int boxCS(int into, Object key, float w, float h) {
- return matcher.addSub(into, coords.box(into, w, h), key);
+ return matcher.add(into, coords.box(into, w, h), key);
}
public int orthoBoxCS(int into, Object key, float d, float x, float y,
float sx, float sy, float w, float h) {
- return matcher.addSub(into, coords.orthoBox(into, d, x, y, sx, sy, w,
h), key);
+ return matcher.add(into, coords.orthoBox(into, d, x, y, sx, sy, w, h),
key);
}
public int cullCS(int into, Object key, int clip) {
- return matcher.addSub(into, coords.cull(into, clip), key);
+ return matcher.add(into, coords.cull(into, clip), key);
}
public int cullCS(int into, Object key, int test, int clip) {
- return matcher.addSub(into, coords.cull(into, test, clip), key);
+ return matcher.add(into, coords.cull(into, test, clip), key);
}
/** Determines size of the area designated for the <code>Vob</code>s.
Index: gzz/gzz/vob/impl/DefaultVobMatcher.java
diff -u gzz/gzz/vob/impl/DefaultVobMatcher.java:1.3
gzz/gzz/vob/impl/DefaultVobMatcher.java:1.4
--- gzz/gzz/vob/impl/DefaultVobMatcher.java:1.3 Mon Nov 4 08:45:47 2002
+++ gzz/gzz/vob/impl/DefaultVobMatcher.java Fri Dec 6 07:20:17 2002
@@ -64,16 +64,16 @@
}
public DefaultVobMatcher() {
- addSub(-1, 0, null);
+ add(-1, 0, null);
}
// --- implement VobMatcher
public int add(int cs, Object key) {
- addSub(0, cs, key);
+ add(0, cs, key);
return cs;
}
- public int addSub(int into, int cs, Object key) {
+ public int add(int into, int cs, Object key) {
ensure(cs);
if(key == null) key = NULL;
keyByCs[cs] = new Key(key, into);
@@ -95,6 +95,19 @@
public int getCS(int parent, Object key) {
if(key == null) key = NULL;
return getCSByKeyObject(new Key(key, parent));
+ }
+
+ public int getParent(int cs) {
+ return keyByCs[cs].parent;
+ }
+
+ public boolean isAncestor(int cs, int ancestor) {
+ while(cs != 0) {
+ int cur = getParent(cs);
+ if(cur == ancestor) return true;
+ cs = cur;
+ }
+ return false;
}
public Object getKey(int cs) {
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] gzz doc/pegboard/vobscene_twids--tjl/peg.rst gz...,
Tuomas J. Lukka <=