Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv23336/src/net/sourceforge/bprocessor/model
Modified Files:
Command.java
Log Message:
edge menu added
Index: Command.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Command.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** Command.java 19 Oct 2007 12:11:34 -0000 1.5
--- Command.java 20 Oct 2007 15:20:49 -0000 1.6
***************
*** 23,29 ****
public Command() {
parameters = new ParameterBlock();
- parameters.add(new Attribute("width", 1.0));
- parameters.add(new Attribute("height", 1.0));
- parameters.add(new Attribute("depth", 1.0));
}
--- 23,26 ----
***************
*** 42,46 ****
/** {@inheritDoc} */
public String getGeneralName() {
! return "Create Cube";
}
--- 39,43 ----
/** {@inheritDoc} */
public String getGeneralName() {
! return "Command";
}
***************
*** 49,53 ****
}
! private List list(Object ...objects) {
List result = new LinkedList();
for (Object object : objects) {
--- 46,50 ----
}
! protected List list(Object ...objects) {
List result = new LinkedList();
for (Object object : objects) {
***************
*** 61,90 ****
*/
public void evaluate() {
- double w = parameters.getDouble("width");
- double h = parameters.getDouble("height");
- double d = parameters.getDouble("depth");
- double x = -w / 2;
- double y = -h / 2;
- double z = -d / 2;
- Vertex v0 = new Vertex(x, y, z);
- Vertex v1 = new Vertex(x + w, y, z);
- Vertex v2 = new Vertex(x + w, y + h, z);
- Vertex v3 = new Vertex(x, y + h, z);
-
- Edge e0 = new Edge(v0, v1);
- Edge e1 = new Edge(v1, v2);
- Edge e2 = new Edge(v2, v3);
- Edge e3 = new Edge(v3, v0);
-
- Surface s0 = new Surface(list(e0, e1, e2, e3));
- Collection<Surface> sides = new LinkedList();
- Surface top = s0.extrusion(d, sides);
- Space world = Project.getInstance().world();
- world.insert(s0);
- for (Surface current : sides) {
- world.insert(current);
- }
- world.insert(top);
- Project.getInstance().changed(world);
}
--- 58,61 ----
***************
*** 95,97 ****
--- 66,140 ----
}
+
+ /**
+ *
+ *
+ */
+ public static class Split extends Command {
+ /**
+ * Edge to split
+ * @param edge Edge to split
+ */
+ public Split(Edge edge) {
+ parameters.put(new Attribute("edge", edge));
+ parameters.put("n", 2);
+ }
+ /**
+ * {@inheritDoc}
+ */
+ public String getGeneralName() {
+ return "Split Edge";
+ }
+ }
+
+ /**
+ *
+ *
+ */
+ public static class Cube extends Command {
+ /**
+ *
+ */
+ public Cube() {
+ parameters.add(new Attribute("width", 1.0));
+ parameters.add(new Attribute("height", 1.0));
+ parameters.add(new Attribute("depth", 1.0));
+ }
+ /** {@inheritDoc} */
+ public String getGeneralName() {
+ return "Create Cube";
+ }
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void evaluate() {
+ double w = parameters.getDouble("width");
+ double h = parameters.getDouble("height");
+ double d = parameters.getDouble("depth");
+ double x = -w / 2;
+ double y = -h / 2;
+ double z = -d / 2;
+ Vertex v0 = new Vertex(x, y, z);
+ Vertex v1 = new Vertex(x + w, y, z);
+ Vertex v2 = new Vertex(x + w, y + h, z);
+ Vertex v3 = new Vertex(x, y + h, z);
+
+ Edge e0 = new Edge(v0, v1);
+ Edge e1 = new Edge(v1, v2);
+ Edge e2 = new Edge(v2, v3);
+ Edge e3 = new Edge(v3, v0);
+
+ Surface s0 = new Surface(list(e0, e1, e2, e3));
+ Collection<Surface> sides = new LinkedList();
+ Surface top = s0.extrusion(d, sides);
+ Space world = Project.getInstance().world();
+ world.insert(s0);
+ for (Surface current : sides) {
+ world.insert(current);
+ }
+ world.insert(top);
+ Project.getInstance().changed(world);
+ }
+ }
}
|