Výpočetní technika II - Algoritmizace v systému MATLAB Aktualizace: 31. prosince 2000


Navigační menu
  Vysvětlivky
  Obsah
  Kapitola 1: Matlab
       Kapitola 1.1: Úvod
       Kapitola 1.2: Režimy práce
  Kapitola 2: Skaláry, vektory, matice
       Kapitola 2.1: Operace
       Kapitola 2.2: Funkce
       Kapitola 2.3: Submatice
  Kapitola 3: Vytváření funkcí
  Kapitola 4: Větvení a rozhodování
  Kapitola 5: While cyklus
  Kapitola 6: For cyklus
  Kapitola 7: Objekty a 2-D grafika
  Kapitola 8: 3-D grafika
  Kapitola 9: Datové soubory
       Kapitola 9.1: Ukládání do souboru
       Kapitola 9.2: Načtení ze souboru
       Kapitola 9.3: Import dat z Excelu
  Kapitola 10: Symbolická matematika
  Kapitola 11: Řešení rovnice f(x)=0
  Kapitola 12: Soustavy lineárních rovnic
  Kapitola 13: Minimum funkce f(x)
  8. 3D grafika  

 
  • Používá se pro zobrazení funkcí dvou proměnných z=f(x,y)
  • Souřadnice jednotlivých bodů funkce se generují pomocí příkazu meshgrid
  • Možností zobrazení v 3D je mnoho – viz příklad, příkazy: plot3, mesh, meshc, surf, surfc, surfl, surface
  • Příkaz surface tvoří objekt, s kterým mohu pracovat dále tak, jako s jinými objekty, tj. měnit jeho vlastnosti...
  • Průmět do roviny x,y se dělá pomocí příkazu contour (výsledkem jsou jakési "vrstevnice")
  • Barvy: každá z barev je definována kombinací 3 základních barev (červená – zelená – modrá) v rozsahu <0;1>
  • Aplikace barev pomocí příkazu colormap, škála pomocí příkazu colorbar
 

  Příklad 8A.1:  
 
% f(x,y)=-x exp(-x^2-y^2)
% x=-2:.1:2, y=-2:.1:2
clear all, close all
[x,y]=meshgrid(-2:.1:2); % generace bodu
z=-x.*exp(-x.^2-y.^2); % definice funkce
% nejjednodussi a nejmene hezke, carove zobrazeni
  plot3(x,y,z), pause
% zobrazeni v barvach
  mesh(x,y,z),title('graf fce'),xlabel('x'),ylabel('y')
% změna barevne skaly
  pause, colormap([0 0 1]) % modry
% navíc prumet do roviny x,y
  pause, figure, meshc(x,y,z)
% povrch, vypada jako pevne teleso
  pause, figure,surf(x,y,z)
% a jeste prida prumet do roviny x,y
  pause, surfc(x,y,z)
% totez, ale s urcitym nasvetelenim objektu, default 45 stupnu
  pause, surfl(x,y,z)
% vlastni nasvetleni pomoci s=[azimut, elevace]
  pause, s=[80,10]; surfl(x,y,z,s)
% lze vtvorit surface jako objekt a dal s nim pracovat
  s1=surface(x,y,z); get(s1)
% prumet do roviny
  contour(x,y,z)
 
 
  Příklady pro samostatné vypracování  
  Příklad 8B.1:  
  Graficky znázorněte funkci f(x,y)=-x exp(-x2-y2) pro x <-2;2> a x <-2.5;2.5>. Ve zvláštním grafu v témž okně zobrazte vrstevnicové znázornění.  
 
  Příklad 8B.2:  
  Graficky znázorněte funkci f(x,y)=2^(x2+y2) pro x,y <-1;1>. Zvolte novou paletu barev složenou ze tří základních barev.  
 
  Příklad 8B.3:  
  Graficky znázorněte funkci f(x,y)=exp(-x2)+exp(-y2) pro x <-2;2> a y <-2.5;2.5>. Ve zvláštním grafu v témž okně zobrazte vrstevnicové znázornění s popisem vrstevnic.  
 
  Příklad 8B.4:  
  Graficky znázorněte funkci f(x,y)=exp(x2)+exp(y2) pro x <-2;2> a y <-2.5;2.5>. Ve zvláštním grafu v témž okně zobrazte vrstevnicové znázornění s popisem vrstevnic.  
 
  Příklad 8B.5:  
  Graficky znázorněte funkci f(x,y)=2/(5+3x2+4y2) pro x,y <-5;5>. Zvolte novou paletu barev složenou z šesti vámi definovaných barev.  
 
  Příklad 8B.6:  
  Graficky znázorněte funkci f(x,y)=x2+xy+y2-3x-6y, pro x,y <-5;5>. Ve zvláštním grafu v témž okně zobrazte vrstevnicové znázornění.  
 
  Příklad 8B.7:  
  Graficky znázorněte funkci f(x,y)=x3+y3-3xy, pro x <0;2> a y <-1;2>. Ve zvláštním grafu v témž okně zobrazte vrstevnicové znázornění.  
 
  Seznam použitých příkazů  
  meshgrid, colormap, colorbar, plot3, mesh, meshc, surf, surfc, surfl, surface, contour  



© 2000 by Darina Bártová, Jaromír Kukal, Martin Pánek

Testováno v prohlížečích MSIE 5.x a NN 4.x při rozlišení 1024x768x256