boolean showHelpText=false; void keys() { if (key==' ') {showHelpText=!showHelpText;}; if (key=='a') {threshold=C.average();}; if (key=='h') {resetView(); }; if (key=='m') C.makeMesh(M); if (key=='c') {pickS=true;}; if (key=='v') {printview=true; }; if (key=='i') {String S="mesh"+"-####.tif"; saveFrame(S);}; if (key=='n') {S.next();}; if (key=='o') {S.opposite(); }; if (key=='p') {S.previous();}; if (key=='r') {showRefined=!showRefined; if (showRefined) {M.makeIsosurface(threshold,S); S.init(); for (int i=0; i<4; i++) {S.splitEdges(); S.bulge(); S.splitTriangles(); S.init(); }; }; }; if (key=='s') { S.markBorderVertices(); S.computeLaplaceVectors(); S.tuck(0.6); }; if (key=='t') {S.turn();}; if (key=='f') {S.fit(C); for (int i=0; i<3; i++) {S.markBorderVertices(); S.computeLaplaceVectors(); S.tuck(0.5);}; }; } pt Mouse = new pt(0,0,0); // current mouse position float xr, yr = 0; // mouse coordinates relative to center of window int px=0, py=0; // coordinats of mouse when it was last pressed