# Drawing symmetric equilateral triangles

I'm rendering equilateral triangles of different sizes and I'm having trouble making them symmetric along the vertical axis. Here I have rendered two triangles. The triangle on the left (rendered correctly) has the coordinates (0.0, 0.0), (-7.0, 14.0) and (7.0, 14.0). The triangle on the right, on the other hand, has the coordinates (0.0, 0.0), (-7.0, 15.0) and (7.0, 15.0) and is not symmetric along the vertical axis.

Here are the matrices I'm using:

glm::mat4 model_matrix = glm::translate(glm::mat4(1.0f), glm::vec3(90.0f, 90.0f, 0.0f));
glm::mat4 view_matrix = glm::mat4(1.0f);
glm::mat4 projection_matrix = glm::ortho(0.0f, w * 1.0f, h * 1.0f, 0.0f);
glm::mat4 mvp_matrix = projection_matrix * view_matrix * model_matrix;


I'm aware of the diamond exit rule but I don't think that's the cause of the problem. Seems like the diamond exit rule only applies to line segments? This problem also exists when I try to make triangles symmetric in the horizontal axis. Cheers!

• Can you try adding half a pixel to their coordinates and let us know what that does? – mouseas Apr 25 '14 at 22:51
• I have tried that and it sometimes fixes the issue but not always. – Izaan Apr 25 '14 at 23:12
• Can you speak more to your application for this? Neither of the triangles you've sketched out here is equilateral. Do you perhaps mean isosceles (mathworld.wolfram.com/IsoscelesTriangle.html )? – Steven Stadnicki Apr 26 '14 at 1:06
• Sorry, the triangles were meant to be equilateral but I ended up making them isosceles while trying to make them symmetrical. The application is just me experimenting with things, I should have clarified this. – Izaan Apr 26 '14 at 11:36