public void SquareHoleTest() { var handler = new Handler(); var tessellator = new Tessellator3D <int, int>(handler); tessellator.BeginPolygon(0); tessellator.BeginContour(); tessellator.AddVertex(1, 1, 0, 0); tessellator.AddVertex(-1, 1, 0, 1); tessellator.AddVertex(-1, -1, 0, 2); tessellator.AddVertex(1, -1, 0, 3); tessellator.EndContour(); tessellator.BeginContour(); tessellator.AddVertex(.5, .5, 0, 4); tessellator.AddVertex(-.5, .5, 0, 5); tessellator.AddVertex(-.5, -.5, 0, 6); tessellator.AddVertex(.5, -.5, 0, 7); tessellator.EndContour(); tessellator.EndPolygon(); //output.WriteLine("" + handler); Assert.Equal("S{(1,1,0)(-1,1,0)(-0.5,0.5,0)(-0.5,-0.5,0)(0.5,-0.5,0)(1,-1,0)(0.5,0.5,0)(1,1,0)(-0.5,0.5,0)}" + "F{(-0.5,-0.5,0)(-1,1,0)(-1,-1,0)(1,-1,0)}T{(-0.5,0.5,0)(0.5,-0.5,0)(0.5,0.5,0)}", handler.ToString()); }
public void NoVertex() { var handler = new Handler(); var tessellator = new Tessellator3D <int, int>(handler); tessellator.BeginPolygon(0); tessellator.BeginContour(); tessellator.EndContour(); tessellator.EndPolygon(); Assert.Equal("", handler.ToString()); }
public void TwoVerticesTest() { var handler = new Handler(); var tessellator = new Tessellator3D <int, int>(handler); tessellator.BeginPolygon(0); tessellator.BeginContour(); tessellator.AddVertex(1, 1, 0, 0); tessellator.AddVertex(-1, 1, 0, 1); tessellator.EndContour(); tessellator.EndPolygon(); Assert.Equal("", handler.ToString()); }
public void SquareTest() { var handler = new Handler(); var tessellator = new Tessellator3D <int, int>(handler); tessellator.BeginPolygon(0); tessellator.BeginContour(); tessellator.AddVertex(1, 1, 0, 0); tessellator.AddVertex(-1, 1, 0, 1); tessellator.AddVertex(-1, -1, 0, 2); tessellator.AddVertex(1, -1, 0, 3); tessellator.EndContour(); tessellator.EndPolygon(); Assert.Equal("F{(1,1,0)(-1,1,0)(-1,-1,0)(1,-1,0)}", handler.ToString()); }
public void SquareTest2() { var handler = new Handler(); var tessellator = new Tessellator3D <int, int>(handler) { OutputKind = OutputKind.TrianglesOnly }; tessellator.BeginPolygon(0); tessellator.BeginContour(); tessellator.AddVertex(1, 1, 0, 0); tessellator.AddVertex(-1, 1, 0, 1); tessellator.AddVertex(-1, -1, 0, 2); tessellator.AddVertex(1, -1, 0, 3); tessellator.EndContour(); tessellator.EndPolygon(); Assert.Equal("T{(1,1,0)(-1,1,0)(-1,-1,0)(1,1,0)(-1,-1,0)(1,-1,0)}", handler.ToString()); }
public void StarBoundaryTest() { var handler = new Handler(); var tessellator = new Tessellator3D <int, int>(handler) { OutputKind = OutputKind.BoundaryOnly }; tessellator.BeginPolygon(0); tessellator.BeginContour(); tessellator.AddVertex(0, 3, 0, 0); tessellator.AddVertex(-1, 0, 0, 1); tessellator.AddVertex(1.6, 1.9, 0, 2); tessellator.AddVertex(-1.6, 1.9, 0, 3); tessellator.AddVertex(1, 0, 0, 4); tessellator.EndContour(); tessellator.EndPolygon(); Assert.Equal("L{(-0.608247422680412,1.17525773195876,0)(-1,0,0)(0,0.730769230769231,0)(1,0,0)(0.608247422680412,1.17525773195876,0)(1.6,1.9,0)(0.366666666666667,1.9,0)(0,3,0)(-0.366666666666667,1.9,0)(-1.6,1.9,0)}", handler.ToString()); }