public void Render_DrawSmoothCurve_ForVertexBasedResult() { ShellSecState state = Utilities.MakeState_VertexBased(); ShellSec_RendererInfo info = new ShellSec_RendererInfo_Displacement(); info.DisplayResults[ShellSecResult.X] = true; info.ScaleResults[ShellSecResult.X] = 1.0; info.DisplaySmooth = true; info.BaseMeshObject = ShellSec_BaseObj.Vertex; var expectedCurves = new List <PolyLine3>(); expectedCurves.Add(new PolyLine3(new Point3(0, 0, 1), new Point3(0.5, 0, 2), new Point3(1, 0, 3))); var sut = new ShellSec_MeshRenderer(); sut.Render(state, info); List <List <PolyLine3> > output = sut.RenderedCurves; var outputCurves = output.SelectMany(poly => poly); Assert.That(outputCurves, Is.EqualTo(expectedCurves)); }
public void Render_DrawSmoothNumber_ForVertexBased() { ShellSecState state = Utilities.MakeState_VertexBased(); ShellSec_RendererInfo info = new ShellSec_RendererInfo_Displacement(); info.DisplayResults[ShellSecResult.X] = true; info.ScaleResults[ShellSecResult.X] = 1.0; info.DisplaySmooth = true; info.TextFormat = "{0:f}"; var mock = Substitute.For <IDrawViewBehaviour>(); var expectedPosition = new Point3[] { new Point3(0, 0, 1), new Point3(0.5, 0, 2), new Point3(1, 0, 3) }; var expectedText = new string[] { "1.00", "2.00", "3.00" }; var sut = new ShellSec_NumberRenderer(mock); sut.Render(state, info); Assert.That(sut.Positions, Is.EqualTo(expectedPosition)); Assert.That(sut.Texts, Is.EqualTo(expectedText)); mock.Received().DrawView(); }
public void Render_DrawSmoothMesh_ForVertexBasedResult() { ShellSecState state = Utilities.MakeState_VertexBased(); ShellSec_RendererInfo info = new ShellSec_RendererInfo_Displacement(); info.DisplayResults = new Dictionary <ShellSecResult, bool> { { ShellSecResult.X, true } }; info.ScaleResults = new Dictionary <ShellSecResult, double> { { ShellSecResult.X, 1.0 } }; info.DisplaySmooth = true; info.DisplayMesh = true; info.BaseMeshObject = ShellSec_BaseObj.Vertex; var expectedVertices = new Point3[] { new Point3(0, 0, 1), new Point3(0, 0, 0), new Point3(0.5, 0, 2), new Point3(0.5, 0, 0), new Point3(1, 0, 3), new Point3(1, 0, 0), }; var expectedFaces = new List <Face3>() { new Face3(0, 1, 3, 2), new Face3(2, 3, 5, 4) }; var sut = new ShellSec_MeshRenderer(); sut.Render(state, info); List <IMesh> output = sut.RenderedMeshes; Assert.AreEqual(output.Count, 1); Assert.That(output[0].Vertices.ToArray, Is.EqualTo(expectedVertices)); Assert.That(output[0].Faces, Is.EqualTo(expectedFaces)); }