diff --git a/src/shapes/triangle.cpp b/src/shapes/triangle.cpp
index 7f46643a92a4af6f222a5ca29d641f0308b3ac9b..6dc9bec92a4ac2072a3065ca53507e70a29a97aa 100644
--- a/src/shapes/triangle.cpp
+++ b/src/shapes/triangle.cpp
@@ -4,4 +4,4 @@ bool Triangle::neighbours(Triangle &other) {
     return false;
 }
 
-Triangle::Triangle(Point p1, Point p2, Point p3, int depth) : p1{p1}, p2{p2}, p3{p3}, depth{depth} {}
\ No newline at end of file
+Triangle::Triangle(Point p1, Point p2, Point p3, int depth) : points{p1,p2,p3}, depth{depth} {}
\ No newline at end of file
diff --git a/src/shapes/triangle.h b/src/shapes/triangle.h
index 1d1d2984b80342bbc5b10d6f9222812296a3a3e3..8f700c469b648b10b6945db6f4244e6cc680e59b 100644
--- a/src/shapes/triangle.h
+++ b/src/shapes/triangle.h
@@ -3,7 +3,7 @@
 
 // points specified clockwise
 struct Triangle {
-	Point p1, p2, p3;
+	Point points[3];
 	int depth;
 	bool neighbours(Triangle &other);
 	Triangle(Point p1, Point p2, Point p3, int depth);
diff --git a/src/shapes/triangle_edges.cpp b/src/shapes/triangle_edges.cpp
index c5b5614a1529515315308c167dc6d3a9079e5711..301b4204fc770d8fa95f446cc8a520a061cfbbb9 100644
--- a/src/shapes/triangle_edges.cpp
+++ b/src/shapes/triangle_edges.cpp
@@ -1,5 +1,5 @@
 #include "triangle_edges.h"
 #include "triangle.h"
 
-TriangleEdges::TriangleEdges(const Triangle &t) : e1{Edge{t.p1, t.p2}}, e2{Edge{t.p2, t.p3}}, e3{Edge{t.p3, t.p1}}{
+TriangleEdges::TriangleEdges(const Triangle &t) : e1{Edge{t.points[0], t.points[1]}}, e2{Edge{t.points[1], t.points[2]}}, e3{Edge{t.points[2], t.points[0]}}{
 }
\ No newline at end of file