[Bprocessor-commit] gl/src/net/sourceforge/bprocessor/gl/tool SpaceTool.java, 1.38, 1.39
Status: Pre-Alpha
Brought to you by:
henryml
From: Michael L. <he...@us...> - 2006-09-17 17:29:14
|
Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/tool In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv9379/src/net/sourceforge/bprocessor/gl/tool Modified Files: SpaceTool.java Log Message: Improved scripting Index: SpaceTool.java =================================================================== RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/tool/SpaceTool.java,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -d -r1.38 -r1.39 *** SpaceTool.java 14 Sep 2006 09:21:50 -0000 1.38 --- SpaceTool.java 17 Sep 2006 17:29:05 -0000 1.39 *************** *** 561,564 **** --- 561,569 ---- HashMap globals = Project.getInstance().getGlobals().environment(); + globals.put("echo", new Builtin() { + public void evaluate(Environment env, Stack stack) { + stack.push(env.get(0)); + } + }); globals.put("cos", new Builtin() { public void evaluate(Environment env, Stack stack) { *************** *** 590,593 **** --- 595,611 ---- } }); + globals.put("surface", new Builtin() { + public void evaluate(Environment env, Stack stack) { + Vertex previous = (Vertex) env.get(env.length() - 1); + List edges = new LinkedList(); + for (int i = 0; i < env.length(); i++) { + Vertex current = (Vertex) env.get(i); + edges.add(new Edge(previous, current)); + previous = current; + } + Surface result = new Surface(edges); + stack.push(result); + } + }); *************** *** 620,623 **** --- 638,645 ---- result = Geometry.insertEdge((Edge)result, true); Selection.primary().add(result); + } else if (result instanceof Surface) { + Surface surface = (Surface) result; + Geometry.insertEdges(surface.getEdges()); + glv.setLengthValue(result.toString()); } else { glv.setLengthValue(result.toString()); |