Changed license to Creative Commons Zero (CC0).
[sixth-3d.git] / src / main / java / eu / svjatoslav / sixth / e3d / renderer / raster / shapes / composite / wireframe / WireframeBox.java
1 /*
2  * Sixth 3D engine. Author: Svjatoslav Agejenko.
3  * This project is released under Creative Commons Zero (CC0) license.
4  *
5 *
6  */
7
8 package eu.svjatoslav.sixth.e3d.renderer.raster.shapes.composite.wireframe;
9
10 import eu.svjatoslav.sixth.e3d.geometry.Box;
11 import eu.svjatoslav.sixth.e3d.geometry.Point3D;
12 import eu.svjatoslav.sixth.e3d.renderer.raster.shapes.basic.line.LineAppearance;
13 import eu.svjatoslav.sixth.e3d.renderer.raster.shapes.composite.base.AbstractCompositeShape;
14
15 public class WireframeBox extends AbstractCompositeShape {
16
17     public WireframeBox(final Box box,
18                         final LineAppearance appearance) {
19
20         this(box.p1, box.p2, appearance);
21     }
22
23     public WireframeBox(final Point3D p1, final Point3D p2,
24                         final LineAppearance appearance) {
25         super();
26
27         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p1.z), new Point3D(
28                 p2.x, p1.y, p1.z)));
29         addShape(appearance.getLine(new Point3D(p1.x, p2.y, p1.z), new Point3D(
30                 p2.x, p2.y, p1.z)));
31         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p1.z), new Point3D(
32                 p1.x, p2.y, p1.z)));
33         addShape(appearance.getLine(new Point3D(p2.x, p1.y, p1.z), new Point3D(
34                 p2.x, p2.y, p1.z)));
35
36         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p2.z), new Point3D(
37                 p2.x, p1.y, p2.z)));
38         addShape(appearance.getLine(new Point3D(p1.x, p2.y, p2.z), new Point3D(
39                 p2.x, p2.y, p2.z)));
40         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p2.z), new Point3D(
41                 p1.x, p2.y, p2.z)));
42         addShape(appearance.getLine(new Point3D(p2.x, p1.y, p2.z), new Point3D(
43                 p2.x, p2.y, p2.z)));
44
45         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p1.z), new Point3D(
46                 p1.x, p1.y, p2.z)));
47         addShape(appearance.getLine(new Point3D(p1.x, p2.y, p1.z), new Point3D(
48                 p1.x, p2.y, p2.z)));
49         addShape(appearance.getLine(new Point3D(p2.x, p1.y, p1.z), new Point3D(
50                 p2.x, p1.y, p2.z)));
51         addShape(appearance.getLine(new Point3D(p2.x, p2.y, p1.z), new Point3D(
52                 p2.x, p2.y, p2.z)));
53     }
54
55 }