UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO IT

  • Slides: 48
Download presentation
UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO IT – Departamento de Engenharia MÁQUINAS E

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 MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas Ambiente de computação para desenvolvimento de sistemas sofisticados Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. varella. caa@gmail. com Doutor em Engenharia Agrícola

Interfaces Gráficas Recursos disponíveis em para interação entre usuário e rotinas computacionais. O usuário

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.

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

Função input e display input: função para entrada de dados na linha de comando Display: saída de dados no prompt

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

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

Implementação da função interface %Exemplo de interface com uso de input/display function interface ()

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

Implementação da função interface display (dado); nome = which (dado); if isempty(nome) %verifica se

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

Implementação da função interface plot (X, Y); %Gera grafico xlabel('Coordenadas X'); ylabel('Coordenadas Y'); title('Fazendinha

Implementação da função interface plot (X, Y); %Gera grafico xlabel('Coordenadas X'); ylabel('Coordenadas Y'); title('Fazendinha Agroecologica KM 47') end

Resultado da função interface

Resultado da função interface

Caixa de Diálogo para texto Inputdlg : caixa de diálogo para entrada de dados

Caixa de Diálogo para texto Inputdlg : caixa de diálogo para entrada de dados via texto. %dialog_1. m Msg = {'Largura: ' 'Altura: '}; Titulo = 'Dimensoes do Retangulo'; Num. Linhas = '[1 2]'; Val. Pre. Def = {'500' '100'}; Dados = inputdlg (Msg, Titulo, Num. Linhas, Val. Pre. Def); �

Resultado de dialog_1. m

Resultado de dialog_1. m

A Função Interface com inputdlg � No arquivo interface. m substituir: � input por

A Função Interface com inputdlg � No arquivo interface. m substituir: � input por inputdlg � (dados) por (dado{1}) � Salvar como interface_dlg. m

Resultado de interface_dlg. m v Caixa de diálogo retorna uma matriz de cell-array =

Resultado de interface_dlg. m v Caixa de diálogo retorna uma matriz de cell-array = cadeia de caracteres v Para retornar valores numéricos é necessário usar a função str 2 num (string to number)

Caixa de diálogo de visualização de imagem � Imageview: exibe a imagem armazenada em

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_. m imageview ('C: UsersvarellaDesktopV SEMEAGMatlabimagelena. jpg'); %imageview ('C: UsersvarellaDesktopV SEMEAGMatlabimagefoto. bmp'); imageview(a, map);

Resultado de imageview_. m A função também aceita imagens em formato matricial. A opção

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.

Caixa de diálogo para abertura de arquivo � � � uigetfile: recebe os tipos

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

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

Exemplo uigetfile_. m %uigetfile %Esta funcao retorna o nome e o caminho do arquivo selecionado Tipo = {'*. mat'; '*. fig'; '*. jpg'; '*. bmp'}; Titulo = 'Selecione um arquivo'; [Nome, Caminho] = uigetfile (Tipo, Titulo); local=strcat(Caminho, Nome); %imageview(local) im=imread(local); imshow(im)

Resultado de uigetfile_. m

Resultado de uigetfile_. m

GUIDE – Graphic User Interface Design Environment � � Gera interfaces gráficas para interação

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

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

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

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

Configuração do aplicativo � Clicar em File -> Preferences para abrir a janela de preferências do aplicativo. Ativar names in component palette Show

Nova aparência da janela principal do aplicativo Os objetos são visualizados no lado esquerdo

Nova aparência da janela principal do aplicativo Os objetos são visualizados no lado esquerdo da tela

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

Criar um botão de ação � Arrastar o objeto pushbutton para dentro da área da tela de construção do aplicativo GUIDE.

� Configurar as propriedades do objeto Clicar com o botão direito no objeto ->

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

Active Figure Clicar no ícone circulado para gerar o aplicativo.

Active Figure Clicar no ícone circulado para gerar o aplicativo.

Interface Gerada

Interface Gerada

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

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

Janela principal do editor de menus

Janela principal do editor de menus

Definindo os objetos da barra de menu principal Os objetos definidos no editor de

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)

Barra de menu principal e submenus

Barra de menu principal e submenus

Configuração da barra de menus

Configuração da barra de menus

Visualização da Figura Ativada

Visualização da Figura Ativada

Comandos save e pwd SAVE – SALVA ARQUIVO NO DIRETÓRIO DE TRABALHO PWD –

Comandos save e pwd SAVE – SALVA ARQUIVO NO DIRETÓRIO DE TRABALHO PWD – LISTA O DIRETÓRIO DE TRABALHO

Comando dlmwrite GRAVA MATRIZ DE DADOS EM ARQUIVO TEXTO EXEMPLO nome=strcat(Caminho, Nome( 1: 7),

Comando dlmwrite GRAVA MATRIZ DE DADOS EM ARQUIVO TEXTO EXEMPLO nome=strcat(Caminho, Nome( 1: 7), '. txt'); dlmwrite(nome, cob, 't') � Nome = � T 3_R 1_1. jpg � >> Nome(1: 7) � T 3_R 1_1

Uigetfile – abrir e amostrar valores RGB de imagens � � � � Tipo

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

Push Button e Toggle Button Push Button gera uma ação em resposta ao clique

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

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

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); �

Switch/case � � switch resposta case Sim disp('x is 1'); end : CAIXA DE

Switch/case � � switch resposta case Sim disp('x is 1'); end : CAIXA DE DIÁLOGO PARA ENTRADA DE DADOS VIA TEXTO. INPUTDLG %dialog_1. m Msg = {‘Sim' ‘Nao'}; Titulo = ‘Quer Selecionar Outra Imagem'; Num. Linhas = '[1 2]'; Val. Pre. Def = {'500' '100'}; resposta = inputdlg (Msg, Titulo, Num. Linhas, Val. Pre. Def);

questdlg CRIA JANELA DE RESPOSTA QUESTÃO) QUER SELECIONAR OUTRA IMAGEM? � � � �

questdlg CRIA 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

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

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

DISPLAY WARNING DIALOG BOX h= warndlg('warningstring', ' dlgname') h= warndlg (‘Não existe ajuda’, ‘Janela

DISPLAY WARNING DIALOG BOX h= warndlg('warningstring', ' dlgname') h= warndlg (‘Não existe ajuda’, ‘Janela de Ajuda)

return � � � � � retorna para início da função. function d =

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

Report – Gera relatórios(dados, figuras) Duas formas de gerar relatórios: Matlab e simulink

Report – Gera relatórios(dados, figuras) Duas formas de gerar relatórios: Matlab e simulink

Relatórios pode ser criados em diversos formatos RTF; XML; SGML; HTML

Relatórios pode ser criados em diversos formatos RTF; XML; SGML; HTML

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

Lista de arquivos setup No prompt do matlab digitar ‘rptlist’ para abrir a lista de arquivos setup Selecionar ch 1 -tutorial. rpt na lista de arquivos setup. Clicar em Editar para abrir o Editor de Arquivos Setup.

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

Editor de Arquivos Setup Manter todas configurações padrão do editor e clicar no botão Report Botão REPORT

Arquivo ch 1 -tutorial. html visualizado no navegador

Arquivo ch 1 -tutorial. html visualizado no navegador

Componentes do arquivo setup do Relatório Componentes do arquivo setup armazenam informações que serão

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’

Gerar executável mex filename -f <optionsfile> filename: nome do arquivo -f: para especificar arquivo

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