Beispiel #1
0
        public void DragThumb(Thumb thumb, Point offset)
        {
            var old = thumb.GetCenter();

            MoveOnCanvas(thumb, offset);
            MoveLines(thumb);
            var n = thumb.GetCenter();

            UpdatePolygon(old, n);
        }
Beispiel #2
0
        public void DeleteThumb(Thumb thumb)
        {
            var polygon = FindPolygon(thumb);

            if (polygon == null)
            {
                return;
            }
            var ll = polygon.List;

            if (ll.Count % 2 != 0)
            {
                //удаляем только из замкнутых полигонов т.к. незамкнутый можно еще редактировать
                return;
            }
            if (ll.Count < 7)
            {
                //не получица полигон после удаления поэтому не удаляем
                return;
            }

            //все проверки пройдены, удаление:
            RealDeleteThumb(polygon, ll, thumb);
            //удаляем с полигона
            var center = thumb.GetCenter();

            Polygon.Points.Remove(center);
        }