X-Git-Url: http://git.megacz.com/?p=anneal.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fqfat%2FInteractiveMeshViewer.java;h=068dc56c3133051636c091c6b6ccc3934a728b22;hp=d162677681ce9e3109a967d6e109d8625a843016;hb=1cfea6e5d6ca9e75578e97d1fdccf2b306af56c4;hpb=9a60e73a7339e38ca07ead4a1d4b8880eea34854 diff --git a/src/edu/berkeley/qfat/InteractiveMeshViewer.java b/src/edu/berkeley/qfat/InteractiveMeshViewer.java index d162677..068dc56 100644 --- a/src/edu/berkeley/qfat/InteractiveMeshViewer.java +++ b/src/edu/berkeley/qfat/InteractiveMeshViewer.java @@ -8,6 +8,7 @@ import javax.media.opengl.*; import javax.media.opengl.glu.*; import com.sun.opengl.util.*; import java.util.*; +import edu.berkeley.qfat.bind.*; import edu.berkeley.qfat.geom.*; import edu.berkeley.qfat.geom.Point; @@ -23,10 +24,15 @@ public class InteractiveMeshViewer extends JPanel implements KeyListener { MeshViewer mv2 = new MeshViewer(); MeshViewer mv3 = new MeshViewer(); MeshViewer mv4 = new MeshViewer(); + mv1.main = (Main)this; + mv2.main = (Main)this; + mv3.main = (Main)this; + mv4.main = (Main)this; mvs.add(mv1); mvs.add(mv2); mvs.add(mv3); mvs.add(mv4); + f.addKeyListener(this); addKeyListener(this); mv1.addKeyListener(this); mv2.addKeyListener(this); @@ -106,23 +112,28 @@ public class InteractiveMeshViewer extends JPanel implements KeyListener { //super.keyPressed(e); switch(e.getKeyCode()) { case KeyEvent.VK_SPACE: + System.err.println("hak"); synchronized(this) { tile.subdivide(); + tile.rebindPoints(); + break; } //case KeyEvent.VK_SPACE: breaks++; force = true; break; case KeyEvent.VK_UP: temp = temp * 2; break; case KeyEvent.VK_ENTER: temp = 10; break; - case KeyEvent.VK_LEFT: whichNeighbor--; break; + case KeyEvent.VK_N: whichNeighbor++; break; case KeyEvent.VK_RIGHT: whichNeighbor++; break; case KeyEvent.VK_D: dump(); break; case KeyEvent.VK_E: errorNormals = !errorNormals; break; case KeyEvent.VK_A: hillclimb = false; anneal = !anneal; break; case KeyEvent.VK_H: anneal = true; hillclimb = !hillclimb; break; - case KeyEvent.VK_N: neighbors = !neighbors; break; + //case KeyEvent.VK_N: neighbors = !neighbors; break; case KeyEvent.VK_T: tileon = !tileon; break; case KeyEvent.VK_G: goalon = !goalon; break; case KeyEvent.VK_M: tilemeshon = !tilemeshon; break; } + if (transforms!=null) + whichNeighbor = (whichNeighbor % (transforms.length+1)); } - + public Matrix[] transforms; } \ No newline at end of file