gzz-commits
[Top][All Lists]
Advanced

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

[Gzz-commits] gzz/lava gzz/loom/Loom.java test/gzz/loom/Wheel...


From: Benja Fallenstein
Subject: [Gzz-commits] gzz/lava gzz/loom/Loom.java test/gzz/loom/Wheel...
Date: Wed, 26 Feb 2003 16:32:55 -0500

CVSROOT:        /cvsroot/gzz
Module name:    gzz
Changes by:     Benja Fallenstein <address@hidden>      03/02/26 16:32:55

Modified files:
        lava/gzz/loom  : Loom.java 
        lava/test/gzz/loom: WheelView.test 

Log message:
        probably buggy attempt at checking angles -> asko, please look into it
        for visual debugging, you can now 'java gzz.loom.Loom -w yourfile.rdf' 
(gives wheel view).
        but *please* write a failing test before changing WheelView.java\!

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/lava/gzz/loom/Loom.java.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/lava/test/gzz/loom/WheelView.test.diff?tr1=1.3&tr2=1.4&r1=text&r2=text

Patches:
Index: gzz/lava/gzz/loom/Loom.java
diff -u gzz/lava/gzz/loom/Loom.java:1.9 gzz/lava/gzz/loom/Loom.java:1.10
--- gzz/lava/gzz/loom/Loom.java:1.9     Wed Feb 26 13:03:55 2003
+++ gzz/lava/gzz/loom/Loom.java Wed Feb 26 16:32:54 2003
@@ -51,7 +51,23 @@
     }
 
     public static void main(String[] args) throws RDFException, IOException {
-       final Model model = load(args[0]);
+       String file = "";
+       boolean wheel = false;
+
+       if(args.length < 1) {
+           System.err.println("No filename given");
+           System.exit(1);
+       } else if(args.length == 1) {
+           file = args[0];
+       } else if(args[0].equals("-w")) {
+           wheel = true;
+           file = args[1];
+       } else {
+           System.err.println("Don't understand parameters");
+           System.exit(1);
+       }
+
+       final Model model = load(file);
        final Statement stmt = model.listStatements().next();
        final GraphicsAPI api = GraphicsAPI.getInstance();
 
@@ -80,6 +96,10 @@
                               sc.unitSqCS(into, "text"));
                }
            };
+       View view0;
+       if(!wheel) view0 = new SimpleView(nodeView);
+       else view0 = new WheelView(nodeView);
+       final View view = view0;
        final Shower s = new Shower() {
                Screen screen;
                public void setScreen(Screen s) {
@@ -87,9 +107,8 @@
                }
                public VobScene generate() {
                    VobScene sc = this.screen.window.createVobScene();
-                   SimpleView sv = new SimpleView(nodeView);
                    sc.map.put(new SolidBgVob(java.awt.Color.white), 0);
-                   sv.render(sc, 0, cursor);
+                   view.render(sc, 0, cursor);
                    return sc;
                }
                public void chg() {}
Index: gzz/lava/test/gzz/loom/WheelView.test
diff -u gzz/lava/test/gzz/loom/WheelView.test:1.3 
gzz/lava/test/gzz/loom/WheelView.test:1.4
--- gzz/lava/test/gzz/loom/WheelView.test:1.3   Wed Feb 26 15:54:23 2003
+++ gzz/lava/test/gzz/loom/WheelView.test       Wed Feb 26 16:32:54 2003
@@ -52,6 +52,15 @@
     """Return the distance between p1 and p2 (AWT points)"""
     return math.sqrt((p1.x-p2.x)**2 + (p1.y-p2.y)**2)
 
+def angle(p1, p2):
+    """
+    If p1 is the origin, return the angle between a
+    line from p1 to p2 and the x axis.
+    """
+    x, y = (p2.x-p1.x) * 1.0, (p2.y-p1.y) * 1.0
+    if x == 0: return math.pi/2
+    return math.asin(y/x)
+
 
 def testWheel():
     r.addProperty(p, s)
@@ -82,6 +91,13 @@
     
     for px in (pt, pu, pv, pw):
         assert abs(distance(pr,ps) - distance(pr,px)) < 1
+
+    # Check the angles XXX
+    # This code doesn't seem to work right? XXX
+
+    assert angle(pr, ps) == 0
+    assert angle(pr, pw) == 0
+    print angle(pr, pt), angle(pr, pu), angle(pr, pv)
 
     # Test that WheelView calls its NodeView
     # with all the correct parameters.




reply via email to

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