matlab – aplicações a engenharia construção de interfaces gráficas
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 PresentationTRANSCRIPT
![Page 1: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/1.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/2.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/3.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/4.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/5.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/6.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/7.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/8.jpg)
Resultado da função interface
![Page 9: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/9.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/10.jpg)
Resultado de dialog_1.m
![Page 11: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/11.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/12.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/13.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/14.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/15.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/16.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/17.jpg)
Resultado de uigetfile_.m
![Page 18: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/18.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/19.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/20.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/21.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/22.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/23.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/24.jpg)
Active Figure Clicar no ícone circulado para gerar o
aplicativo.
![Page 25: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/25.jpg)
Interface Gerada
![Page 26: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/26.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/27.jpg)
Janela principal do editor de menus
![Page 28: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/28.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/29.jpg)
Barra de menu principal e submenus
![Page 30: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/30.jpg)
Configuração da barra de menus
![Page 31: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/31.jpg)
Visualização da Figura Ativada
![Page 32: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/32.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/33.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/34.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/35.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/36.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/37.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/38.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/39.jpg)
helpdlg
helpdlg('Choose 10 points from the figure','Point Selection');
![Page 40: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/40.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/41.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/42.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/43.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/44.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/45.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/46.jpg)
Arquivo ch1-tutorial.html visualizado no navegador
![Page 47: MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/47.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022081503/5681666a550346895dda0019/html5/thumbnails/48.jpg)
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)