TIPOS DE OBJETOS
GRÁFICOS
O Matlab disponibiliza dois tipos
de objetos gráficos: os objetos gráficos principais (core objects) e os objetos
compostos (composse objects). Os objetos gráficos principais são usados pelas
funções de alto nível de traçado de gráficos e pelos objetos compostos para
criação de objetos de visualização. Os objetos compostos subdividem-se nas
seguintes categorias:
- Objetos de visualização (Plot Objects)
- Obejtos de anotação (Annotation Objects)
- Objetos de grupo (Group Objects)
- Objetos de interface com o utilizador (UI Objects)
A tabela abaixo representa as
funções que permitem a criação de objetos gráficos principais:
Função
|
Descrição
|
Axes
|
Define o sistema de eixos para a visualização de
imagens
|
Image
|
Representação 2D de uma matriz, em que os valores
numéricos são mapeados em cores. Este objeto pode resultar de matrizes 3D,
correspondendo a valores RGB
|
Light
|
Fonte de luz que direcional localizada num eixo
|
Line
|
Objeto linha que resulta da conexão de dois
pontos
|
Patch
|
Polígonos com a orientação e a posição definidas
pelo sistema de coordenadas do objeto axes
|
Rectangle
|
Objeto 2D (figuras geométricas retangulares ou
elípticas)
|
Surfasse
|
Representação 3D de dados matriciais
|
text
|
Conjunto de caracteres posicionados no sistema de
coordenadas do objeto axes
|
INSPEÇÃO E ALTERAÇÃO DE PROPRIEDADES:
O matlab permite a inspeção e a
alteração das propriedades dos diferentes objetos gráficos através das funções
get e set, respectivamente.
Com a função get, pode
inspecionar as propriedades de um objeto, identificando por uma determinada
referência (handle), nas formas pros = get(handle) ou valor = get(handle,
‘Propriedade). No caso da primeira invocação, o retorno da função get é uma
estrutura constituída pelo nome das diferentes propriedades do objeto e pelo
respectivo valor. A segunda sintaxe retorna exclusivamente o valor da
propriedade cujo nome é passado como argumento de entrada.
O exemplo a seguir ilustra esta
função, criando três referencias (handle1, handle2, e handle3) correspondentes
ao traçado gráfico de três funções (y1, y2 e y3). As propriedades dos objetos
gráficos criados são armazenados nas estruturas result1, result2 e result3,
respectivamente:
%Definição das funções
x = 0:0.1:4*pi; y1 = sin(x); y2 = sin(x + pi/4); y3 = sin(x + pi/2);
%Criação dos objetos
hold on;
handle1 = plot(x, y1); handle2 = plot(x, y2); handle3 = plot(x, y3);
hold off;
disp('Propriedade do objeto 1:'); result1 = get(handle1)
disp('Propriedade do objeto 2:'); result2 = get(handle2)
disp('Propriedade do objeto 3:'); result3 = get(handle3)
Propriedade
do objeto 1:
result1 =
DisplayName: ''
Annotation: [1x1 hg.Annotation] Color: [0 0 1] LineStyle: '-' LineWidth: 0.5000 Marker: 'none' MarkerSize: 6 MarkerEdgeColor: 'auto' MarkerFaceColor: 'none' XData: [1x126 double] YData: [1x126 double] ZData: [1x0 double] BeingDeleted: 'off' ButtonDownFcn: [] Children: [0x1 double] Clipping: 'on' CreateFcn: [] DeleteFcn: [] BusyAction: 'queue' HandleVisibility: 'on' HitTest: 'on' Interruptible: 'on' Selected: 'off' SelectionHighlight: 'on' Tag: ''
Type: 'line'
UIContextMenu: []
UserData: [] Visible:
'on' Parent: 173.0018 XDataMode: 'manual' XDataSource: '' YDataSource: '' ZDataSource: ''
Propriedade
do objeto 2:
result2 =
DisplayName: ''
Annotation: [1x1 hg.Annotation] Color: [0 0 1] LineStyle: '-' LineWidth: 0.5000 Marker: 'none' MarkerSize: 6 MarkerEdgeColor: 'auto' MarkerFaceColor: 'none' XData: [1x126 double] YData: [1x126 double] ZData: [1x0 double] BeingDeleted: 'off' ButtonDownFcn: [] Children: [0x1 double] Clipping: 'on' CreateFcn: [] DeleteFcn: [] BusyAction: 'queue' HandleVisibility: 'on' HitTest: 'on' Interruptible: 'on' Selected: 'off' SelectionHighlight: 'on' Tag: ''
Type: 'line'
UIContextMenu: []
UserData: [] Visible:
'on' Parent: 173.0018 XDataMode: 'manual' XDataSource: '' YDataSource: '' ZDataSource: ''
Propriedade
do objeto 3:
result3 =
DisplayName: ''
Annotation: [1x1 hg.Annotation] Color: [0 0 1] LineStyle: '-' LineWidth: 0.5000 Marker: 'none' MarkerSize: 6 MarkerEdgeColor: 'auto' MarkerFaceColor: 'none' XData: [1x126 double] YData: [1x126 double] ZData: [1x0 double] BeingDeleted: 'off' ButtonDownFcn: [] Children: [0x1 double] Clipping: 'on' CreateFcn: [] DeleteFcn: [] BusyAction: queue' HandleVisibility: 'on' HitTest: 'on' Interruptible: 'on' Selected: 'off' SelectionHighlight: 'on' Tag: ''
Type: 'line'
UIContextMenu: []
UserData: [] Visible:
'on' Parent: 173.0018 XDataMode: 'manual' XDataSource: '' YDataSource: '' ZDataSource: ''
A função set pode ser utilizada
para listar os diferentes valores que uma propriedade pode assumir,
apresentando-se entre chave ({}) o valor que a propriedade assume por omissão.
Quando utilizada a sintaxe set(handle), ‘Propriedade’), são listada todas as
opções possíveis que a propriedade passada como argumento pode assumir. O código
seguinte mostra, por exemplo, que a propriedade LineStyle do objeto handle1
pode assumir os valore --, :, -. E none, sendo – o valor predefinido.
Propriedade LineStyle
do objeto 1:
[ {-} | -- | : | -. |
none ]
No exemplo seguinte, são
alteradas as propriedades LineWidth, LineStyle e Color dos objetos criados no
exemplo anterior.
%---------------------------------------------------------Exemplo 2
% Lista de opções de LineStyle
disp('Propriedade LineStyle do objeto 1:');
set(handle1, 'LineStyle');
%Alteração de algumas propriedades do objetos
set(handle1, 'LineWidth', 4, 'LineStyle', '--', 'Color', [1 0 0]);
set(handle2, 'LineWidth', 3, 'LineStyle', '-.');
set(handle3, 'LineWidth', 2, 'LineStyle', ':', 'Color', [0 0 0]);
disp('Propriedade do objeto 1:'); result1 = get(handle1)
disp('Propriedade do objeto 2:'); result2 = get(handle2)
disp('Propriedade do objeto 3:'); result3 = get(handle3)
No próximo post será discutido principais propriedades do objeto figure, objeto axes, objeto text, objeto line e objeto annotation.
Nenhum comentário:
Postar um comentário