INFORMATYKA

di

INFORMATYKA

3

LAB

INSTRUKCJA DO ĆWICZENIA NR 3

TEMAT:

MATLAB – GRAFICZNY INTERFEJS UŻYTKOWNIKA

INFOMATYKA

Przedmiot: INFORMATYKA – Katedra Robotyki i Mechatroniki AGH

Laboratorium 3 „ MATLAB – Graficzny Interfejs Uż ytkownika”

I.

CEL ĆWICZENIA:

Celem ćwiczenia jest zapoznanie się z możliwościami tworzenia graficznego interfejsu użytkownika w MATLABIE (GUI), zapoznanie się możliwościami tworzenia okien z menu rozwijalnym, z przyciskami oraz polami do wprowadzania informacji. GUI zapewnia łatwą i intuicyjną obsługę nawet zaawansowanych programów obliczeniowych oraz zapewnia przejrzystość programu i systematyzację.

II.

PODSTAWOWE KOMENDY UŻYWANE W ĆWICZENIU: Komenda

Przykład

Opis

Tekstowy tryb komunikacji z uż ytkownikiem

disp

disp(‘Masa =’)

Wyświetla komunikaty lub żądane zmienne na ekranie

num2str

disp([‘M=’, num2str(A),])

Zamienia liczbę na ciąg znaków – używane przy

wyświetlaniu

input

R=input(‘Ile jabłek? ’)

Umożliwia wprowadzenie tekstu przez użytkownika

ischar

SPRAWDZAM=ischar(A)

Sprawdza, czy macierz A jest macierzą ze znakami

isnumeric

TEST=isnumeric(A)

Sprawdza, czy macierz A jest macierzą z numerami

Graficzny tryb komunikacji z uż ytkownikiem

clear

clear all; clear A

Czyści zmienne wszystkie lub wybrane z przestrzeni roboczej

close

close all close(okno1)

Zamyka wszystkie aktywne okna lub tylko wybrane (uchwyt) echo

echo on; echo off all

Wł i wył wyśw. informacji na ekranie podczas wyk. funkcji figure

okno3=figure(3)

Otwiera okno o uchwycie „okno3” i numerze 3

get

get(2); get(okno3)

Wyświetla pełną listę ustawień obiektu

get(okno3,color);

Wyświetla wartość własności kolor dla obiektu „okno3”

set

set(okno3,’color’,[1 1 0])

Set ustawia parametry obiektu np okna3

Niektóre (ważniejsze) parametry okien, które można ustawić funkcją „set” dla obiektów typu Figure set(okno3,'inverthardcopy','on');

Ustawia wydruk okna na białym tle

set(okno3,'MenuBar','none');

Nie wyświetla standardowego menu (File, Edit, Help itp)

set(okno3,'Name','Okno z GUI');

Ustawia nazwę nowo otwartego okna

set(okno3,'Numbertitle','off');

Czy wyświetlać czy nie nazwę okna

set(okno3,'Units','normalized');

Jednostki wymiaru ekranu i położenia kursora tu od 0 do1

set(okno,'Position',[0.2 0.2 0.5 0.5]);

Ustawia pozycje startową otwieranego okna na ekranie monitora komputerowego – (wartości od 0 do 1)

set(okno3,’color’,[0.2 1 0.5])

Ustawia kolor obiektu RGB

set(okno3,'Resize','on');

Włącza możliwość zmiany wymiaru okna

axes (NIE

UklWsp1=axes('position',[0.1

Wstawia nowy układ współrzędnych do aktywnego okna w AXIS!!!)

0.1 0.8 0.8])

miejscu 0.1; 0.1 i o wielkości 0.8 na 0.8

title, xlabel

title(‘funkcja x’)

Wszystkie parametry wykresów takie same jak poprzednio!

Tworzenike obiektłw GUI (przyciski (wciskane, radiobuttons), napisy okna edycyjne lub suwaki uicontrol

uicontrol(‘style’,’pushbutton’... uicontrol – tworzy obiekty w przykładzie został utworzony

‘position’,[10 10 100 200]...

przycisk w lewym dolnym rogu aktywnego okna, który

‘string’, ‘czyść’...

czyści zawartość aktywnego układu współrzędnych style:

‘callback’,’cla’)

pushbutton, radiobutton, popupmenu, edit, togglebutton, checkbox, text, slider, frame, listbox, popupmenu

uimenu

F=uimenu(‘Label’,’Glowne’)

Tworzy Menu w pasku górnym okna (nazwa: Glowne)

G=uimenu(F,’Label’,’PodmF’)

Tworzy podmenu menu nadrzędnego F (nazwa: PodmF)

Z=uimenu(G,’Label’,’Plot’)

Tworzy podmenu menu nadrzędnego G (nazwa: Plot)

Callback

Z=uimenu(‘Callback’,’MF.m’)

Wykonuje komendy zapisane w lini (tu uruchamia MF.m)

uigetfile

[nazwa]=uigetfile('*.*');

Gotowa funkcja do otwierania plików

uiputfile

[N]= uiputfile ('*.*',’Zapisz’);

Gotowa funkcja do zapisywania plików

reset

reset(okno3)

Przywraca domyślne własności obiektu „okno3”

2

Przedmiot: INFORMATYKA – Katedra Robotyki i Mechatroniki AGH

Laboratorium 3 „ MATLAB – Graficzny Interfejs Uż ytkownika”

delete

delete(okno3), delete(2)

Usuwa obiekt o danym identyfikatorze

clf

clf; clf reset;

Czyści aktywny rysunek usuwając grafikę

clf reset;

j.w. ale ustawia domyślne parametry

cla

cla; cla reset;

Usuwa obiekty z aktywnego układu współrzędnych

III.

ZADANIA DO WYKONANIA:

Uwaga: Każ de zadanie wykonać w osobnym m-pliku.

1. Napisz program komunikujący się z użytkownikiem w oknie głównym MATLABA. Każda osoba ma za zadanie wykonać polecenie z tabeli poniżej. Numer polecenia jest zgodny z numerem komputera, przy którym siedzi dana osoba. Program ma rysować wykres żądanej funkcji (patrz tabela), przy czym zadanie Tekstowego Interfejsu Użytkownika opierać się ma na pytaniu o zadane parametry wykresu. Jako komunikat MATLABA należy wypisać na ekranie, co oznaczają poszczególne zmienne. Parametry, o które program nie będzie pytał, należy przyjąć dowolnie, ale w taki sposób, aby wykres był widoczny. Rysowane wykresy powinny być opisane (tytuł, oś x, oś y) a jednostki na osiach x oraz y powinny być zgodne z wprowadzonymi parametrami.

1

sin(at+b); zm.:a=?; b=?; t=[od..do]=?

9

cos(at+b); zm.:a=?; b=?; t=[od..do]=?

2

sin2(at+b); zm.:a=?; b=?; t=[od..do]=?

10

cos2(at+b); zm.:a=?; b=?; t=[od..do]=?

3

sin3(at+b); zm.:a=?; b=?; t=[od..do]=?

11

cos3(at+b); zm.:a=?; b=?; t=[od..do]=?

4

sin5(at+b); zm.:a=?; b=?; t=[od..do]=?

12

cos5(at+b); zm.:a=?; b=?; t=[od..do]=?

5

arctan(at+b); zm.:a=?; b=?; t=[od..do]=?

13

ax2+bx+c; zm.:a=?; b=?; c=?; t=[od..do]=?

6

arctan2(at+b); zm.:a=?; b=?; t=[od..do]=?

14

ax3+bx+cx; zm.:a=?; b=?; c=?; x=[od..do]=?

7

arctan3(at+b); zm.:a=?; b=?; t=[od..do]=?

15

ax4+bx+c; zm.:a=?; b=?; c=?; x=[od..do]=?

8

arctan4(at+b); zm.:a=?; b=?; t=[od..do]=?

16

ax3+bx2+c; zm.:a=?; b=?; c=?; x=[od..do]=?

a=? – tzn. parametr „a” wykresu jest niewiadomą i użytkownik jest pytany przed wykreśleniem wykresu o jego wartość.

t=[od..do] – tzn. użytkownik pytany jest w jakim zakresie zmiennej „t” należy narysować żądaną funkcję.

2. Do wyżej wymienionego zadania zbuduj graficzny interfejs użytkownika, który będzie umożliwiał

wprowadzanie danych w polach typu „EDIT”, będzie zawierał przycisk (dowolny) służący do wyświetlania wykresu oraz przycisk „wyczyść wykres”, który będzie czyścił zawartość pola z wykresem. Może również zawierać menu rozwijalne na górnym pasku okna z tymi samymi funkcjami, które będą używane poprzez przyciski oraz dodatkowymi informacjami na przykład informacje o programie. Okno programu powinno być zatytułowane imieniem i nazwiskiem osoby oddającej sprawozdanie oraz powinno mieć numer komputera, przy którym siedzi dana osoba.

3. Zbuduj okno z graficznym interfejsem użytkownika spełniające zadania opisane poniżej. Zamieść widok okna w sprawozdaniu.

− Okno programu misi mieć tytuł taki jak imię i nazwisko autora.

− Okno powinno mieć 3 zakładki: 2 z funkcjami programu (wczytaj plik, rysuj wykres) a jedna z informacją o autorze oraz o programie (Imię Nazwisko autora, informacje o programie oraz o tym jakie funkcje on wykonuje - krótko).

− Okno powinno mieć w dowolnym miejscu przycisk „czyść”- który czyści zawartość wyświetlonych wykresów.

− Zadaniem programu jest wczytanie z dysku dowolnego pliku w formacie graficznym JPG a następnie wyświetlenie na 4 wykresach w oknie kolejno: wczytanego obrazka, składowej R obrazka, składowej G

oraz składowej B (zgodnie z zadaniem wykonywanym w poprzednim ćwiczeniu).

3

Przedmiot: INFORMATYKA – Katedra Robotyki i Mechatroniki AGH

Laboratorium 3 „ MATLAB – Graficzny Interfejs Uż ytkownika”

IV.

SPRAWOZDANIE:

W sprawozdaniu należy zamieścić wszystkie zrealizowane w punkcie III zadania. Każde zadanie powinno być zatytułowane i ponumerowane, zgodnie z numeracją w instrukcji. Jeżeli jest to wymagane to sprawozdanie powinno zawierać metodę wykonania i wynik w postaci rysunku lub listingu. W sprawozdaniu nie umieszczamy wniosków, chyba że jest to wyraźnie zaznaczone.

Ogólne uwagi dotyczące sprawozdania:

• Strona tytułowa, powinna zawierać: Imiona i nazwiska osób, numer grupy, nazwę przedmiotu, tytuł

ćwiczenia, numer ćwiczenia i datę wykonania ćwiczenia,

• Układ strony powinien być następujący: marginesy 0,5 cm z każdej strony, czcionka 10, odstęp 1.

• Wykresy możliwie małe, ale czytelne, opisane i umieszczone bezpośrednio pod lub obok układu tak, żeby było wiadomo, który przebieg należy do którego układu,

• Sprawozdanie nie powinno być długie, ale powinno zawierać wszystkie niezbędne informacje.

Uwaga: Sprawozdanie należ y przesyłać na pocztę lub wskazany przez prowadzą cego serwer FTP w formacie PDF zatytułowane w nastę pują cy sposób:

NumerGrupy_Nazwisko_Imię _ć wNumerCwiczenia.pdf na przykład:

13_Kowalski_Jan_ć w1.pdf

14_Nowak_Krzysztof_ć w9.pdf

15_Student_Janusz_ć w8.pdf

Sprawozdania oddane w innej formie lub z nieprawidłowym opisem nie bę dą przyjmowane!

UWAGA:

Do sprawozdania należy dołączyć m-pliki zbudowane w trakcie wykonywania ćwiczenia, przy czym każdy z m-plików powinien zawierać w opisie (w komentarzu lub wyświetlone na ekranie) nazwisko autora. M-pliki należy wgrać na serwer spakowane do folderu ZIP o nazwie identycznej z nazwą sprawozdania.

4