Refactoring to remove unneeded complexity.
[sixth-3d.git] / src / main / java / eu / svjatoslav / sixth / e3d / renderer / raster / shapes / basic / solidpolygon / SolidPolygon.java
index 1b4bcfc..e941408 100644 (file)
@@ -8,6 +8,7 @@ import eu.svjatoslav.sixth.e3d.geometry.Point2D;
 import eu.svjatoslav.sixth.e3d.geometry.Point3D;
 import eu.svjatoslav.sixth.e3d.gui.RenderingContext;
 import eu.svjatoslav.sixth.e3d.gui.humaninput.MouseInteractionController;
+import eu.svjatoslav.sixth.e3d.math.Vertex;
 import eu.svjatoslav.sixth.e3d.renderer.raster.Color;
 import eu.svjatoslav.sixth.e3d.renderer.raster.shapes.AbstractCoordinateShape;
 
@@ -25,7 +26,11 @@ public class SolidPolygon extends AbstractCoordinateShape {
 
     public SolidPolygon(final Point3D point1, final Point3D point2,
                         final Point3D point3, final Color color) {
-        super(point1, point2, point3);
+        super(
+                new Vertex(point1),
+                new Vertex(point2),
+                new Vertex(point3)
+        );
         this.color = color;
     }
 
@@ -51,7 +56,7 @@ public class SolidPolygon extends AbstractCoordinateShape {
         final int width = x2 - x1;
 
         int offset = ((y * renderBuffer.width) + x1) * 4;
-        final byte[] offSreenBufferBytes = renderBuffer.pixels;
+        final byte[] offScreenBufferBytes = renderBuffer.pixels;
 
         final int polygonAlpha = color.a;
         final int b = color.b;
@@ -60,13 +65,13 @@ public class SolidPolygon extends AbstractCoordinateShape {
 
         if (polygonAlpha == 255)
             for (int i = 0; i < width; i++) {
-                offSreenBufferBytes[offset] = (byte) 255;
+                offScreenBufferBytes[offset] = (byte) 255;
                 offset++;
-                offSreenBufferBytes[offset] = (byte) b;
+                offScreenBufferBytes[offset] = (byte) b;
                 offset++;
-                offSreenBufferBytes[offset] = (byte) g;
+                offScreenBufferBytes[offset] = (byte) g;
                 offset++;
-                offSreenBufferBytes[offset] = (byte) r;
+                offScreenBufferBytes[offset] = (byte) r;
                 offset++;
             }
         else {
@@ -77,13 +82,13 @@ public class SolidPolygon extends AbstractCoordinateShape {
             final int redWithAlpha = r * polygonAlpha;
 
             for (int i = 0; i < width; i++) {
-                offSreenBufferBytes[offset] = (byte) 255;
+                offScreenBufferBytes[offset] = (byte) 255;
                 offset++;
-                offSreenBufferBytes[offset] = (byte) ((((offSreenBufferBytes[offset] & 0xff) * backgroundAlpha) + blueWithAlpha) / 256);
+                offScreenBufferBytes[offset] = (byte) ((((offScreenBufferBytes[offset] & 0xff) * backgroundAlpha) + blueWithAlpha) / 256);
                 offset++;
-                offSreenBufferBytes[offset] = (byte) ((((offSreenBufferBytes[offset] & 0xff) * backgroundAlpha) + greenWithAlpha) / 256);
+                offScreenBufferBytes[offset] = (byte) ((((offScreenBufferBytes[offset] & 0xff) * backgroundAlpha) + greenWithAlpha) / 256);
                 offset++;
-                offSreenBufferBytes[offset] = (byte) ((((offSreenBufferBytes[offset] & 0xff) * backgroundAlpha) + redWithAlpha) / 256);
+                offScreenBufferBytes[offset] = (byte) ((((offScreenBufferBytes[offset] & 0xff) * backgroundAlpha) + redWithAlpha) / 256);
                 offset++;
             }