6.5.3. Жарықтандырылған беттің құрылуы Ең шынайы көріністі координаталық жүйенің белгілі бір жерінде орналасқан нүктелік жарық көзінен жарықтандыруды модельдейтін беттердің графикасы береді. Графиктер жарықтың дисперсиясының, шағылысуының және айнаның шағылысуының оптикалық әсерлерін модельдейді. Мұндай диаграммаларды алу үшін surfl пәрмені қолданылады:
* surfl (...) surf (...) командасына ұқсас, бірақ жарық көзінен жарықтандырылған беттің графигін жасайды;
* surfl(Z,S) немесе surfl (X,Y,Z,S) жарық көзінен жарықтандырылған беттің графигін жасайды, оның декарттық координаттар жүйесіндегі орны s=[Sx,Sy,Sz] векторымен, ал сфералық координаттар жүйесінде s=[AZ,EL]векторымен белгіленеді.
* surfl (...,'light') light нысанын қолдана отырып, жарықтандыру түсін орнатуға мүмкіндік береді;
* surfl(...,'cdata') тұрғызу кезінде шағылысу әсерін көрсетеді;
* surfl (X,Y,Z,S,K) k=[ka, kd,ks,spread] векторымен берілген параметрлердің беттік құрылысын анықтайды, мұндағы ka - артқы жарық коэффициенті, kd - диффузиялық шағылысу коэффициенті, ks-айна шағылысу коэффициенті және spread-жылтырлығы коэффициенті;
* H=surfl (...) бетті жасайды және беттік дескрипторлар мен жарық көздерін қайтарады.
S векторы азимут пен Биіктіктің бұрыштарын 45°етіп орнатады. Cla, hold on, view(AZ,EL), surfl(...) және hold off командаларын қолдана отырып, жарықтандыруды басқарудың қосымша мүмкіндіктерін алуға болады. Параметрлік беттердің ішкі және сыртқы жақтарын анықтау үшін X, Y және Z матрицаларындағы нүктелерді ретке келтіруге сүйену керек. Егер сіз осы команданың нәтижесін ұнатпаған болсаңыз,матрицаларды ауыстырып,surfl(X', Y', Z') қолданып көріңіз. Беттік қалыпты векторларды есептеу үшін surfl кем дегенде 3×3 өлшемді матрицаның дәлелдерін талап етеді.
Төменде surfl командасын қолдану мысалы келтірілген:
[X,Y]=meshgrid([-3:0.1:3]);
Z=sin(X)./(X.^2+Y.^2+0.3);
surfl(X,Y,Z);
colormap(gray)
shading interp;
colorbar
Сур. 6.29. Нүктелік көзді жарықтандыруды имитациялай отырып, бетінің графигі
Бұл суретті 6.26,суретпен салыстырыңыз, ол суретте беті оның жарықтандыруына еліктемей салынған.