[Bprocessor-commit] gl/src/net/sourceforge/bprocessor/gl/tool FinalMoveTool.java, 1.10, 1.11
Status: Pre-Alpha
Brought to you by:
henryml
|
From: Michael L. <he...@us...> - 2007-05-29 21:08:44
|
Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/tool In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv22376/src/net/sourceforge/bprocessor/gl/tool Modified Files: FinalMoveTool.java Log Message: Implemented repeat in move tool Index: FinalMoveTool.java =================================================================== RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/tool/FinalMoveTool.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** FinalMoveTool.java 29 May 2007 13:57:56 -0000 1.10 --- FinalMoveTool.java 29 May 2007 21:08:40 -0000 1.11 *************** *** 42,46 **** private boolean copy; ! private int count = 0; /** --- 42,47 ---- private boolean copy; ! private Mesh mesh; ! private Vertex direction; /** *************** *** 116,119 **** --- 117,132 ---- } } + + private void apply(int i) { + Vertex v = direction.copy(); + v.scale(i); + Mesh copy = mesh.copy(); + for (Vertex current : copy.vertices()) { + current.setX(current.getX() + v.getX()); + current.setY(current.getY() + v.getY()); + current.setZ(current.getZ() + v.getZ()); + } + Project.getInstance().getActiveSpace().insert(copy); + } /** {@inheritDoc} */ *************** *** 165,175 **** edges.addAll(Surface.edges(surfaces)); vertices.addAll(Edge.vertices(edges)); ! Mesh mesh = new Mesh(surfaces, edges, vertices); ! owner.insert(mesh); geometrics = null; } owner.simplify(); Project.getInstance().checkpoint(); cleanUp(); } } --- 178,191 ---- edges.addAll(Surface.edges(surfaces)); vertices.addAll(Edge.vertices(edges)); ! mesh = new Mesh(surfaces, edges, vertices); ! direction = last.minus(start.vertex()); ! owner.insert(mesh.copy()); geometrics = null; } owner.simplify(); Project.getInstance().checkpoint(); + start = null; cleanUp(); + moved(e); } } *************** *** 180,189 **** @Override public Object evaluate(String value) { - System.out.println("evaluate " + value); if (value.length() > 0) { char token = value.charAt(0); if (token == '*') { String expression = value.substring(1); - System.out.println("repeat + '" + expression + "'"); Stack result = evaluateString("echo " + expression); if (result.size() == 1) { --- 196,203 ---- *************** *** 191,195 **** if (top instanceof Double) { Double d = (Double) top; ! System.out.println("repeat " + d); } } --- 205,213 ---- if (top instanceof Double) { Double d = (Double) top; ! int n = d.intValue(); ! for (int i = 1; i < n - 1; i++) { ! apply(i); ! } ! Project.getInstance().checkpoint(); } } *************** *** 203,206 **** --- 221,229 ---- */ public void cleanUp() { + if (start != null) { + System.out.println("escaping..."); + current = start; + move(); + } super.cleanUp(); if (copy) { |