Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

PROJEKTOWANIE GRAFICZNE

Podobne prezentacje


Prezentacja na temat: "PROJEKTOWANIE GRAFICZNE"— Zapis prezentacji:

1 PROJEKTOWANIE GRAFICZNE
MATLAB PROJEKTOWANIE GRAFICZNE

2 Funkcje graficzne można podzielić na cztery podstawowe grupy:
przeznaczone do tworzenia wykresów dwu- i trójwymiarowych, prezentujące wykresy ciągłe i dyskretne, umożliwiające tworzenie grafiki wektorowej i rastrowej, wysokiego i niskiego poziomu.

3 tworzy nowe okno graficzne i uaktywnia je figure(n)
OKNA GRAFICZNE Funkcja Opis figure tworzy nowe okno graficzne i uaktywnia je figure(n) uaktywnia okno o nr n lub tworzy nowe i daje mu nr n close zamyka okno aktywne close(n) zamyka okno o nr n close all zamyka wszystkie okna clf usuwa zawartość aktywnego okna

4 Funkcja subplot Funkcja ta umożliwia umieszczanie wielu
rysunków w jednym oknie. Dzieli ona okno na mniejsze prostokątne okienka, w których można narysować odrębne wykresy. subplot(m,n,p) – dzieli okno graficzne na mxn okienek oraz uaktywnia okno p. okienka są numerowane od lewej do prawej, wierszami od góry do dołu. subplot(‘Position’,[lewy dolny szerokość wysokość]) – tworzy w obrębie aktywnego rysunku nowe prostokątne okienko o podanym położeniu i wymiarach. Położenie jest podawane względem lewego dolnego rogu rysunku. Parametry szerokość=wysokość=1 oznaczają układ o rozmiarach rysunku.

5 Grafika dwuwymiarowa Polecenie Opis plot(x,y)
rysuje wykres elem.wektora y wzgl.elem.wektora x; plot(y) rysuje wykres elem.wektora y, przyjmując x=1:length(y); plot(x,y,s) rysyje wykres y(x) z określeniem dokładnego wyglądu linii; s-łańcuch zawierający kody; plot(x1,y1,x2,y2,...) rysuje w jednym oknie wiele wykresów: y1(x1), y2(x2),... plot(x1,y1,s1,x2,y2,s2,..) rysuje w jednym oknie wiele wykresów z określeniem dokładnego wyglądu linii każdego z nich.

6 Znaki Rodzaj linii ‘-’ ciągła (domyślna) ‘- -’ kreskowana ‘:’ kropkowana ‘-.’ kreska-kropka

7 Znaki Kolor linii ‘y’ żółty ‘m’ karmazynowy ‘c’ turkusowy ‘r’ czerwony ‘g’ zielony ‘b’ niebieski ‘w’ biały ‘k’ czarny

8 gwiazdka pięcioramienna ‘h’ gwiazdka sześcioramienna ‘v’
Znaki Oznaczenia punktów ‘+’ krzyżyk ‘*’ gwiazdka ‘.’ kropka ‘o’ kółko ‘x’ iks ‘s’ kwadrat ‘d’ romb ‘p’ gwiazdka pięcioramienna ‘h’ gwiazdka sześcioramienna ‘v’ trójkąt skierowany do dołu ‘^’ trójkąt skierowany do góry ‘<‘ trójkąt skierowany w lewo ‘>’ trójkąt skierowany w prawo

9 Funkcja linspace Funkcja ta pomaga w tworzeniu danych do wykresu. linspace(x1,x2,N) – generuje wierszowy wektor N liczb rozłożonych równomiernie w przedziale od x1 do x2. linspace(x1,x2) – generuje domyślnie 100 liczb z przedziału x1 do x2.

10 Funkcje opisujące wykresy
Funkcja Opis xlabel(tekst) wyświetla łańcuch znaków tekst jako opis osi x aktywnego wykresu ylabel(tekst) wyświetla łańcuch znaków tekst jako opis osi y aktywnego wykresu title(tekst) wyświetla łańcuch znaków tekst jako tytuł aktywnego wykresu text(x,y,tekst) wyświetla łańcuch znaków tekst w miejscu określonym przez współrzędne x,y legend(s1,s2,..) wyświetla legendę; łańcuch znaków s1 jest opisem odnoszącym się do pierwszego wykresu,s2-drugiego,... grid on/off włącza/wyłącza wyświetlanie pomocniczej siatki współrzędnych

11 Funkcja hold Wyświetlanie wykresu w oknie graficznym powoduje
jednoczesne wyczyszczenie okna i usunięcie poprzedniego rysunku. Dodanie wykresu do znajdującego się w oknie umożliwia funkcja hold. hold on/off – wyłącza/włącza tryb czyszczenie okien; ishold – sprawdza stan przełącznika hold; axis – zmiana wyglądu osi.

12 axis([xmin xmax ymin ymax]) ustawia zakres osi x i y axis auto
Polecenie Opis axis([xmin xmax ymin ymax]) ustawia zakres osi x i y axis auto włącza tryb automatycznego ustawiania zakresu osi axis manual włącza tryb autom.ustawienia zakresu osi; po włączeniu przełącznika hold wszystkie kolejne wykresy będą rysowane w takim samym układzie współrzędnych axis ij zmienia układ współ.na macierzowy axis xy zmienia układ współ.na kartezjański axis equal zmienia skalowanie osi tak, aby jednostka na podziałce miała ten sam rozmiar na wszystkich osiach

13 zmienia rozmiary osi na takie same, jak rozmiary wykresu axis square
axis image zmienia rozmiary osi na takie same, jak rozmiary wykresu axis square ustawia jednakowy rozmiar wszystkich osi axis normal przywraca standardowe ustawienia rozmiaru osi axis off ukrywa osie wraz z ich opisem axis on przywraca wyświetlanie osi [s1,s2,s3]=axis(‘state’) zwraca aktualne ustawienia układu:s1-auto lub manual, s2-on lub off,s3-xy lub ij v=axis zwraca wektor wierszowy v=[xmin xmax ymin ymax]

14 Funkcja fplot Z tej funkcji korzystamy w celu narysowania możliwie najbardziej precyzyjnego wykresu funkcji. fplot(f,[x0,xk]) f-łańcuch znaków zawierających nazwę funkcji; x0,xk-początek i koniec przedziału rysowania funkcji; [x,y]=fplot(...) – nie powoduje narysowania wykresu, tylko zwraca wektor argumentów x i wektor wartości funkcji y. Wykres uzyskanych danych można narysować za pomocą polecenia plot(x,y).

15 Wykresy w skali logarytmicznej
Funkcja Opis loglog(x,y,s) rysuje wykres, używając skal logarytmicznych na obu osiach semilogx(x,y,s) ...tylko na osi x semilogy(x,y,s) ...tylko na osi y

16 Funkcja logspace Pomaga w przygotowywaniu wykresów w skali
logarytmicznej. Generuje wektor wierszowy N liczb, rozmieszczonych logarytmicznie między wartościami 10^x1 a 10^x2: logspace(x1,x2,N). Wywołanie funkcji bez argumentu N spowoduje wygenerowanie wierszowego wektora 50 liczb.

17 Funkcja polar Funkcja ta służy do rysowania wykresów w
biegunowym układzie współrzędnych: polar(theta,r,s); theta – wektor kątów (w radianach) dla poszczególnych punktów; r – wektor odległości poszczególnych punktów od początku układu współrzędnych. Opcjonalnym argumentem funkcji jest łańcuch znaków s, określający wygląd rysowanej linii, jak przy funkcji plot.

18 Funkcje rysujące wykresy danych zespolonych
Funkcja Opis plot(z,s) jeżeli z jest macierzą o elementach zespolonych, to zostanie narysowany wykres Im(z)=f(Re(z)); równoważne polecenie: plot(real(z),imag(z),s) compass(z,s) compass(x,y,s) rysuje wykres, na którym elementy macierzy zespolonej z są przedstawione w postaci strzałek o wspólnym początku i grotach w punktach opisanych przez współrzędne x=real(z), y=imag(z); x i y są współrzędnymi kartezjańskimi, wykres jest rysowany w biegunowym układzie współrzędnych

19 feather(z,s) feather(x,y,s) rysuje wykres, na którym elementy macierzy zespolonej z są przedstawione w postaci strzałek o początkach rozmieszczonych równomiernie na osi x; długości strzałek są równe modułom elementów macierzy z, a kąty nachylenia strzałek – ich argumentom.

20 GRAFIKA TRÓJWYMIAROWA
Matlab zawiera dużą liczbę wbudowanych funkcji służących do wizualizacji obiektów trójwymiarowych. Zapoznamy się min. z potrzebnymi do tworzenia wykresów krzywych przestrzennych (plot3), siatek (mesh), powierzchni (surf) oraz wykresów konturowych (contour). Aby uzyskać w Matlabie pomoc na temat funkcji 3D należy w oknie komend wydać komendę help graph3d.

21 Funkcja plot3 Polecenie plot3(x,y,z,s) generuje trójwymiarową krzywą złożoną z punktów (xi, yi, zi), których współrzędne zostały określone w wektorach x, y, z. Wektory muszą być tej samej długości. Funkcja ta jest odpowiednikiem funkcji plot w grafice dwuwymiarowej.

22 Ćw.1 Wykonaj wykres funkcji r(t)=< t*cos(t), t*sin(t), t >, t=-10*pi:pi/100:10*pi. Podpisz osie, włącz siatkę.

23 Funkcja meshgrid Powierzchnia rysowana jest w Matlabie jako wykres funkcji z=f(x,y), przy czym współrzędne punktów (xi,yi) określone są za pomocą wektorów X i Y, gdzie indeksy ij przyjmują wartości i=1:length(X), j=1:length(Y). Ponieważ tworzymy wykres trójwymiarowy na dwuwymiarowej płaszczyźnie ekranu, na początek należy wygenerować specjalną siatkę na płaszczyźnie XY w tych węzłach, w których szukane są wartości funkcji w osi z. Służy do tego funkcja meshgrid.

24 [x,y]=meshgrid(X,Y) – transformuje obszar opisany przez wektory X i Y (z przestrzeni 3D) na dwie macierze x oraz y we współrzędnych ekranowych 2D. [x,y]=meshgrid(X) – jest równoważne wywołaniu meshgrid(X,X).

25 Funkcja mesh mesh(x,y,z,c) –rysuje powierzchnię opisaną macierzami x,y,z w postaci kolorowej siatki o polach wypełnionych kolorem tła; elementy macierzy c określają kolory linii poszczególnych pól. mesh(x,y,z)-rysuje powierzchnię, przyjmując c=z. mesh(z,c)-rysuje wykres wartości elementów macierzy z, przyjmując x=1:n, y=1:m, gdzie [m,n]=size(z). meshc(x,y,z,c)-rysuje siatkę identyczną jak funkcja mesh i umieszcza pod nią wykres poziomicowy. meshz(x,y,z,c)-działa jak mesh, ale dodatkowo w dół od krawędzi wykresu rysowane są linie określające płaszczyzny odniesienia.

26 Ćw.2 Utwórz wykres paraboloidy hiperbolicznej z=y2-x2 w przedziałach x=-1:0.05:1, y=-1:0.05:1. Wyłącz układ współrzędnych, dodaj wykres konturowy.

27 Funkcja surf, waterfall
surf(x,y,z,c) –rysuje różnokolorową powierzchnię opisaną macierzami x,y,z. surf(x,y,z) –rysuje powierzchnię, przyjmując c=z. surf(z,c) –rysuje powierzchnię, przyjmując x=1:n, y=1:m, gdzie [x,y]=size(z). surfc(x,y,z,c) –łączy działanie funkcji surf i contour. surfl(x,y,z,s,k) –rysuje powierzchnię z uwzględnieniem odbić światła; s-określa kierunek, z którego pada światło, k-określa współczynniki odbicia i rozproszenia. waterfall(x,y,z,c) –działa jak meshz, ale nie rysuje linii odpowiadających kolumnom macierzy.

28 Ćw.3 Napisz skrypt, który rysuje wykresy funkcji: f(x,y)=exp(-(x-1).^2+y.^2)+exp(-(x+1).^2-y.^2) dla x,y=-3:0.3:3, w jednym oknie graficznym za pomocą poleceń surf i waterfall.

29 Mapy kolorów Mapa kolorów jest macierzą trójkolumnową, której elementami są liczby rzeczywiste z zakresu 0,0-1,0. Każdy wiersz macierzy jest wektorem RGB definiującym dany kolor za pomocą intensywności trzech podstawowych kolorów:czerwonego, zielonego i niebieskiego. Funkcja colormap pozwala odczytać lub zmienić mapę kolorów przypisaną aktywnemu rysunkowi. m=colormap –zwraca aktualną mapę kolorów m. colormap(m) –zmiana aktualnej mapy kolorów na mapę m. colormap(‘default’) –przywraca standardową mapę kolorów.

30 Mapa Opis gray mapa odcieni szarości hot mapa kolorów ciepłych – od czarnego, poprzez odcienie czerwonego, pomarańczowego i żółtego, aż do białego cool mapa kolorów zimnych – od turkusowego do karmazynowego autumn mapa kolorów zmieniających się od czerwonego, przez pomarańczowy, do żółtego summer mapa odcieni kolorów żółtego i zielonego hsv standardowa mapa kolorów w systemie HSV; każdy wiersz macierzy zawiera 3 liczby z zakresu od 0 do 1 opisujące odcień, nasycenie i jaskrawość

31 Animacja %skrypt film m=moviein(5); %w macierzy m będzie przechowywanych 5 klatek animacji x=0:pi/100:pi; for i=1:5 h1_line=plot(x,sin(i*x)); set(h1_line,'LineWidth',1.5,'Color','m') grid title('funkcja sinus sin(kx), k=1,2,3,4,5') h=get(gca,'title'); set(h,'FontSize',12) xlabel('x')

32 pause(2) k=num2str(i); if i>1 s=['sin(',k,'x)']; else s='sin(x)';
end ylabel(s) h=get(gca,'ylabel'); set(h,'FontSize',12) m(:,i)=getframe; %każda klatka jest zapisywana w pojedynczej kolumnie macierzy m pause(2) movie(m) %odgrywa zapamiętane w macierzy m klatki animacji na ekranie

33 Funkcje shpere i cylinder
sphere(n) – tworzy kulę o promieniu 1 oraz środku w początku układu współrzędnych z wykorzystaniem 2(n+1) punktów siatki tworzącej jej powierzchnię. Dodanie polecenia: surf(x+2,y-1,z+1) utworzy wykres kuli o promieniu 1 ze środkiem w punkcie (2,-1,1)

34 Funkcja cylinder jest wykorzystywana do tworzenia wykresów powierzchni obrotowych. Pobiera ona dwa opcjonalne parametry wejściowe. W komendzie cylinder(r,n) parametr r oznacza wektor, który definiuje promienie walca w kolejnych punktach wzdłuż osi z, a n oznacza liczbę punktów siatki na obwodzie walca. Wartości domyślne dla tych parametrów to r =[1 1] oraz n=20. Komenda: cylinder([1 0]) tworzy stożek o wysokości i promieniu podstawy równym 1.


Pobierz ppt "PROJEKTOWANIE GRAFICZNE"

Podobne prezentacje


Reklamy Google