Formatting update
[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 package eu.svjatoslav.sixth.e3d.renderer.raster.shapes.composite.wireframe;
6
7 import eu.svjatoslav.sixth.e3d.geometry.Box;
8 import eu.svjatoslav.sixth.e3d.geometry.Point3D;
9 import eu.svjatoslav.sixth.e3d.renderer.raster.shapes.basic.line.LineAppearance;
10 import eu.svjatoslav.sixth.e3d.renderer.raster.shapes.composite.base.AbstractCompositeShape;
11
12 public class WireframeBox extends AbstractCompositeShape {
13
14     public WireframeBox(final Box box,
15                         final LineAppearance appearance) {
16
17         this(box.p1, box.p2, appearance);
18     }
19
20     public WireframeBox(final Point3D p1, final Point3D p2,
21                         final LineAppearance appearance) {
22         super();
23
24         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p1.z), new Point3D(
25                 p2.x, p1.y, p1.z)));
26         addShape(appearance.getLine(new Point3D(p1.x, p2.y, p1.z), new Point3D(
27                 p2.x, p2.y, p1.z)));
28         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p1.z), new Point3D(
29                 p1.x, p2.y, p1.z)));
30         addShape(appearance.getLine(new Point3D(p2.x, p1.y, p1.z), new Point3D(
31                 p2.x, p2.y, p1.z)));
32
33         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p2.z), new Point3D(
34                 p2.x, p1.y, p2.z)));
35         addShape(appearance.getLine(new Point3D(p1.x, p2.y, p2.z), new Point3D(
36                 p2.x, p2.y, p2.z)));
37         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p2.z), new Point3D(
38                 p1.x, p2.y, p2.z)));
39         addShape(appearance.getLine(new Point3D(p2.x, p1.y, p2.z), new Point3D(
40                 p2.x, p2.y, p2.z)));
41
42         addShape(appearance.getLine(new Point3D(p1.x, p1.y, p1.z), new Point3D(
43                 p1.x, p1.y, p2.z)));
44         addShape(appearance.getLine(new Point3D(p1.x, p2.y, p1.z), new Point3D(
45                 p1.x, p2.y, p2.z)));
46         addShape(appearance.getLine(new Point3D(p2.x, p1.y, p1.z), new Point3D(
47                 p2.x, p1.y, p2.z)));
48         addShape(appearance.getLine(new Point3D(p2.x, p2.y, p1.z), new Point3D(
49                 p2.x, p2.y, p2.z)));
50     }
51
52 }