/// <summary> /// Метод, выполняющий действия над выделенными фигурами. /// </summary> /// <para name = "e">Переменная, хранящая координаты мыши.</para> /// <para name = "CurrentActions">Переменная, хранящая действие над выбранной фигурой.</para> /// <para name = "FiguresBuild">Переменная, хранящая список действий.</para> public void MouseMove(MouseEventArgs e, int CurrentActions) { //Считаем смещение курсора int deltaX, deltaY; deltaX = e.Location.X - _oldPoint.X; deltaY = e.Location.Y - _oldPoint.Y; foreach (ObjectFugure SelectObject in _selectedFigures) { //Масштабирование опорных точек if ((SelectObject != null) && (_supportObj != null)) { Rectangles.ScaleSelectFigure(SelectObject, _supportObj, deltaX, deltaY); } else { if (SelectObject != null) { EditObject.MoveObject(SelectObject, deltaX, deltaY); } } _oldPoint = e.Location; } }
/// <summary> /// Метод, выполняющий выделение фигур. /// </summary> /// <para name = "e">Переменная, хранящая координаты мыши.</para> /// <para name = "Rect">Переменная, хранящая зону выделения.</para> /// <para name = "Figures">Переменная, хранящая список всех фигур.</para> /// <para name = "CurrentActions">Переменная, хранящая действие над выбранной фигурой.</para> /// <para name = "FiguresBuild">Переменная, хранящая список действий.</para> public void MouseDown(MouseEventArgs e, List <ObjectFugure> Figures, int CurrentActions) { ////Запоминаем положение курсора _oldPoint = e.Location; float figurestartX, figurestartY, figureendX, figureendY; if (_selectedFigures.Count == 0) { foreach (ObjectFugure DrawObject in Figures) { figurestartX = DrawObject.FigureStart.X; figurestartY = DrawObject.FigureStart.Y; figureendX = DrawObject.FigureEnd.X; figureendY = DrawObject.FigureEnd.Y; // Получение области выделения _rectangleF = DrawObject.Path.GetBounds(); if (figurestartX == figureendX) { _rectangleF.Inflate(10, 5); } if (figurestartY == figureendY) { _rectangleF.Inflate(5, 10); } if (_rectangleF.Contains(e.Location)) { Rectangles.ScaleFigure(e, DrawObject, _selectedFigures); Rectangles.AddSupportPoint(DrawObject, Color.Red); } } } }
public void PaintFigure(PaintEventArgs e, List <PointF> Points) { Rectangles.PaintFigure(e, Points); }
public void MouseMove(List <PointF> _points, MouseEventArgs e) { Rectangles.MouseMove(_points, e); }