Создайте перемещаемую, строку изменяемого размера
imline
не рекомендуется. Используйте drawline
вместо этого.
Объект imline
инкапсулирует интерактивную строку по изображению.
Можно настроить размер и положение строки при помощи мыши. Строка также имеет контекстное меню, которое управляет аспектами его внешнего вида и поведения. Для получения дополнительной информации смотрите Использование.
h = imline
h = imline(hparent)
h = imline(hparent,position)
h = imline(hparent,x,y)
h = imline(___,Name,Value)
h = imline
начинает интерактивное размещение строки на текущей системе координат и возвращает объект imline
.
h = imline(
начинает интерактивное размещение строки на объекте, заданном hparent
)hparent
.
h = imline(___,
задает пары "имя-значение", которые управляют поведением строки.Name,Value
)
Когда вы вызываете 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
, чтобы создать интерактивную строку с текстовым полем, которое отображает расстояние между конечными точками строки.
imdistline
| imellipse
| imfreehand
| impoint
| impoly
| imrect
| imroi
| makeConstrainToRectFcn