Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
rubberbox
растягиваемая рамка для прямоугольного выделения
Последовательность вызова
[final_rect, btn] = rubberbox() [final_rect, btn] = rubberbox(initial_rect) [final_rect, btn] = rubberbox(edition_mode) [final_rect, btn] = rubberbox(initial_rect, edition_mode)
Аргументы
- initial_rect
- вектор с двумя или четырьмя элементами. С четырьмя элементами он даёт исходный прямоугольник, определяемый в виде - [x_min, y_max, width, height], где- x_minи- y_max- координаты начального угла,- width- ширина и- height- высота; если элементов два, то ширина и высота предполагаются нулевыми.
- edition_mode
- логическое значение, режим редактирования. Если - edition_modeравно- %t, то нажатие на кнопку выбирает первый угол, отпуск кнопки выбирает противоположный угол. Если- edition_modeравен- %f, то нажатие на кнопку или щелчок выбирает первый угол, для выбора противоположного угла необходимо щёлкнуть ещё раз. Значение по умолчанию равно- %f.
- final_rect
- прямоугольник, определяемый как - [x_min, y_max, width, height], где- x_minи- y_max- координаты начального угла,- width- ширина и- height- высота.
- btn
- целое число, количество щелчков кнопкой мыши. 
Описание
rubberbox(initial_rect) тянет растягиваемую рамку в
            текущем графическом окне, следуя за мышью. При щелчке мышью
            rubberbox возвращает определение конечного
            прямоугольника в final_Rect. Если аргумент
            initial_rect не определён, то для фиксации
            положения начального угла необходим щелчок мыши.
Примеры
clf plot2d() a = gca(); db = a.data_bounds; x0 = (db(1)*2+db(2))/3; dx = (db(2)-db(1))/3; y0 = (db(3)+db(4)*2)/3; dy = (db(4)-db(3))/3; xtitle(msprintf("С исходным начальным углом: x0 = %0.2f, y0 = %0.2f",x0,y0)) r = rubberbox([x0 y0])
clf plot2d() a = gca(); db = a.data_bounds; x0 = (db(1)*2+db(2))/3; dx = (db(2)-db(1))/3; y0 = (db(3)+db(4)*2)/3; dy = (db(4)-db(3))/3; xtitle(msprintf("С исходной рамкой: x0 = %0.2f, y0 = %0.2f, ширина = %0.2f, высота = %0.2f,",x0-dx/4,y0+dy/5,2*dx,dy)) r = rubberbox([x0-dx/4 y0+dy/5 2*dx dy])
Смотрите также
| Report an issue | ||
| << interaction | interaction | dragrect >> |