public void Should_Build_Triangle(int vertex1x, int vertex1y, int vertex2x, int vertex2y, int vertex3x, int vertex3y)
        {
            var sut = TriangleFactory.BuildTriangle(
                new Vertex(vertex1x, vertex1y),
                new Vertex(vertex2x, vertex2y),
                new Vertex(vertex3x, vertex3y)
                );

            Assert.That(sut.Vertex1.X, Is.EqualTo(vertex1x));
            Assert.That(sut.Vertex1.Y, Is.EqualTo(vertex1y));
            Assert.That(sut.Vertex2.X, Is.EqualTo(vertex2x));
            Assert.That(sut.Vertex2.Y, Is.EqualTo(vertex2y));
            Assert.That(sut.Vertex3.X, Is.EqualTo(vertex3x));
            Assert.That(sut.Vertex3.Y, Is.EqualTo(vertex3y));
        }
        /// <summary>
        /// Builds a triangle image based on the specified height and width
        /// </summary>
        private void BuildImage()
        {
            for (var row = 0; row < _height; row++)
            {
                for (var col = 0; col < _width; col++)
                {
                    var cellChar      = Convert.ToChar(row + 65).ToString();
                    var lowerVertices = VerticesFromCell(row, col, false);
                    var upperVertices = VerticesFromCell(row, col, true);

                    _sectors.Add(new TriangleImageSector
                    {
                        Lower  = new NamedTriangle(TriangleFactory.BuildTriangle(lowerVertices), $"{cellChar}{(col * 2 + 1)}"),
                        Upper  = new NamedTriangle(TriangleFactory.BuildTriangle(upperVertices), $"{cellChar}{(col + 1) * 2}"),
                        Row    = row,
                        Column = col
                    });
                }
            }
        }