8.4 ImplicitnЁЄ plochy, vѓ0 5Ѓ0 8kovЁў pole, matematickё funkce 8.4.1 ImplicitnЁЄ plochy Jsou definovёўny hustotou Ѓ0Ќ0Ёўstic v danё oblasti, plocha se vytvoѓ0 0ЁЄ, pokud hustota pѓ0 0ekroЃ0Ќ0ЁЄ zadanou hodnotu (prёўh - threshold). V PovRAY umoѓ0 6Ёѕuje prёўci s implicitnёєmi plochami objekt blob. VytvЁўЃ0 0ЁЄme jej z komponent - koule a vёўlce, jimѓ0 6 kromё obvyklѓ0 5ch parametrѓ0 1 (stѓ0 0ed, polomё r) pѓ0 0idЁўvЁўme dalѓ0 8ЁЄ parametr - strength (intenzita, sёєla) obvykle 1, povoleny jsou i zёўpornё hodnoty - sёєla jednё komponenty odebёєrёў Ѓ0Ќ0Ёўstice druhё. Jsou doplnё nёєm mnoѓ0 6inovЃ0 5ch operacёє, kterё sice neumoѓ0 6Ёѕuje vytvoѓ0 0enЁЄ numericky naprosto pѓ0 0esnЃ0 5ch ploch, zato vizuёўlnё obvykle velmi zdaѓ0 0ilЃ0 5ch. blob { threshold hodnota komponenta komponenta... PЃ0 0. ImplicitnЁЄ plocha tvoѓ0 0enЁў vёўlcovou a dvojicёє kulovѓ0 5ch komponent. camera{location -3*z look at 0 light source{-10*z color rgb 1 light source{< 100, 0, Ѓ6У1100 > color rgb.7 shadowless blob { threshold 0.6 cylinder{<.75, Ѓ6У1.65, 0 >, <.75,.65, 0 >, 1, 1 pigment{color Red sphere{< Ѓ6У1.37,.65, 0 >, 1, 1 pigment{color Green sphere{< Ѓ6У1.37, Ѓ6У1.65, 0 >, 1, 1 pigment{color Blue 8.4.2 VЃ0 5Ѓ0 8kovЁ pole SЁЄtЎЇ trojёіhelnёєkѓ0 1, jejichѓ0 6 vѓ0 5Ѓ0 8ky (y kё ty) vrcholѓ0 1 se vypoѓ0ќ0ёєtajёє na zёўkladё informacёє naѓ0ќ0tenѓ0 5ch z externёєho souboru tvoѓ0 0ЁЄ v PovRAY objekt hight field. Jako zdrojovѓ0 5 soubor mѓ0 1Ѓ0 6eme pouѓ0 6ЁЄt libovolnѓ0 5 Ѓ0Ќ0ernobЁЄlЃ0 5 (barevnѓ0 5 bude konvertovёўn na Ѓ0Ќ0ernobЁЄlЃ0 5) obrёўzek formёўtu gif, tga (u jinѓ0 5ch formёўtѓ0 1 mѓ0 1Ѓ0 6e dojёєt ke komplikacёєm zpѓ0 1sobenЃ0 5ch komprimacёє). RozmЁ ry obrёўzku nejsou podstatnё, nebotўї PovRAY na jeho zёўkladё vytvoѓ0 0ЁЄ vѓ0 5Ѓ0 8kovЁ pole vepsanё do jednotkovё krychle, kterё do potѓ0 0ebnЃ0 5ch rozmё rѓ0 1 upravёєme pomocёє scale. Jak uѓ0 6 nёўzev napovёєdёў, vѓ0 5Ѓ0 8kovЁў pole se pouѓ0 6ЁЄvajЁЄ k modelovёўnёє terё nu. Jako zdrojovё obrёўzky mohou slouѓ0 6it mapy povrchu, u kterѓ0 5ch vrstevnice nahradёєme oblastmi s rѓ0 1znou intenzitou Ѓ0 8edЁ (bёєlёў = 1, Ѓ0Ќ0ernЁў = 0). DlouhЁў, Ѓ0Њ9ervenka 2013 75 VЃ0 7B-TU Ostrava
KAPITOLA 8. 3D GEOMETRIE V POVRAY height field{ format obrazku Ў±nazev obrazkuў± water level hodnota //odrezani spodni casti smooth //vyhlazeni povrchu [OBJECT MODIF IERS] camera {location < 30, 50, Ѓ6У140 > look at < 70, 0, 80 > light source{< 0, 100, Ѓ6У1100 > color rgb.8 light source{< 0, 50, 0 > color rgb.5 shadowless background{white height field{ gif Ў±hf-vzor.gifЎ± water level 0.1 smooth pigment{color Red scale< 100, 50, 100 > PoznЁўmka 8.4.1 Bez vloѓ0 6enЁЄ souboru hf-vzor.gif do sloѓ0 6ky, ve kterё se nachёўzёє zdrojovѓ0 5 kё d scё ny, pѓ0 0ЁЄklad nefunguje. DlouhЁў, Ѓ0Њ9ervenka 2013 76 VЃ0 7B-TU Ostrava
MatematickЁ funce Ve spojenёє s cyklem while nёўm umoѓ0 6ЁѕujЁЄ vytvёўѓ0 0et dalѓ0 8ЁЄ rozmanitё plochy a tё lesa. PovRAY dokёўѓ0 6e pracovat s prakticky libovolnou matematickou funkcёє, atўї je zadanёў parametricky nebo implicitnё. Uvedeme zde jenom nё kolik mёўlo ukёўzek. KvadratickЁў funkce camera{location< 0, 5, Ѓ6У115 > look at< 0, 5, 0 > light source{< 0, 25, Ѓ6У125 > color rgb 1 #declare krok = -5; #while (krok < 5) sphere{<krok,krok*krok/3,0>,1 pigment{color Red #declare krok= krok+0.1; Paraboloid camera{location< 0, 5, Ѓ6У115 > look at< 0, 5, 0 > light source{< 0, 25, Ѓ6У125 > color rgb 1 #declare kvadrat = union{ #while (krok < 5) sphere{<krok,krok*krok/3,0>,1 #declare krok= krok+0.1; #while (krok < 24) object{kvadrat rotate 15*krok*y pigment{color Red #declare krok= krok+.1; PoznЁўmka 8.4.2 Hladkost objektu na obrёўzku byla docёєlena nastavenёєm pѓ0 0ЁЄrustku na 0.001. VЃ0 5poЃ0Ќ0et ale trval vёєce neѓ0 6 10 minut na poѓ0ќ0ёєtaѓ0ќ0i s procesorem Intel Q9500 pѓ0 0i 100% zatёєѓ0 6enЁЄ vѓ0 8ech 4 vѓ0 5poЃ0Ќ0etnЁЄch jader. DlouhЁў, Ѓ0Њ9ervenka 2013 77 VЃ0 7B-TU Ostrava
KAPITOLA 8. 3D GEOMETRIE V POVRAY Elipsa VyuЃ0 6ijeme parametrizaci elipsy. camera{location< 0, 10, Ѓ6У18 > look at0 light source{< 0, 10, Ѓ6У115 > color rgb 1 #while (krok < 72) sphere{<7*cos(krok),0,3*sin(krok)>, 1 pigment{color Red PoznЁўmka 8.4.3 VyuЃ0 6itЁЄm goniometrickѓ0 5ch funkcёє mѓ0 1Ѓ0 6eme vytvoѓ0 0it analogii rotace, kdy se nepohybujeme po kruѓ0 6nici ale elipse. Ѓ0 7roubovice Ѓ0 7roubovЃ0 5 pohyb vznikёў sloѓ0 6enЁЄm rovnomё rnё ho posuvnё ho a rotaѓ0ќ0nёєho pohybu. camera{location< 0, 20, Ѓ6У120 > look at< 0, 10, 0 > light source{< 0, 25, Ѓ6У125 > color rgb 1 #while (krok < 18) sphere{<5*cos(krok),krok,5*sin(krok)>, 1 pigment{color Red 8.4.3 Ѓ0 9eЃ0 8enЁ pѓ0 0ЁЄklady Ѓ0 9etЁ zovka JednЁў se o kѓ0 0ivku, kterou vytvoѓ0 0ЁЄ Ѓ0 0etЁ z zavё Ѓ0 8enЃ0 5 na svѓ0 5ch koncёєch nebo napѓ0 0. elektrickё drёўty, zadanou rovnicёє y = a cosh( x ). VytvoЃ0 0ЁЄme model zavё Ѓ0 8enЁЄ visutё ho a mostu. DlouhЁў, Ѓ0Њ9ervenka 2013 78 VЃ0 7B-TU Ostrava
#declare a=50; #declare r=1; #declare d=5; #declare krok = -a; #while (krok <= a+d) // nosne lano (roura) cylinder{<krok,a*cosh(krok/a),0>,<krok+d,a*cosh((krok+d)/a),0>,r pigment{color rgb Red // mostovka cylinder{krok*x,(krok+d)*x,r pigment{color rgb Blue // svisla nosna lana cylinder{<krok,a*cosh(krok/a),0>,krok*x,r/2 pigment{color rgb Yellow #declare krok = krok + d; // posledni svisle lano cylinder{<krok,a*cosh(krok/a),0>,(krok)*x,r/2 pigment{color rgb Yellow camera{orthographic location<0,2*a,-2*a> look at <0,a,0> light source{<a/2,0,-a/2> color rgb.7 light source{-100*z color rgb.5 shadowless DlouhЁў, Ѓ0Њ9ervenka 2013 79 VЃ0 7B-TU Ostrava
KAPITOLA 8. 3D GEOMETRIE V POVRAY VinutЃ0 5 sloupek Je to plocha, kterou vytvoѓ0 0ЁЄ kruѓ0 6nice pѓ0 0i Ѓ0 8roubovЁ m pohybu. camera{location< 0, 20, Ѓ6У125 > look at< 0, 10, 0 > light source{< 0, 10, Ѓ6У125 > color rgb 1 background{color rgb< 1, 1, 1 > // vytvorime kruznici z kulicek, mohli bychom pouzit i elipsu #declare kruh = union{ #while (krok < 48) sphere{< 3 Ѓ6У5 cos(krok), 0, 3 Ѓ6У5 sin(krok) >, 1 // kruznice nechame sroubovat kolem osy y, nastavime i barevny posun #while (krok < 20) object{kruh translate< cos(krok/2), krok, sin(krok/2)ѓ0 7 pigment{color rgb< 1 Ѓ6У1 krok/20, krok/20, 0 > DlouhЁў, Ѓ0Њ9ervenka 2013 80 VЃ0 7B-TU Ostrava
8.4.4 Ѓ0 3lohy k procviѓ0ќ0enёє 1. ZvlnЁ nёў plocha 2. Miska plocha vytvoѓ0 0enЁў z kuliѓ0ќ0ek pomocёє funkcёє sinus, cosinus a posunutёє 3. Cykloida plocha vytvoѓ0 0enЁў z kuliѓ0ќ0ek pomocёє funkce cosinus a rotace 4. Blob kѓ0 0ivka s parametrizacёє c = [rt + dcos(t), r Ѓ6У1 dsin(t)] implicitnёє plocha vytvoѓ0 0enЁў z pё ti koulёє (8.1.5 2. Pyramida z koulёє) 5. Ostrov ostrov vytvoѓ0 0enЃ0 5 pomocёє vѓ0 5Ѓ0 8kovЁ ho pole z obrёўzku vlevo (pѓ0 0ЁЄpadnЁ si vytvoѓ0 0te vlastnёє podklad) DlouhЁў, Ѓ0Њ9ervenka 2013 81 VЃ0 7B-TU Ostrava