private static void AssertGeometryIsClockWise(MockGeometry geometry) { Vector3D vertex0 = geometry.GetVertexPosition(0); Vector3D vertex1 = geometry.GetVertexPosition(1); Vector3D vertex2 = geometry.GetVertexPosition(2); Assert.IsTrue(vertex0.X >= vertex1.X); Assert.IsTrue(vertex1.X <= vertex2.X); Assert.IsTrue(vertex2.X <= vertex0.X); Assert.IsTrue(vertex0.Y >= vertex1.Y); Assert.IsTrue(vertex1.Y <= vertex2.Y); Assert.IsTrue(vertex2.Y >= vertex0.Y); }
public void WindingOfVerticesShouldBeCounterClockWise() { if (!StackTraceExtensions.IsStartedFromNCrunch()) { return; //ncrunch: no coverage } MockGeometry geometry = CreateMockGeometry(); var indices = new short[] { 0, 1, 2 }; geometry.SetData(CreateVertexData(), indices); AssertVertices(geometry, indices); AssertGeometryIsCounterClockWise(geometry); }
private void AssertVertices(MockGeometry geometry, short[] indices) { Assert.AreEqual(vertex0, geometry.GetVertexPosition(indices[0])); Assert.AreEqual(vertex1, geometry.GetVertexPosition(indices[1])); Assert.AreEqual(vertex2, geometry.GetVertexPosition(indices[2])); }