/// <summary> /// Метод, выполняющий копирование выбранных фигур. /// </summary> /// <para name = "SeleckResult">Переменная, хранящая список выделенных фигур</para> /// <para name = "Figures">Переменная, хранящая ссылку на список фигур.</para> public CopyFigure(List <Figure> SeleckResult, List <Figure> Figures) { _summFigureSelect = SeleckResult.Count; _summFigureBase = Figures.Count; _selectFigure = SeleckResult.GetRange(0, SeleckResult.Count); _saveFigure = Figures.GetRange(0, Figures.Count); _figure = Figures; foreach (Figure SelectObject in _selectFigure) { Figure obj = SelectObject.CloneFigure(); PointF[] updatePoints = obj.Path.PathData.Points; byte[] updateTypes = obj.Path.PathData.Types; for (int i = 0; i < obj.Path.PointCount; i++) { updatePoints[i].X += 20; updatePoints[i].Y += 20; } obj.Path.Reset(); obj.Path = new GraphicsPath(updatePoints, updateTypes); _figure.Add(obj); _figure[_figure.Count - 1].IdFigure = _figure.Count - 1; } _saveResult = _figure.GetRange(0, _figure.Count); _operatorValue = "Replication selected figures"; }