矩形選択用の輪ゴムボックス
[final_rect,btn]=rubberbox() [final_rect,btn]=rubberbox(initial_rect) [final_rect,btn]=rubberbox(edition_mode) [final_rect,btn]=rubberbox(initial_rect, edition_mode)
2個または4個のエントリを有するベクトル.4個のエントリを有する場合, [x_min, y_max, width, height]で定義される初期矩形を指定し, 2個のエントリを有する場合, 幅と高さは0と仮定されます.
論理値, edition_mode が%t
の場合,
ボタンを押すと最初の角が選択され,開放すると反対の角が選択されます.
edition_mode が%f
の場合, ボタンを押すか
クリックすると最初の角,クリックすると反対の角が選択されます.
デフォルトは %f です.
[x_min, y_max, width, height]で定義された矩形
整数, マウスボタンがクリックされた回数
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("With an initial starting corner: 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("With an initial box: x0 = %0.2f, y0 = %0.2f, width = %0.2f, hight = %0.2f,",x0-dx/4,y0+dy/5,2*dx,dy)) r = rubberbox([x0-dx/4 y0+dy/5 2*dx dy]) | ![]() | ![]() |