Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Изменение формы многоугольника





Один из наиболее простых и часто используемых методов изменения формы многоугольника, в частности изменение положения одной из его вершин заключается в следующем:

Подготовительная фаза.

q Определение факта попадания курсором в вершину выбранного многоугольника. Для этого следует предусмотреть в классе формы приложения наличие переменной, которая соответствует порядковому номера выбранного для корректировки многоугольника в их общем списке (или ссылку на активный многоугольник) и порядковый номер (или индекс) вершины в списке вершин выбранного многоугольника (или ссылки на объект этой вершины).

Фаза корректировки положения вершины.

q Определить требуемое смещение корректируемой вершины относительно своего старого положения. Для того, чтобы выбранная вершина перемещалась вслед за курсором, то в качестве такого смещения целесообразно принять соответствующее смещение курсора от своего прежнего положения.

q Изменить координаты перемещаемой вершины и, в зависимости от направления перемещения, перерисовать область, которую занимали раньше и занимают в настоящий момент грани многоугольника, сопряженные с перемещаемой вершиной. В результате это будет выглядеть как растяжение или сжатие сторон (граней) фигуры, сопряжённых с перемещаемой вершиной объекта. По сути дела, такой подход представляет собой модификацию способа перемещения фигуры, рассмотренного в предыдущем разделе 4.2.

Заключительная фаза.

q Установка индекса выбранной фигуры и индекса выбранной вершины в значения, не соответствующие реальным значениям (например, -1) и говорящие о том, что не выбрано ни одной фигуры и ни одной вершины для корректировки ее положения. При использовании указателей на активную фигуру и ее корректируемую вершину в качестве таких значений следует использовать значение null.

В результате создаётся эффект плавного изменения (вслед за курсором) положения корректируемой вершины многоугольника при одновременном и соответствующем изменении размеров и расположения смежных с ним сторон.

Примечание. При реализации рассмотренных выше методик редактирования положения и формы геометрических фигур, следует определить реализацию функций отклика видимой компоненты, расположенной на форме окна приложения(например, PaintBox), на события, поступающие от манипулятора типа "мыши", таких как: OnMouseDown, OnMouseUp и OnMouseMove.

Подготовительную фазу следует реализовать с помощью реакции на событие OnMouseDown, фазу редактирования - OnMouseMove и заключительную фазу - с помощью OnMouseUp.

Date: 2015-07-24; view: 388; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию