projects
/
anneal.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
ac34cfc
)
got edge bindings right
author
adam
<adam@megacz.com>
Sun, 2 Dec 2007 01:40:10 +0000
(17:40 -0800)
committer
adam
<adam@megacz.com>
Sun, 2 Dec 2007 01:40:10 +0000
(17:40 -0800)
darcs-hash:
20071202014010
-5007d-
939304fc570e44391f15ddcc6df7aa50f43041a4
.gz
src/Geom.java
patch
|
blob
|
history
src/Main.java
patch
|
blob
|
history
diff --git
a/src/Geom.java
b/src/Geom.java
index
a9f9bc2
..
080690e
100644
(file)
--- a/
src/Geom.java
+++ b/
src/Geom.java
@@
-196,6
+196,12
@@
public class Geom implements Iterable<Geom.T> {
E next; // next half-edge
E pair; // partner half-edge
E next; // next half-edge
E pair; // partner half-edge
+ public void bind(E e) { bind(e, new M()); }
+ public void bind(E e, M m) {
+ p1.bind(e.p2);
+ p2.bind(e.p1);
+ }
+
private void sync() {
this.prev.next = this;
this.next.prev = this;
private void sync() {
this.prev.next = this;
this.next.prev = this;
@@
-282,10
+288,6
@@
public class Geom implements Iterable<Geom.T> {
public final E e1;
public final int color;
public final E e1;
public final int color;
- public void bind(T t2, int rot) {
- // FIXME
- }
-
T(E e1) {
this.e1 = e1;
E e2 = e1.next;
T(E e1) {
this.e1 = e1;
E e2 = e1.next;
diff --git
a/src/Main.java
b/src/Main.java
index
8a6cde6
..
d8e2658
100644
(file)
--- a/
src/Main.java
+++ b/
src/Main.java
@@
-18,7
+18,6
@@
public class Main implements GLEventListener {
public Main(StlFile stlf) {
public Main(StlFile stlf) {
-
Geom.P ltf = geom.newP(-0.2, 0.1, 0.1);
Geom.P mtf = geom.newP( 0.0, 0.1, 0.1);
Geom.P rtf = geom.newP( 0.2, 0.1, 0.1);
Geom.P ltf = geom.newP(-0.2, 0.1, 0.1);
Geom.P mtf = geom.newP( 0.0, 0.1, 0.1);
Geom.P rtf = geom.newP( 0.2, 0.1, 0.1);
@@
-97,16
+96,25
@@
public class Main implements GLEventListener {
if ((t1.p1().plus(v).minus(t2.p1()).mag() < Geom.EPSILON) &&
(t1.p2().plus(v).minus(t2.p3()).mag() < Geom.EPSILON) &&
if ((t1.p1().plus(v).minus(t2.p1()).mag() < Geom.EPSILON) &&
(t1.p2().plus(v).minus(t2.p3()).mag() < Geom.EPSILON) &&
- (t1.p3().plus(v).minus(t2.p2()).mag() < Geom.EPSILON))
- t1.bind(t2, 0);
+ (t1.p3().plus(v).minus(t2.p2()).mag() < Geom.EPSILON)) {
+ t1.e1().bind(t2.e3());
+ t1.e2().bind(t2.e2());
+ t1.e3().bind(t2.e1());
+ }
if ((t1.p2().plus(v).minus(t2.p1()).mag() < Geom.EPSILON) &&
(t1.p3().plus(v).minus(t2.p3()).mag() < Geom.EPSILON) &&
if ((t1.p2().plus(v).minus(t2.p1()).mag() < Geom.EPSILON) &&
(t1.p3().plus(v).minus(t2.p3()).mag() < Geom.EPSILON) &&
- (t1.p1().plus(v).minus(t2.p2()).mag() < Geom.EPSILON))
- t1.bind(t2, 1);
+ (t1.p1().plus(v).minus(t2.p2()).mag() < Geom.EPSILON)) {
+ t1.e2().bind(t2.e3());
+ t1.e3().bind(t2.e2());
+ t1.e1().bind(t2.e1());
+ }
if ((t1.p3().plus(v).minus(t2.p1()).mag() < Geom.EPSILON) &&
(t1.p1().plus(v).minus(t2.p3()).mag() < Geom.EPSILON) &&
if ((t1.p3().plus(v).minus(t2.p1()).mag() < Geom.EPSILON) &&
(t1.p1().plus(v).minus(t2.p3()).mag() < Geom.EPSILON) &&
- (t1.p2().plus(v).minus(t2.p2()).mag() < Geom.EPSILON))
- t1.bind(t2, 2);
+ (t1.p2().plus(v).minus(t2.p2()).mag() < Geom.EPSILON)) {
+ t1.e3().bind(t2.e3());
+ t1.e1().bind(t2.e2());
+ t1.e2().bind(t2.e1());
+ }
}
}
}
}
}
}