Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - 日本語 - Русский
Ajuda do Scilab >> Biblioteca de Gráficos > interaction > rubberbox

rubberbox

Caixa tipo liga de borracha para seleção de um retângulo

Seqüência de Chamamento

[final_rect,btn]=rubberbox()
[final_rect,btn]=rubberbox(initial_rect)
[final_rect,btn]=rubberbox(edition_mode)
[final_rect,btn]=rubberbox(initial_rect, edition_mode)

Parâmetros

initial_rect

vetor de duas a quatro entradas. Com quatro entradas fornece o retângulo inicial definido por [x_esquerdo, y_topo, largura, altura]. Com duas entradas, largura e altura são supostas 0.

edition_mode

um booleano, se edition_mode==%t; um aperto de botão seleciona a primeira quina, soltar seleciona a quina oposta. Se edition_mode== %f, aperto de botão ou clique seleciona a primeira quina, um clique é requerido para selecionar a quina oposta. O valor padrão é edition_mode=%f

final_rect

um retângulo definido por [x_esquerdo, y_topo, largura, altura]

btn

um inteiro, o número do botão do mouse clicado

Descrição

rubberbox(initial_rect) trilha uma caixa liga de borracha na janela de gráficos corrente, seguindo o mouse. Quando um botão é clicado, rubberbox retorna a definição dos retângulos finais final_Rect. Se o argumento initial_rect estiver presente, o usuário deve clicar para fixar a posição da quina inicial.

Exemplos

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, height = %0.2f,",x0-dx/4,y0+dy/5,2*dx,dy))
r = rubberbox([x0-dx/4 y0+dy/5 2*dx dy])
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("In press -- drag -- release mode selection:")
r = rubberbox(%t)
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("In starting click -- drag -- stopping click mode selection:")
r = rubberbox()

Ver Também

  • xrect — desenha um retângulo
  • xrects — desenha ou preenche um conjunto de retângulos
  • xclick — espera por um clique do mouse
  • xgetmouse — retorna os eventos de mouse e posição corrente
  • dragrect — Arrasta retângulos com o mouse
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Feb 12 19:58:38 CET 2018