Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

imrect

Cree un rectángulo arrastrable

no se recomienda.imrect Use en su lugar.drawrectangle

Descripción

Un objeto encapsula un rectángulo interactivo sobre una imagen.imrect

Puede ajustar el tamaño y la posición del rectángulo con el ratón. El rectángulo también tiene un menú contextual que controla aspectos de su apariencia y comportamiento. Para obtener más información, consulte.Uso

Creación

Descripción

h = imrect comienza la colocación interactiva de un rectángulo en los ejes actuales y devuelve un objeto.imrect

h = imrect(hparent) comienza la colocación interactiva de un rectángulo en el objeto especificado por.hparent

ejemplo

h = imrect(hparent,position) crea un rectángulo arrastrable en la posición del objeto especificado por.positionhparent

h = imrect(___,Name,Value) especifica los pares nombre-valor que controlan el comportamiento del rectángulo.

Argumentos de entrada

expandir todo

Identificador para el objeto primario, especificado como un identificador. El elemento primario suele ser un objeto de ejes, pero también puede ser cualquier otro objeto que pueda ser el elemento primario de un objeto.hggroup

Posición del rectángulo, especificada como un vector de 4 elementos del formulario.[xmin ymin width height] El tamaño inicial del rectángulo es-por-, y la esquina superior izquierda del rectángulo está en la coordenada (x, y) (,).widthheightxminymin

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

Función de restricción de posición, especificada como el par separado por comas que consta de y un identificador de función. se llama cada vez que se arrastra el ratón.'PositionConstraintFcn'fcn Puede utilizar esta función para controlar dónde se puede arrastrar el rectángulo. Consulte la ayuda de la función para obtener información sobre los identificadores de función válidos.setPositionConstraintFcn

Propiedades

expandir todo

El ROI se puede eliminar, especificar como o.truefalse

Tipos de datos: logical

Uso

Cuando se llama con una sintaxis interactiva, el puntero cambia a una cruz de pelosimrectCuando se sobre la imagen. Puede crear el rectángulo y ajustar su tamaño y posición con el ratón. El rectángulo también admite un menú contextual que puede usar para controlar aspectos de su apariencia y comportamiento. Haga clic con el botón derecho en el rectángulo para acceder a este menú contextual.

La tabla enumera los comportamientos interactivos admitidos por.imrect

Comportamiento interactivoDescripción
Moviendo el rectángulo.Mueva el puntero dentro del rectángulo. El puntero cambia a una forma de flor. Haga clic y arrastre el ratón para mover el rectángulo.
Redimensionar el rectángulo. Mueva el puntero sobre cualquiera de las aristas o esquinas del rectángulo, la forma cambia a una flecha de doble fin,. Haga clic y arrastre el borde o la esquina con el ratón.
Cambiar el color del rectángulo.Mueva el puntero dentro del rectángulo. Haga clic con el botón derecho y seleccione en el menú contextual.Set Color
Recuperar las coordenadas de la posición actualMueva el puntero dentro del polígono. Haga clic con el botón derecho y seleccione en el menú contextual. copia un vector de posición de cuatro elementos en el portapapeles.Copy Positionimrect
Conserve la relación de aspecto actual del rectángulo durante el cambio de tamaño interactivo. Mueva el puntero dentro del rectángulo. Haga clic con el botón derecho y seleccione en el menú contextual.Fix Aspect Ratio
Eliminar el rectánguloMueva el puntero dentro del rectángulo o en un borde del rectángulo. Haga clic con el botón derecho y seleccione en el menú contextual.Delete Para eliminar esta opción del menú contextual, establezca la propiedad en false:Deletableh = imrect(); h.Deletable = false;

Cuando se usa para hacer que el rectángulo no puede cambiar de tamaño, no se proporciona el elemento de menú contextual.setResizeableFix Aspect Ratio

Funciones del objeto

Cada objeto admite varios métodos.imrect Escriba para ver una lista completa.methods imrect

addNewPositionCallbackAgregue la devolución de llamada de nueva posición al objeto ROI
createMaskCrear máscara dentro de la imagen
deleteDelete handle object
getColorObtener el color utilizado para dibujar el objeto ROI
getPositionDevolver la posición actual del objeto ROI
getPositionConstraintFcnDevolver el manejador de función a la función de restricción de posición actual
removeNewPositionCallbackQuite la devolución de llamada de nueva posición del objeto ROI
resume(No recomendado) Reanudar la ejecución de la línea de comandosMATLAB
setColorEstablecer el color utilizado para dibujar el objeto ROI
setConstrainedPositionEstablezca el objeto ROI en una nueva posición
setFixedAspectRatioModeConserve la relación de aspecto al redimensionar el objeto ROI
setPositionMueva el objeto ROI a una nueva posición
setPositionConstraintFcnEstablezca la función de restricción de posición del objeto ROI
setResizableEstablezca el comportamiento de cambio de tamaño del objeto ROI
wait(No recomendado) Bloquee la línea de comandos hasta que finalice la creación de ROIMATLAB

Ejemplos

Actualizar título cuando rectángulo se mueve

Mostrar un ROI de rectángulo sobre una imagen. Mostrar la posición del rectángulo en el título. El título se actualiza al mover el rectángulo. Intente arrastrar un lado del rectángulo fuera del límite de la imagen.

imshow('cameraman.tif') h = imrect(gca,[10 10 100 100]); addNewPositionCallback(h,@(p) title(mat2str(p,3)));

Especifique una función de restricción de posición utilizando para mantener el rectángulo dentro del original y los rangos de la imagen.makeConstrainToRectFcnXLimYLim

fcn = makeConstrainToRectFcn('imrect',get(gca,'XLim'),get(gca,'YLim')); setPositionConstraintFcn(h,fcn); 

Ahora arrastra el rectángulo usando el ratón. Observe que el rectángulo ya no puede extenderse más allá del límite de la imagen.

Haga clic y arrastre para colocar el rectángulo

Coloque un rectángulo de forma interactiva haciendo clic y arrastrando. Se usa para bloquear la línea de comandos.waitMATLAB® Haga doble clic en el rectángulo para reanudar la ejecución de la línea de comandos.MATLAB

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

Sugerencias

Si utiliza con un eje que contiene un objeto de imagen y no especifica una función de restricción de posición, los usuarios pueden arrastrar el rectángulo fuera de la extensión de la imagen.imrect Cuando se utiliza con un eje creado por la función, los límites de los ejes se expanden automáticamente para acomodar el movimiento del rectángulo.plot

Introducido antes de R2006a