48
MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. [email protected] Doutor em Engenharia Agrícola UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO IT – Departamento de Engenharia MÁQUINAS E ENERGIA NA AGRICULTURA V Semana Acadêmica da Engenharia de Agrimensura e Cartográfica Ambiente de computação para desenvolvimento de sistemas sofisticados

MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas

  • Upload
    gitel

  • View
    60

  • Download
    0

Embed Size (px)

DESCRIPTION

MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas. Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. [email protected] Doutor em Engenharia Agrícola . UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO IT – Departamento de Engenharia MÁQUINAS E ENERGIA NA AGRICULTURA - PowerPoint PPT Presentation

Citation preview

Page 1: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

MATLAB – Aplicações a EngenhariaConstrução de Interfaces Gráficas

Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. [email protected] em Engenharia Agrícola

UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIROIT – Departamento de Engenharia

MÁQUINAS E ENERGIA NA AGRICULTURAV Semana Acadêmica da Engenharia de Agrimensura e Cartográfica

Ambiente de computação para desenvolvimento de sistemas sofisticados

Page 2: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Interfaces Gráficas Recursos disponíveis em para interação

entre usuário e rotinas computacionais. O usuário pode interagir através da

digitação de funções diretamente no pronpt ou

Clicando em objetos que orientam o usuário em realizações de tarefas complexas.

Page 3: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Função input e display input: função para entrada de dados na

linha de comando Display: saída de dados no prompt

Page 4: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Exemplo de Interface Entrada de arquivo - input Verificar se arquivo foi fornecido

Se não exibe mensagem de erro Se sim exibe arquivo – display

Verifica se arquivo existe Se não exibe mensagem de erro e encerra

função Se sim gera o gráfico

Page 5: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Implementação da função interface

%Exemplo de interface com uso de input/display

function interface () dado = input ('Nome do arquivo (digite

entre '' e com extensao):'); if isempty (dado) %verifica se algum

arquivo foi digitado display ('Nome de arquivo nao foi

digitado.'); else

Page 6: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Implementação da função interface

display (dado); nome = which (dado); if isempty(nome) %verifica se o arquivo

existe display('Arquivo inexistente.') else arq = load (nome); %carrega arquivo

com variaveis X,Y X = arq (:,1); Y = arq (:,2); %define

coordenadas X,Y

Page 7: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Implementação da função interface

plot (X,Y); %Gera grafico xlabel('Coordenadas X');

ylabel('Coordenadas Y'); title('Fazendinha Agroecologica KM 47')

end end

Page 8: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Resultado da função interface

Page 9: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Caixa de Diálogo para texto

Inputdlg : caixa de diálogo para entrada de dados via texto.

%dialog_1.mMsg = {'Largura:' 'Altura:'};Titulo = 'Dimensoes do Retangulo';NumLinhas = '[1 2]';ValPreDef = {'500' '100'};Dados = inputdlg (Msg, Titulo, NumLinhas,

ValPreDef);

Page 10: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Resultado de dialog_1.m

Page 11: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

A Função Interface com inputdlg

No arquivo interface.m substituir: input por inputdlg (dados) por (dado{1})

Salvar como interface_dlg.m

Page 12: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Resultado de interface_dlg.m

Caixa de diálogo retorna uma matriz de cell-array = cadeia de caracteres

Para retornar valores numéricos é necessário usar a função str2num (string to number)

Page 13: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Caixa de diálogo de visualização de imagem

Imageview: exibe a imagem armazenada em arquivo e permite mudar a janela de visualização (zoom window).

%imageview_.mimageview ('C:\Users\varella\Desktop\V

SEMEAG\Matlab\image\lena.jpg');%imageview ('C:\Users\varella\Desktop\V

SEMEAG\Matlab\image\foto.bmp');imageview(a,map);

Page 14: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Resultado de imageview_.m

A função também aceita imagens em formato matricial.

A opção (Zoom Out) retorna a visualização completa da imagem.

Page 15: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Caixa de diálogo para abertura de arquivo

uigetfile: recebe os tipos de arquivos a serem abertos em um cell-array coluna (neste exemplo, aceita *.mat e *.fig)

A função retorna o nome e caminho do arquivo selecionado

Se nenhum arquivo for selecionado a função retorna 0

Page 16: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Exemplo uigetfile_.m%uigetfile%Esta funcao retorna o nome e o caminho do

arquivo selecionadoTipo = {'*.mat'; '*.fig'; '*.jpg'; '*.bmp'};Titulo = 'Selecione um arquivo';[Nome, Caminho] = uigetfile (Tipo,Titulo);local=strcat(Caminho,Nome);%imageview(local)im=imread(local);imshow(im)

Page 17: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Resultado de uigetfile_.m

Page 18: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

GUIDE – Graphic User Interface Design Environment

Gera interfaces gráficas para interação com usuário

A função é ativada digitando-se guide no prompt da janela do Command Window

Page 19: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

GUIDE interfaces gráficas (GUI) A função guide retorna um aplicativo para

geração de interfaces gráficas.

Page 20: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Configuração do aplicativo Clicar em File -> Preferences para abrir a

janela de preferências do aplicativo. Ativar Show names in component palette

Page 21: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Nova aparência da janela principal do aplicativo

Os objetos são visualizados no lado esquerdo da tela

Page 22: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Criar um botão de ação Arrastar o objeto pushbutton para dentro da

área da tela de construção do aplicativo GUIDE.

Page 23: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Configurar as propriedades do objeto

Clicar com o botão direito no objeto -> Selecionar Inspect Properties: String = Abrir Mapa e Callback = interface_dlg

Page 24: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Active Figure Clicar no ícone circulado para gerar o

aplicativo.

Page 25: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Interface Gerada

Page 26: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Menus – Editor de menus O editor de menus permite criar dois

tipos de menus. •Menubar – objetos que serão

visualizados na barra de menu de figuras.

•Context menus – objetos que serão visualizados quando o usuário clicar com o botão direito sobre figuras.

Para ativar o aplicativo clicar em Layout Editor -> Menu Editor

Page 27: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Janela principal do editor de menus

Page 28: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Definindo os objetos da barra de menu principal

Os objetos definidos no editor de menus são automaticamente adicionados a barra de menu principal da figura ativa.

Aos objetos deste menu podem ser adicionados outros objetos denominados de submenus (itens do menu principal)

Page 29: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Barra de menu principal e submenus

Page 30: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Configuração da barra de menus

Page 31: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Visualização da Figura Ativada

Page 32: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Comandos save e pwdSAVE – SALVA ARQUIVO NO DIRETÓRIO DE TRABALHO

PWD – LISTA O DIRETÓRIO DE TRABALHO

Page 33: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Comando dlmwriteGRAVA MATRIZ DE DADOS EM ARQUIVO TEXTO EXEMPLO

nome=strcat(Caminho,Nome(1:7),'.txt');

dlmwrite(nome,cob, '\t')

Nome =

T3_R1_1.jpg

>> Nome(1:7)

T3_R1_1

Page 34: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Uigetfile – abrir e amostrar valores RGB de imagens

Tipo = {'*.jpg'; '*.bmp'; '*.gif'; '*.png'}; Titulo = 'Selecionar um arquivo'; [Nome, Caminho] = uigetfile (Tipo,Titulo); local=strcat (Caminho,Nome); im=imread (local); p = impixel (im); Os valores RGB dos pixels amostrados são

armazenados na matriz p

Page 35: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Push Button e Toggle Button

Push Button gera uma ação em resposta ao clique de mouse.

Page 36: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Adição de Imagens em Botões (Push Button e Toggle Button)

Adiciona as propriedades de uma imagem RGB Truecolor (Cdata) a uma Figura (h)

im = imread (local)set (h, ‘Cdata’, im);

Page 37: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Switch/caseSwitch/case INPUTDLG : CAIXA DE DIÁLOGO PARA

ENTRADA DE DADOS VIA TEXTO.

%dialog_1.mMsg = {‘Sim' ‘Nao'};Titulo = ‘Quer

Selecionar Outra Imagem';

NumLinhas = '[1 2]';ValPreDef = {'500'

'100'};resposta = inputdlg

(Msg, Titulo, NumLinhas, ValPreDef);

switch resposta case Sim disp('x is 1'); end

Page 38: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

questdlgCRIA JANELA DE RESPOSTA QUESTÃO) QUER SELECIONAR

OUTRA IMAGEM? button = questdlg('Do you want

to continue?',... 'Continue

Operation','Yes','No','Help','No'); if strcmp(button,'Yes') disp('Creating file') elseif strcmp(button,'No') disp('Canceled file operation') elseif strcmp(button,'Help') disp('Sorry, no help available') end

Page 39: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

helpdlg

helpdlg('Choose 10 points from the figure','Point Selection');

Page 40: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

DISPLAY WARNING DIALOG BOX h =

warndlg('warningstring','dlgname')

h= warndlg (‘Não existe ajuda’, ‘Janela de Ajuda)

Page 41: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

return retorna para início da

função. function d = det(A) %DET det (A) is the

determinant of A. if isempty(A) d = 1; return else ... end

Page 42: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Report – Gera relatórios(dados,figuras)

Duas formas de gerar relatórios: Matlab e simulink

Page 43: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Relatórios pode ser criados em diversos formatos

RTF;XML;SGML;HTML

Page 44: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Lista de arquivos setupNo prompt do matlab digitar ‘rptlist’ para abrir a lista de arquivos setup

Selecionar ch1-tutorial.rpt na lista de arquivos setup. Clicar em Editar para abrir o Editor de Arquivos Setup.

Page 45: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Editor de Arquivos SetupManter todas configurações padrão do editor e clicar no

botão Report

Botão REPOR

T

Page 46: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Arquivo ch1-tutorial.html visualizado no navegador

Page 47: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Componentes do arquivo setup do Relatório

Componentes do arquivo setup armazenam informações que serão enviadas ao arquivo de relatório.

lista = rptlist , lista arquivos setup e armazena lista na variável ‘lista’

Page 48: MATLAB – Aplicações a  Engenharia Construção de Interfaces Gráficas

Gerar executávelmex filename -f <optionsfile>

filename: nome do arquivo-f: para especificar arquivo de opções<optionsfile>: nome do arquivo de opções (*.bat)