imline

Создайте перемещаемую, линию изменяемого размера

imline не рекомендуется. Используйте новый Line Объект ROI вместо этого. Можно также использовать функцию удобства создания ROI drawline. Для получения дополнительной информации см. Вопросы совместимости.

Описание

imline объект инкапсулирует интерактивную линию по изображению.

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

Создание

Описание

пример

h = imline начинает интерактивное размещение линии на текущей системе координат и возвращает imline объект.

h = imline(hparent) начинает интерактивное размещение линии на объекте, заданном hparent.

пример

h = imline(hparent,position) создает перемещаемую, линию изменяемого размера, с координатами, заданными position.

h = imline(hparent,x,y) создает перемещаемую, линию изменяемого размера, с x - и y - координаты конечных точек, заданных x и y.

h = imline(___,Name,Value) задает пары "имя-значение", которые управляют поведением линии.

Входные параметры

развернуть все

Обработайте к родительскому объекту, заданному как указатель. Родительский элемент обычно является объектом осей, но может также быть любым другим объектом, который может быть родительским элементом hggroup объект.

Положение конечных точек линии, заданных как массив 2 на 2 формы [x1 y1; x2 y2].

x- конечных точек линии, заданных как вектор с 2 элементами формы x = [x1 x2].

y- конечных точек линии, заданных как вектор с 2 элементами формы y = [y1 y2].

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Ограничительная функция положения, заданная как разделенная запятой пара, состоящая из 'PositionConstraintFcn' и указатель на функцию. fcn называется каждый раз, когда мышь перетаскивается. Можно использовать эту функцию, чтобы управлять, куда линия может быть перетащена. Смотрите справку для setPositionConstraintFcn функция для получения информации о допустимых указателях на функцию.

Свойства

развернуть все

ROI может быть удален, задан как true или false.

Типы данных: логический

Использование

Когда вы вызываете imline с интерактивным синтаксисом указатель превращается на крест нитей когда по изображению. Перетащите мышь, чтобы задать положение и длину линии. Линия поддерживает контекстное меню, которое можно использовать, чтобы управлять аспектами его внешнего вида и поведения.

Таблица описывает интерактивное поведение, поддержанное imline.

Интерактивное поведениеОписание
Перемещение линии.Переместите указатель через линию. Указатель превращается в форму fleur. Перетащите мышь, чтобы переместить линию.
Перемещение конечных точек линии.Переместите указатель через любой конец линии. Указатель превращается в указывающий палец. Перетащите мышь, чтобы изменить размер линии.
Изменение цвета раньше отображало линию. Переместите указатель через линию. Щелкните правой кнопкой и выберите Set Color из контекстного меню.
Получение координат конечных точек линии.Переместите указатель через линию. Щелкните правой кнопкой и выберите Copy Position из контекстного меню. imline копирует массив 2 на 2 в буфер обмена, задающий координаты конечных точек линии в форме [X1 Y1; X2 Y2].
Удаление линииПереместите указатель сверху линии. Щелкните правой кнопкой и выберите Delete из контекстного меню. Чтобы удалить эту опцию из контекстного меню, установите Deletable свойство ко лжи: h = imline(); h.Deletable = false;

Функции объекта

Каждый imline поддержка объектов много функций. Введите methods imline видеть полный список.

addNewPositionCallbackДобавьте ново-позиционный коллбэк в объект ROI
createMaskСоздайте маску в изображении
deleteУдалите объект указателя
getColorДоберитесь цвет раньше чертил объект ROI
getPositionВозвратите текущее положение объекта ROI
getPositionConstraintFcnВозвратите указатель на функцию в ограничительную функцию текущего положения
removeNewPositionCallbackУдалите ново-позиционный коллбэк из объекта ROI
resume(Не рекомендуемый) выполнение Резюме командной строки MATLAB
setColorВыберите цвет, используемый, чтобы чертить объект ROI
setConstrainedPositionУстановите объект ROI на новое положение
setPositionПереместите объект ROI в новое положение
setPositionConstraintFcnУстановите ограничительную функцию положения объекта ROI
wait(Не рекомендуемый), командная строка MATLAB Блока, пока создание ROI не закончено

Примеры

Обновите Заголовок когда Перемещения Линии

Используйте пользовательский цвет в отображении линии. Используйте addNewPositionCallback функция. Переместите линию, обратите внимание, что радиус-вектор 2 на 2 линии отображен в заголовке выше изображения. Исследуйте контекстное меню линии путем щелчка правой кнопкой по линии.

imshow('pout.tif')
h = imline(gca,[10 100],[100 100]);
setColor(h,[0 1 0]);
id = addNewPositionCallback(h,@(pos) title(mat2str(pos,3)));

После наблюдения поведения коллбэка удалите коллбэк с помощью removeNewPositionCallback функция.

removeNewPositionCallback(h,id);

Перетащите, чтобы поместить линию

В интерактивном режиме поместите линию путем перетаскивания. Используйте wait блокировать командную строку MATLAB®. Дважды кликните на линии к resume выполнение командной строки MATLAB.

imshow('pout.tif')
h = imline;
position = wait(h);

Советы

  • Если вы используете imline с оси, который содержит объект изображения и не задает ограничительную функцию положения, пользователи, могут перетащить линию вне степени изображения и потерять линию. Когда используется с оси создаются plot функция, пределы по осям автоматически расширяются, чтобы разместить перемещение линии.

  • Используйте imdistline создать интерактивную линию с текстовым полем, которое отображает расстояние между конечными точками линии.

Вопросы совместимости

развернуть все

Не рекомендуемый запуск в R2018b

Представлено до R2006a

Для просмотра документации необходимо авторизоваться на сайте