public void Draw(Graphics G, float width, FigureDrawerSettings settings) { G.DrawPolygon(new Pen(PenColor, width), Adapter.GetPoints()); if (settings.DrawCenterNeeded || settings.DrawVerticesNeeded) { width *= 2f; float pointWidth = width * 1f; float offset = pointWidth / 2; if (settings.DrawVerticesNeeded) { foreach (var point in Adapter.GetPoints()) { DrawPoint(G, point, width, pointWidth, offset); } } if (settings.DrawCenterNeeded) { DrawPoint(G, Adapter.GetCenter(), width, pointWidth, offset); } } }
public PlaneSettings(IEnumerable <Type> originFigureTypes, FigureDrawerSettings drawerSettings) { Types = new Type[originFigureTypes.Count()]; for (int i = 0; i < originFigureTypes.Count(); i++) { Types[i] = originFigureTypes.ElementAt(i); } TypesToDraw = new HashSet <Type>(originFigureTypes); DrawerSettings = drawerSettings; }