(Не рекомендуемый) Создать перетаскиваемый, изменяемый размер многоугольника
impoly
не рекомендуется. Используйте новую Polygon
вместо этого объект. Можно также использовать новую функцию удобства создания информация только для чтения drawpolygon
. Другая опция является Polyline
объект, который позволяет вам создать открытый многоугольник или polyline форму. Для получения дополнительной информации см. раздел Вопросов совместимости.
Система координат impoly
объект инкапсулирует интерактивный многоугольник над изображением.
Можно добавить вершины и настроить размер и положение многоугольника при помощи мыши. Многоугольник также имеет контекстное меню, которое управляет аспектами его внешнего вида и поведения. Для получения дополнительной информации см. раздел Использование.
h = impoly
начинает интерактивное размещение многоугольника на текущей системе координат и возвращает impoly
объект.
h = impoly(
начинает интерактивное размещение многоугольника на объекте, заданном hparent
)hparent
.
h = impoly(___,
задает пары "имя-значение", которые управляют поведением многоугольника.Name,Value
)
Когда вы звоните impoly
с интерактивным синтаксисом, указатель изменяется на перекрестие при наведении изображения. Щелкните мышью и перетащите мышь, чтобы задать вершины многоугольника и настроить размер, форму и положение многоугольника. По умолчанию impoly
рисует прямую линию, соединяющую последнюю точку, которую вы нарисовали с первой точкой, но можно управлять этим поведением с помощью Closed
параметр.
Многоугольник также поддерживает контекстное меню, которое можно использовать для управления аспектами его внешнего вида и поведения. Варианты выбора в контекстном меню варьируются в зависимости от положения указателя мыши на краю многоугольника (или в любом месте области) или на одной из вершин. Рисунок показывает контекстное меню, когда указатель находится на многоугольник, но не на вершине.
В таблице перечислены интерактивные модели поведения, поддерживаемые impoly
.
Интерактивное поведение | Описание |
---|---|
Закрытие многоугольника. | Используйте любой из следующих механизмов:
|
Добавление новой вершины. | Наведите указатель мыши на ребро многоугольника. Нажмите и удерживайте клавишу A. Форма указателя изменяется. Нажмите левую кнопку мыши, чтобы создать новую вершину в этом положении на линии. |
Перемещение вершины. (Изменение формы многоугольника.) | Наведите указатель мыши на вершину. Указатель изменяется на круг. Щелкните и перетащите вершину в новое положение. |
Удаление вершины. | Наведите указатель мыши на вершину. Форма изменяется на окружность. Щелкните правой кнопкой мыши и выберите Delete Vertex из контекстного меню вершин. Это действие удаляет вершину и корректирует форму многоугольника, рисуя новую прямую линию между двумя вершинами, которые были соседями удаленной вершины. |
Удаление многоугольника | Переместить указатель мыши внутрь многоугольника или на одну из линий, определяющих многоугольник, а не на его вершине. Щелкните правой кнопкой мыши и выберите Delete из контекстного меню. Чтобы удалить эту опцию из контекстного меню, установите Deletable свойство false: h = impoly(); h.Deletable = false; |
Перемещение многоугольника. | Переместите указатель мыши внутрь многоугольника. Указатель изменяется на гибкую форму. Щелкните мышью и перетащите мышь, чтобы переместить многоугольник. |
Изменение цвета многоугольника | Переместите указатель мыши внутрь многоугольника. Щелкните правой кнопкой мыши и выберите Set Color из контекстного меню. |
Получение координат вершин | Переместите указатель мыши внутрь многоугольника. Щелкните правой кнопкой мыши и выберите Copy Position из контекстного меню. impoly копирует n -by-2 массив, содержащий x - и y - координаты каждой вершины в буфер обмена. n - количество заданных вершин . |
Каждый impoly
объект поддерживает несколько методов. Тип methods impoly
чтобы увидеть полный список.
addNewPositionCallback | Добавьте коллбэк с новой позицией к объекту информация только для чтения |
createMask | Создайте маску в изображении |
delete | Удалить указатель объекта |
getColor | Получите цвет, используемый для рисования объекта информация только для чтения |
getPosition | Возврат текущей позиции объекта информация только для чтения |
getPositionConstraintFcn | Возвращает указатель на функцию ограничения текущего положения |
removeNewPositionCallback | Удалите коллбэк с новой позицией из объекта информация только для чтения |
resume | (Не рекомендуемый) Возобновить выполнение командной строки MATLAB |
setClosed | Установите поведение замыкания информации только для чтения объекта |
setColor | Установите цвет, используемый для рисования объекта информация только для чтения |
setConstrainedPosition | Установите объект информация только для чтения в новое положение |
setPosition | (Не рекомендуемый) Переместить объект информация только для чтения в новое положение |
setPositionConstraintFcn | Установите функцию ограничения положения объекта информация только для чтения |
setVerticesDraggable | Установите вершинное поведение объекта информация только для чтения |
wait | (Не рекомендуемый) Блокируйте командную строку MATLAB до завершения создания информация только для чтения |
Если вы используете impoly
с помощью оси, которая содержит объект изображения и не задает функцию ограничения положения, пользователи могут перетащить многоугольник за пределы области изображения и потерять многоугольник. При использовании с осями, созданными plot
функция, пределы осей автоматически расширяются, когда многоугольник перетаскивается за пределы области осей.