Создайте резиновый ящик для выбора области
rbbox
rbbox(initialRect)
rbbox(initialRect,fixedPoint)
rbbox(initialRect,fixedPoint,stepSize)
finalRect = rbbox(...)
rbbox инициализирует и отслеживает блок резиновой полосы на текущей фигуре. Он устанавливает начальный прямоугольник размером 0 на 0 пикселей, привязывает прямоугольник в CurrentPoint рисунка, и начинает отслеживать с этой точки.
rbbox(initialRect) задает начальное расположение и размер резиновой коробки следующим [x y width height], где x и y задайте нижний левый угол и width и height задайте размер. initialRect находится в модулях, заданных текущими Units текущей фигуры свойство, и измеренное из нижнего левого угла окна рисунка. Угол прямоугольника, ближайший к положению указателя, следует за указателем, пока rbbox получает событие «кнопка вверх».
rbbox(initialRect,fixedPoint) задает угол ящика, который остается фиксированным. Все аргументы находятся в модулях, заданной текущей фигурой Units свойство, и измеренное из нижнего левого угла окна рисунка. fixedPoint является двухэлементным вектором, [x y]. Точка отслеживания является углом по диагонали напротив привязанного угла, заданного fixedPoint.
rbbox(initialRect,fixedPoint,stepSize) определяет, как часто выполняется обновление резиновой полосы. Когда точка отслеживания превышает stepSize модули рисунка, rbbox перерисовывает резиновую коробку. Размер шага по умолчанию 1.
finalRect = rbbox(...) возвращает вектор с четырьмя элементами, [x
y
width
height], где x и y являются компонентами x и y левого нижнего угла коробки и width и height - размер коробки.
rbbox полезно для определения и изменения размера прямоугольной области:
Для определения коробки, initialRect является [x y 0 0], где (x,y) является CurrentPoint рисунка.
Для изменения размера коробки, initialRect определяет прямоугольную область, размер которой изменяется (например, легенду). fixedPoint - угол, диагонально противоположный точке отслеживания.
rbbox немедленно возвращается, если кнопка в данный момент не нажата. Поэтому вы используете rbbox с waitforbuttonpress так, чтобы кнопка мыши была нажата, когда rbbox вызывается. rbbox возвращается, когда вы отпускаете кнопку мыши.
annotation | axis | disableDefaultInteractivity | dragrect | waitforbuttonpress