-package org.simantics.g3d.shape;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import javax.vecmath.Vector3d;\r
-\r
-public class Box {\r
- \r
- Vector3d min;\r
- Vector3d max;\r
- \r
- public Vector3d getMin() {\r
- return min;\r
- }\r
- public Vector3d getMax() {\r
- return max;\r
- }\r
- \r
- public Box(Vector3d min, Vector3d max) {\r
- this.max = max;\r
- this.min = min;\r
- }\r
- \r
- public Box(double minx, double miny, double minz, double maxx, double maxy, double maxz) {\r
- min = new Vector3d(minx, miny, minz);\r
- max = new Vector3d(maxx, maxy, maxz);\r
- }\r
- \r
- public Box(double min[], double max[]) {\r
- this.min = new Vector3d(min);\r
- this.max = new Vector3d(max);\r
- }\r
- \r
- public Mesh createMesh() {\r
- List<Vector3d> vertices = new ArrayList<Vector3d>();\r
- vertices.add(new Vector3d(min.x, min.y, min.z));\r
- vertices.add(new Vector3d(min.x, min.y, max.z));\r
- vertices.add(new Vector3d(min.x, max.y, min.z));\r
- vertices.add(new Vector3d(min.x, max.y, max.z));\r
- vertices.add(new Vector3d(max.x, min.y, min.z));\r
- vertices.add(new Vector3d(max.x, min.y, max.z));\r
- vertices.add(new Vector3d(max.x, max.y, min.z));\r
- vertices.add(new Vector3d(max.x, max.y, max.z));\r
- List<Integer> indices = new ArrayList<Integer>();\r
- indices.add(0);\r
- indices.add(2);\r
- indices.add(1);\r
- \r
- indices.add(1);\r
- indices.add(2);\r
- indices.add(3);\r
- \r
- indices.add(2);\r
- indices.add(6);\r
- indices.add(3);\r
- \r
- indices.add(3);\r
- indices.add(6);\r
- indices.add(7);\r
- \r
- indices.add(5);\r
- indices.add(1);\r
- indices.add(7);\r
- \r
- indices.add(1);\r
- indices.add(3);\r
- indices.add(7);\r
- \r
- indices.add(4);\r
- indices.add(5);\r
- indices.add(6);\r
- \r
- indices.add(5);\r
- indices.add(7);\r
- indices.add(6);\r
- \r
- indices.add(0);\r
- indices.add(4);\r
- indices.add(2);\r
- \r
- indices.add(2);\r
- indices.add(4);\r
- indices.add(6);\r
- \r
- indices.add(0);\r
- indices.add(1);\r
- indices.add(4);\r
- \r
- indices.add(5);\r
- indices.add(4);\r
- indices.add(1);\r
- return new Mesh(vertices, indices);\r
- }\r
-\r
-}\r
+package org.simantics.g3d.shape;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.vecmath.Vector3d;
+
+public class Box {
+
+ Vector3d min;
+ Vector3d max;
+
+ public Vector3d getMin() {
+ return min;
+ }
+ public Vector3d getMax() {
+ return max;
+ }
+
+ public Box(Vector3d min, Vector3d max) {
+ this.max = max;
+ this.min = min;
+ }
+
+ public Box(double minx, double miny, double minz, double maxx, double maxy, double maxz) {
+ min = new Vector3d(minx, miny, minz);
+ max = new Vector3d(maxx, maxy, maxz);
+ }
+
+ public Box(double min[], double max[]) {
+ this.min = new Vector3d(min);
+ this.max = new Vector3d(max);
+ }
+
+ public Mesh createMesh() {
+ List<Vector3d> vertices = new ArrayList<Vector3d>();
+ vertices.add(new Vector3d(min.x, min.y, min.z));
+ vertices.add(new Vector3d(min.x, min.y, max.z));
+ vertices.add(new Vector3d(min.x, max.y, min.z));
+ vertices.add(new Vector3d(min.x, max.y, max.z));
+ vertices.add(new Vector3d(max.x, min.y, min.z));
+ vertices.add(new Vector3d(max.x, min.y, max.z));
+ vertices.add(new Vector3d(max.x, max.y, min.z));
+ vertices.add(new Vector3d(max.x, max.y, max.z));
+ List<Integer> indices = new ArrayList<Integer>();
+ indices.add(0);
+ indices.add(2);
+ indices.add(1);
+
+ indices.add(1);
+ indices.add(2);
+ indices.add(3);
+
+ indices.add(2);
+ indices.add(6);
+ indices.add(3);
+
+ indices.add(3);
+ indices.add(6);
+ indices.add(7);
+
+ indices.add(5);
+ indices.add(1);
+ indices.add(7);
+
+ indices.add(1);
+ indices.add(3);
+ indices.add(7);
+
+ indices.add(4);
+ indices.add(5);
+ indices.add(6);
+
+ indices.add(5);
+ indices.add(7);
+ indices.add(6);
+
+ indices.add(0);
+ indices.add(4);
+ indices.add(2);
+
+ indices.add(2);
+ indices.add(4);
+ indices.add(6);
+
+ indices.add(0);
+ indices.add(1);
+ indices.add(4);
+
+ indices.add(5);
+ indices.add(4);
+ indices.add(1);
+ return Mesh.create(vertices, indices);
+ }
+
+}