[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java
From: |
Janne V. Kujala |
Subject: |
[Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java |
Date: |
Mon, 07 Apr 2003 06:00:44 -0400 |
CVSROOT: /cvsroot/libvob
Module name: libvob
Changes by: Janne V. Kujala <address@hidden> 03/04/07 06:00:43
Modified files:
org/nongnu/libvob/impl: OrthoCoorder.java
Log message:
buoyOnCircle solving for mudyc
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/libvob/libvob/org/nongnu/libvob/impl/OrthoCoorder.java.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
Patches:
Index: libvob/org/nongnu/libvob/impl/OrthoCoorder.java
diff -u libvob/org/nongnu/libvob/impl/OrthoCoorder.java:1.7
libvob/org/nongnu/libvob/impl/OrthoCoorder.java:1.8
--- libvob/org/nongnu/libvob/impl/OrthoCoorder.java:1.7 Mon Apr 7 05:12:27 2003
+++ libvob/org/nongnu/libvob/impl/OrthoCoorder.java Mon Apr 7 06:00:43 2003
@@ -35,7 +35,7 @@
*/
public class OrthoCoorder extends VobCoorder {
-public static final String rcsid = "$Id: OrthoCoorder.java,v 1.7 2003/04/07
09:12:27 mudyc Exp $";
+public static final String rcsid = "$Id: OrthoCoorder.java,v 1.8 2003/04/07
10:00:43 jvk Exp $";
public static boolean dbg = false;
private static void p(String s) { if(dbg) pa(s); }
private static void pa(String s) { System.out.println("OrthoCoorder::"+s);
}
@@ -162,32 +162,17 @@
// project and translate buoy
if (len <= rad) {
+ float ux = x - px;
+ float uy = y - py;
+ float vx = px - cx;
+ float vy = py - cy;
+ float A = ux * ux / rad + uy * uy / rad;
+ float B = ux * vx / rad + uy * vy / rad;
+ float C = vx * vx / rad + vy * vy / rad;
+ float t = (-B + Math.sqrt(B * B - A * C)) / A;
- // angular coefficient
- float ac = 1;
- if (px-x != 0) // tan a = y/x
- ac = (py-y)/(px-x);
-
- float boxSize = max - (max-min)*(len/rad);
- if (px <= x) {
- if (ac < 1 && ac >= -1)
- cs = orthoBox(0, (len/rad)*99f, // most close go up -
others down.
- cx + (float)Math.cos(ac)*rad, // x
- cy + (float)Math.sin(ac)*rad, 1,1,
boxSize,boxSize );
- else
- cs = orthoBox(0, (len/rad)*99f, // most close go up -
others down.
- cx - (float)Math.cos(ac)*rad, // x
- cy + (float)Math.sin(ac)*rad, 1,1,
boxSize,boxSize );
- } else {
- if (ac < 1 && ac >= -1)
- cs = orthoBox(0, (len/rad)*99f, // most close go up -
others down.
- cx - (float)Math.cos(ac)*rad, // x
- cy + (float)Math.sin(ac)*rad, 1,1,
boxSize,boxSize );
- else
- cs = orthoBox(0, (len/rad)*99f, // most close go up -
others down.
- cx + (float)Math.cos(ac)*rad, // x
- cy + (float)Math.sin(ac)*rad, 1,1,
boxSize,boxSize );
- }
+ x = px + t * ux;
+ y = py + t * uy;
}
return cs;
}
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Matti Katila, 2003/04/05
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Matti Katila, 2003/04/05
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Matti Katila, 2003/04/07
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java,
Janne V. Kujala <=
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Matti Katila, 2003/04/07
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Matti Katila, 2003/04/07
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Matti Katila, 2003/04/08
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Tuomas J. Lukka, 2003/04/23
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Tuomas J. Lukka, 2003/04/23
- [Gzz-commits] libvob/org/nongnu/libvob/impl OrthoCoorder.java, Matti Katila, 2003/04/28