/// <summary> /// /// </summary> /// <param name="gfx"></param> /// <param name="rectangle"></param> /// <param name="dx"></param> /// <param name="dy"></param> /// <param name="db"></param> /// <param name="r"></param> public void Draw(object gfx, Test2d.XRectangle rectangle, double dx, double dy, ImmutableArray <Test2d.ShapeProperty> db, Test2d.Record r) { var _gfx = gfx as XGraphics; var rect = Test2d.Rect2.Create( rectangle.TopLeft, rectangle.BottomRight, dx, dy); if (rectangle.IsStroked && rectangle.IsFilled) { _gfx.DrawRectangle( ToXPen(rectangle.Style, _scaleToPage), ToXSolidBrush(rectangle.Style.Fill), _scaleToPage(rect.X), _scaleToPage(rect.Y), _scaleToPage(rect.Width), _scaleToPage(rect.Height)); } else if (rectangle.IsStroked && !rectangle.IsFilled) { _gfx.DrawRectangle( ToXPen(rectangle.Style, _scaleToPage), _scaleToPage(rect.X), _scaleToPage(rect.Y), _scaleToPage(rect.Width), _scaleToPage(rect.Height)); } else if (!rectangle.IsStroked && rectangle.IsFilled) { _gfx.DrawRectangle( ToXSolidBrush(rectangle.Style.Fill), _scaleToPage(rect.X), _scaleToPage(rect.Y), _scaleToPage(rect.Width), _scaleToPage(rect.Height)); } if (rectangle.IsGrid && rectangle.IsStroked) { DrawGridInternal( _gfx, ToXPen(rectangle.Style, _scaleToPage), ref rect, rectangle.OffsetX, rectangle.OffsetY, rectangle.CellWidth, rectangle.CellHeight, true); } }
/// <summary> /// /// </summary> /// <param name="doc"></param> /// <param name="rectangle"></param> /// <param name="dx"></param> /// <param name="dy"></param> /// <param name="db"></param> /// <param name="r"></param> public void Draw(object doc, Test2d.XRectangle rectangle, double dx, double dy, ImmutableArray <Test2d.ShapeProperty> db, Test2d.Record r) { if (!rectangle.IsStroked && !rectangle.IsFilled && !rectangle.IsGrid) { return; } var _doc = doc as DxfDocument; var style = rectangle.Style; var rect = Test2d.Rect2.Create(rectangle.TopLeft, rectangle.BottomRight, dx, dy); DrawRectangleInternal(_doc, _currentLayer, rectangle.IsFilled, rectangle.IsStroked, style, ref rect); if (rectangle.IsGrid) { DrawGridInternal( _doc, _currentLayer, style, rectangle.OffsetX, rectangle.OffsetY, rectangle.CellWidth, rectangle.CellHeight, ref rect); } }