(Не рекомендуется) Создание строки с возможностью перетаскивания и изменения размера
imline не рекомендуется. Использовать новый Line Вместо этого объект ROI. Также можно использовать функцию удобства создания ROI drawline. Дополнительные сведения см. в разделе Вопросы совместимости.
Один imline объект инкапсулирует интерактивную линию поверх изображения.
Можно настроить размер и положение линии с помощью мыши. Линия также имеет контекстное меню, которое управляет аспектами ее внешнего вида и поведения. Дополнительные сведения см. в разделе Использование.
h = imline начинает интерактивное размещение линии на текущих осях и возвращает imline объект.
h = imline( начинает интерактивное размещение линии на объекте, указанном hparent)hparent.
h = imline(___, задает пары «имя-значение», которые управляют поведением линии.Name,Value)
При звонке imline в интерактивном синтаксисе указатель изменяется на перекрестие
, когда он располагается над изображением. Щелкните и перетащите мышь, чтобы указать положение и длину линии. Линия поддерживает контекстное меню, которое можно использовать для управления аспектами его внешнего вида и поведения.

Таблица описывает интерактивное поведение, поддерживаемое imline.
| Интерактивное поведение | Описание |
|---|---|
| Перемещение линии. | Наведите указатель на линию. Указатель принимает форму флера. |
| Перемещение конечных точек линии. | Переместите указатель на любой конец линии. Указатель изменяется на указывающий палец,. |
| Изменение цвета, используемого для отображения линии. | Наведите указатель на линию. Щелкните правой кнопкой мыши и выберите в контекстном меню «Задать цвет». |
| Получение координат конечных точек линии. | Наведите указатель на линию. Щелкните правой кнопкой мыши и выберите «Копировать положение» в контекстном меню. imline копирует массив 2 на 2 в буфер обмена, указывая координаты конечных точек линии в форме [X1 Y1; X2 Y2]. |
| Удаление строки | Переместите указатель сверху линии. Щелкните правой кнопкой мыши и выберите в контекстном меню команду «Удалить». Чтобы удалить этот параметр из контекстного меню, установите Deletable свойство false: 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 | (Не рекомендуется) Переместить объект окупаемости инвестиций в новое положение |
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 создание интерактивной линии с текстовым полем, в котором отображается расстояние между конечными точками линии.