public void CanCreateObjectAdapterForModernGraphicRendererAndDrawLineWithColor() { var writer = new StringWriter(); var renderer = new ModernGraphicsRenderer(writer); var adapter = new MGRendererObjectAdapter(renderer); var startX = 1; var startY = 1; var endX = 10; var endY = 20; var testColor = Color.Coral; adapter.Renderer.BeginDraw(); adapter.SetColor((uint)testColor.ToArgb()); adapter.MoveTo(startX, startY); adapter.LineTo(endX, endY); adapter.Renderer.EndDraw(); var testString = new StringWriter(); testString.WriteLine("<draw>"); testString.WriteLine($"<line fromX={startX} fromY={startY} toX={endX} toY={endY}>"); testString.WriteLine($"<color r={testColor.R} g={testColor.G} b={testColor.B} a={testColor.A} />"); testString.WriteLine($"</line>"); testString.WriteLine("</draw>"); Assert.AreEqual(testString.ToString(), writer.ToString()); }
public void SetColor_And_LineTo_WithParameters_ShouldDrawTwoLines() { var sw = new StringWriter(); var point1 = new Point(5, 10); var point2 = new Point(15, 10); var renderer = new ModernGraphicsRenderer(sw); var adapter = new ObjectAdapter(renderer); renderer.BeginDraw(); adapter.SetColor(0x00FF00); adapter.MoveTo(point1.X, point1.Y); adapter.LineTo(point2.X, point2.Y); adapter.LineTo(point1.X, point1.Y); renderer.EndDraw(); var expected = new StringWriter(); expected.WriteLine("<draw>"); expected.WriteLine($" <line fromX={point1.X} fromY={point1.Y} toX={point2.X} toY={point2.Y}>"); expected.WriteLine(" <color r=0 g=1 b=0 a=1/>"); expected.WriteLine(" </line>"); expected.WriteLine($" <line fromX={point2.X} fromY={point2.Y} toX={point1.X} toY={point1.Y}>"); expected.WriteLine(" <color r=0 g=1 b=0 a=1/>"); expected.WriteLine(" </line>"); expected.WriteLine("</draw>"); Assert.AreEqual(expected.ToString(), sw.ToString()); }
public void LineToWithoutBeginDrawTest() { StringWriter stringWriter = new StringWriter(); var renderer = new ModernGraphicsRenderer(stringWriter); var adapter = new MGRendererAdapter(renderer); Assert.ThrowsException <Exception>(() => adapter.LineTo(0, 0)); }
private static void PaintPictureOnModernGraphicsRendererWithObjectAdapter() { var renderer = new ModernGraphicsRenderer(Console.Out); var modernGrapicsObjectAdapter = new ModernGrapicsObjectAdapter(renderer); var painter = new CanvasPainter(modernGrapicsObjectAdapter); PaintPicture(painter); }
public void LineTo_WithoutBeginDraw_ShouldThrowException() { var sw = new StringWriter(); var point = new Point(5, 10); var renderer = new ModernGraphicsRenderer(sw); var adapter = new ObjectAdapter(renderer); adapter.LineTo(point.X, point.Y); }
public void CanThrowExceptionIfCallLineToWithoutBeginDrawMethod() { var writer = new StringWriter(); var renderer = new ModernGraphicsRenderer(writer); var adapter = new MGRendererObjectAdapter(renderer); var x = 10; var y = 20; Assert.ThrowsException <LogicErrorException>(() => adapter.LineTo(x, y)); }
public void MoveToTest() { StringWriter stringWriter = new StringWriter(); StringWriter resultStringWriter = new StringWriter(); var renderer = new ModernGraphicsRenderer(stringWriter); using (var adapter = new MGRendererAdapter(renderer)) { adapter.BeginDraw(); adapter.MoveTo(0, 0); } resultStringWriter.WriteLine("<draw>"); resultStringWriter.WriteLine("</draw>"); Assert.AreEqual(resultStringWriter.ToString(), stringWriter.ToString()); }
public static void PaintPictureOnMGRObjectAdapter() { ModernGraphicsRenderer renderer = new ModernGraphicsRenderer(Console.Out); ObjectAdapter objectAdapter = new ObjectAdapter(renderer); CanvasPainter painter = new CanvasPainter(objectAdapter); try { renderer.BeginDraw(); PaintPicture(painter); renderer.EndDraw(); } catch (Exception e) { Console.WriteLine(e.Message); } }
private void PaintPictureOnMGRendererObjectAdapter() { var renderer = new ModernGraphicsRenderer(Console.Out); var adapter = new MGRendererObjectAdapter(renderer); var painter = new CanvasPainter(adapter); try { adapter.Renderer.BeginDraw(); PaintPicture(painter); adapter.Renderer.EndDraw(); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
public void LineToWithDefaultColorTest() { StringWriter stringWriter = new StringWriter(); StringWriter resultStringWriter = new StringWriter(); var renderer = new ModernGraphicsRenderer(stringWriter); using (var adapter = new MGRendererAdapter(renderer)) { adapter.BeginDraw(); adapter.MoveTo(5, 5); adapter.LineTo(10, 10); } resultStringWriter.WriteLine("<draw>"); resultStringWriter.WriteLine("<line fromX=5 fromY=5 toX=10 toY=10>"); resultStringWriter.WriteLine(" <color r=\"0\" g=\"0\" b=\"0\" a=\"0\" />"); resultStringWriter.WriteLine("</line>"); resultStringWriter.WriteLine("</draw>"); Assert.AreEqual(resultStringWriter.ToString(), stringWriter.ToString()); }
public void CanCreateObjectAdapterForModernGraphicRendererAndDrawLineFromStartPosition() { var writer = new StringWriter(); var renderer = new ModernGraphicsRenderer(writer); var adapter = new MGRendererObjectAdapter(renderer); var x = 10; var y = 20; adapter.Renderer.BeginDraw(); adapter.LineTo(x, y); adapter.Renderer.EndDraw(); var testString = new StringWriter(); testString.WriteLine("<draw>"); testString.WriteLine($"<line fromX={0} fromY={0} toX={x} toY={y}/>"); testString.WriteLine("</draw>"); Assert.AreEqual(testString.ToString(), writer.ToString()); }
public void LineTo_WithParameters_WithoutSetColor_ShouldDrawLineFromStartPoint() { var sw = new StringWriter(); var point = new Point(5, 10); var renderer = new ModernGraphicsRenderer(sw); var adapter = new ObjectAdapter(renderer); renderer.BeginDraw(); adapter.LineTo(point.X, point.Y); renderer.EndDraw(); var expected = new StringWriter(); expected.WriteLine("<draw>"); expected.WriteLine($" <line fromX=0 fromY=0 toX={point.X} toY={point.Y}>"); expected.WriteLine(" <color r=0 g=0 b=0 a=1/>"); expected.WriteLine(" </line>"); expected.WriteLine("</draw>"); Assert.AreEqual(expected.ToString(), sw.ToString()); }
public void CanCreateObjectAdapterForModernGraphicRendererAndDrawLine() { var writer = new StringWriter(); var renderer = new ModernGraphicsRenderer(writer); var adapter = new MGRendererObjectAdapter(renderer); var startX = 1; var startY = 1; var endX = 10; var endY = 20; adapter.Renderer.BeginDraw(); adapter.MoveTo(startX, startY); adapter.LineTo(endX, endY); adapter.Renderer.EndDraw(); var testString = new StringWriter(); testString.WriteLine("<draw>"); testString.WriteLine($"<line fromX={startX} fromY={startY} toX={endX} toY={endY}/>"); testString.WriteLine("</draw>"); Assert.AreEqual(testString.ToString(), writer.ToString()); }
public static void PaintPictureOnModernGraphicsRenderer(bool useClassAdapter = false) { ModernGraphicsRenderer renderer = new ModernGraphicsRenderer(Console.Out); if (useClassAdapter) { using (var adapter = new MGREndererClassAdapter(Console.Out)) { CanvasPainter painter = new CanvasPainter(adapter); adapter.BeginDraw(); PaintPicture(painter); } } else { using (var adapter = new MGRendererAdapter(renderer)) { CanvasPainter painter = new CanvasPainter(adapter); adapter.BeginDraw(); PaintPicture(painter); } } }
public MGRendererAdapter(ModernGraphicsRenderer renderer) { _renderer = renderer; }
public ModernGrapicsObjectAdapter(ModernGraphicsRenderer modernGraphicsRenderer) { _modernGraphicsRenderer = modernGraphicsRenderer; }
public MGRendererObjectAdapter(ModernGraphicsRenderer renderer) { _startPoint = new Point(0, 0); Renderer = renderer; }
public MGRendererObjectAdapter(ModernGraphicsRenderer renderer) { Renderer = renderer; }
public ObjectAdapter(ModernGraphicsRenderer renderer) { _renderer = renderer; }