Поверхностные модели в системах компьютерной графики

  • Published on
    28-Jul-2015

  • View
    975

  • Download
    2

Transcript

<p>1</p> <p>.. </p> <p>2007</p> <p>2</p> <p> 681.3</p> <p> .. . . : , 2007. 60 . . , . . .</p> <p>3</p> <p> . 1 .. 1.1 1.2 .... ......</p> <p>4 6 6 8 12 12 13 15 18 20 25 29 29 32 38 53 54 54 56 58</p> <p>2 .. 2.1 2.2 2.3 2.4 2.5 2.6 ..... .. .... ...... .... ......</p> <p>3 ........ 3.1 3.2 3.3 ........ ...... ......</p> <p> .. ....... . .... . B- .... . - ...</p> <p>4</p> <p> , , : Photoshop, Corel Draw, . . ( .., ..), , , , . , , , , . , , , , . , , , , , , . . , . . , , , . , , : ( ), . , . (3D2D) . </p> <p>5</p> <p> , , (), . , . . , , . , . [1,,5]. , : jkos@ diamond.stup.ac.ru</p> <p>6</p> <p>1</p> <p>1.1</p> <p> , , </p> <p> (), , , () ( ). . , , ( ) . , . . - . -. . , . , . , . : , , , . , . , , , , . </p> <p>7</p> <p> : , , . , . : , , . , , . , , , . , (), . . (), . , . . , . : , . . -, " " , -, , . . (, , </p> <p>8</p> <p> ), . , . , , .</p> <p>1.2</p> <p> .</p> <p> . [2]: , . , . , , . </p> <p> . , , , . , , . , , , , (" "). , "" , . , </p> <p>9</p> <p>, ( ). , , . , , . . 1.1. -, , . , , . , , . , , .</p> <p> , . , , . , . . . , , , (). . , , .</p> <p>10</p> <p> 1.1 </p> <p>11</p> <p> . , , . () . , , . . . , . , . , , . , , , . , , . , , , , . , -. , . , - . , . . (). , , . - . </p> <p>12</p> <p> . "" , , , , R- [2]. . . , - . , , . , , [1,2,4]. - .</p> <p>2</p> <p>2.1 , : . , , . , 1.2. . , . . , . ( ) , . </p> <p>13</p> <p> ( ), () . , . , . , . . , . , . ( ) , . . . , . 2.2 . , , . , , . ( ) . </p> <p>14</p> <p> . , , . ( ) . , , . , . , , , , -, , . [6,7]. . , ( ). . ( ), . , : , , , [2,7]. . , , . , .. ( ), ( ). </p> <p>15</p> <p> . - , , . ( ). , . [7]. , . . , . , - . .</p> <p>2.3 , . . , . </p> <p>R = R M , R - :</p> <p>(2.1)</p> <p>R= x</p> <p>y z 1;</p> <p>R - (h ):</p> <p>16</p> <p>R = x h</p> <p>y h z h h ;</p> <p>M 44. , ( , ). , . , . (DL), (TR), (RT) (PR) :Mx DL = 0 0 0 t11 RT = t12 t13 0 0 My 0 0 t 21 t 22 t 23 0 t 31 t 32 t 33 0 0 0 Mz 0 0 0 0 1 , PR = 0 0 , 0 1 TR = 1 0 0 x0</p> <p>0 1 0 y0</p> <p>0 0 1 z0</p> <p>0 0 0 1 0 0 1 , zv 1 ,</p> <p>1 0 0 0 1 0 0 0 0 0 0 0</p> <p>(2.2)</p> <p> M x , M y , M z ; x0 , y0 , z0</p> <p> , </p> <p> ;</p> <p>t11 ,..., t33 ; zv .</p> <p> : x ( ), y () z (). . : . . </p> <p>17</p> <p> , -. x y, y z, z x , . . , ( zv) , , . :1 RTX = 0 0 sin cos 0 0 0 , 0 1 0 cos 0 sin 0 0 cos 0 RTY = sin 0 0 sin 1 0 0 cos 0 0 0 0 , 0 1 cos sin RTZ = 0 0 sin cos 0 0 0 0 1 0 0 0 . 0 1</p> <p> :1 0 0 cos RTX = 0 sin 0 0 0 sin cos 0 0 0 , 0 1 cos 0 RTY = sin 0 0 sin 1 0 0 cos 0 0 0 0 , 0 1 cos sin RTZ = 0 0 sin cos 0 0 0 0 1 0 0 0 . 0 1</p> <p> M, , () . . , (xp,yp,zp) : 1) , (xa,ya), 2) . RTZ z, , RTZ . (xa ),(ya), . . </p> <p>TR1. , , (+xa),(+ya) TR2. </p> <p>18</p> <p> , </p> <p>PR. (2.1), :1 TR1 = 0 0 xa 0 1 0 ya 0 0 1 0 0</p> <p>M=TR1RTTR2PR. 1 0 1 0 ya 0 0 1 0 cos 0 sin , RTZ = 0 0 1 0 0 sin cos 0 0 0 0 1 0 0 0 . 0 1</p> <p> :0 0 , TR 2 = 0 0 1 xa</p> <p>2.4</p> <p> , , . , ( ) . , . L , , N , . , . , L N :</p> <p>cos =</p> <p>LN . LN</p> <p> sgn( L N ) &gt; 0 , .</p> <p> L N :L N = l x nx + l y n y + l z nz ,</p> <p> lx, ly, lz nx, ny, nz L N , .</p> <p>19</p> <p> , . , . lx=ly=0, lz= L . F(x,y,z), . , :F(x,y,z)=Ax+By+Cz+D,</p> <p> A,B,C,D , . nz nz = F =C z</p> <p> vp : vp=sgn . , . [6,7]. . , . z- ( ) , () . , ( ). , , . , , . , , </p> <p>20</p> <p> , , . z-</p> <p>. .2.5 </p> <p> , , . . (, ) , , </p> <p> , . ( ), . , "" . . , (, , .). . -. . , . 22, . , . </p> <p>21</p> <p> , . . , , . , . . , . ( ) . , . . . , . , , . u,v.t vb</p> <p> 2.1 </p> <p>, s,t, ,</p> <p>1</p> <p>1</p> <p>b</p> <p>0 a 0</p> <p>c</p> <p>0.5 </p> <p>1</p> <p>s</p> <p>0 a 0 </p> <p>c</p> <p>1</p> <p>u</p> <p> 2.1 : () () ()</p> <p>22</p> <p>, . , , 2.1, s = Au + Bv + C , t = Du + Ev + F ,</p> <p>(2.3) (2.4) </p> <p> A,,F .</p> <p> . 2.1 , a,b c: a (2.3) 0=A0+B0+C, (2.4) 0=D0+E0+F, b (2.3) 0.5=A0+B1+C, (2.4) 1=D0+E1+F, c (2.3) 1=A1+B0+C, (2.4) 0=D1+E0+F. : A=E=1, B=0.5, C=D=F=0. s=u+0.5v, t=v,</p> <p> . . . , -. , , , . -, . , , </p> <p>23</p> <p>.</p> <p>, . . , . , . . , . , , . , . () . , 4 ( ) . . , . , . mip-mapping [7]. . . , . , , , , </p> <p>24</p> <p> . , [7]. I I, I , d , , , :I = I k + I k cos + k cos n , d+K</p> <p>(</p> <p>)</p> <p> k ,k ;k </p> <p> ;</p> <p>K ; - ; - </p> <p>;n , </p> <p> ( ). . , . . , . . , . , , . () </p> <p>25</p> <p> , . , . , . , . .</p> <p>2.6 </p> <p> , . : . 2.2, v, o, p , . . : ; . , ( V) ( ); ( P1,P2), , , ; . , , ( );</p> <p>26</p> <p>t</p> <p>2</p> <p>x</p> <p>x</p> <p>1 </p> <p>y V</p> <p>v</p> <p>s zv</p> <p>z z</p> <p>xv</p> <p>y y</p> <p> 2.2 </p> <p>27</p> <p> . "". , . , -, ("") , -, . : , . ( ); , V; , ; ; , . , , . , . , 2.2 (). () . </p> <p>28</p> <p> ( ) , . . . "" , . . : , . (-) . 2.3. . </p> <p> 2.3 - . () . . () , . . , , , . (), z- </p> <p>29</p> <p> . (), (). - , . , - . , , .</p> <p>3</p> <p>3.1</p> <p> () , , . . , . V:V={v1,v2,,vL},</p> <p>vi=(xi,yi,zi),</p> <p>L ; M ; N ,</p> <p> E:E={e1,e2,,eM}, ej=(pvj1,pvj2,fj1,fj2),</p> <p> P:P={p1,p2,,pN}, pk=(pek1,pek2,,pekR), R k- .</p> <p> vi, V, . ej . . , -, </p> <p>30</p> <p> pvj1,pvj2 , j- , -, fj1,fj2 </p> <p> . , . pk . 3.1 , P1, P2, . </p> <p>v2P 1 e1</p> <p>V={(x1,y1,z1), (x2,y2,z2), (x3,y3,z3), (x4,y4,z4)}; v3P2</p> <p>e3</p> <p>E={(pv1,pv2,1,0), (pv1,pv3,1,0), (pv2,pv3,1,0),</p> <p>(pv2,pv4,0,0), (pv3,pv4,0,0),};P={(pe1,pe2,pe3),( pe3,pe4,pe5)}.</p> <p>v1</p> <p>e2</p> <p>e4</p> <p>e5 v4</p> <p> 3.1 , 3.1, P2 . P2. , , , . . N , , nx, ny,nz ( ), N </p> <p> . N = nxi + nyj + nzk ,</p> <p>31</p> <p> i,j,k , x,y z, (). , V1R1R2</p> <p>N</p> <p>, . R1, R 2 ,</p> <p> V2</p> <p>V3</p> <p> , 3.2. N </p> <p> 3.2 </p> <p>N = R1 R 2 = R1 R 2 sin ,</p> <p> 3- [1]i N = r1x r2 x j r1 y r2 y k r1z , r2 z</p> <p> r1x,,r2z R1, R 2 . nx, ny, nz i, j, k, , 2- , i-, j-, k- . nx = ny = nz = r1 y r2 y r1x r2 x r1x r2 x r1z r2 z = ( y2 y1 )( z3 z1 ) ( y3 y1 )( z2 z1 ),</p> <p>r1z = ( x2 x1 )(z3 z1 ) ( x3 x1 )( z2 z1 ), r2 z r1 y = ( x2 x1 )( y3 y1 ) (x3 x1 )( y2 y1 ), r2 y</p> <p> xn, yn, zn n- (n=1,2,3). . </p> <p>32</p> <p> . , , , . , . (strip). , . DirectX OpenGL [8] .3.2 </p> <p> , , . , , . , . , , . - (): ( ), , , , . , . , , :</p> <p>33 x2 + y 2 + z 2 = R2 ,</p> <p> R . () . : :F ( x, y , z ) = x 2 + y 2 + z 2 R 2 = 0 ,</p> <p>z ( x, y ) = R 2 x 2 y 2 .</p> <p> , , , F(x,y,z) . , x,y , z ( ). , . , , [5]. . . , - . . , , , , z</p> <p> , , , z z P z</p> <p>z P</p> <p>y x</p> <p>y x </p> <p>34</p> <p> = R , = 0 .. 2 , = 0 .. .</p> <p> , z = R 2 z 2 , = 0 .. 2 , z = R .. + R .</p> <p> x = sin cos , y = sin sin , z = cos .x = cos , y = sin , z = z.</p> <p>,</p> <p>,</p> <p> . . . . - . </p> <p> . - . , , , [3]. , , . . , ( i+1) , </p> <p> i () :</p> <p>35</p> <p>sin i +1 = sin ( i + ) = sin i cos + cos i sin ,</p> <p>cos i +1 = cos( i + ) = cos i cos sin i sin .</p> <p> sin , cos </p> <p> , </p> <p> sin i, cos i . : sin 0=0, cos 0=1. , . , . , i- , , , - </p> <p> y u nxi = i y v i</p> <p> z z u i , n = u i yi z z v i v i</p> <p> x x u i , n = u i zi x x v i v i</p> <p> y u i . y v i</p> <p>(3.1)</p> <p> u v , , . u v , nx, ny, nz </p> <p> , </p> <p> . , , , . :nxi = F ( x, y, z ) F ( x, y, z ) F ( x, y, z ) , n yi = , nzi = . x y z</p> <p>, , , : nx=x, ny=y, nz=z.</p> <p>36</p> <p> ( , ). , . "" . , </p> <p>. z . z </p> <p> . z , . 3.3 , , z. ,A, zA, </p> <p> .</p> <p>z A</p> <p>. 3.3 x</p> <p>A</p> <p>A( x A , y A , z A )zA</p> <p>y</p> <p> x = f x cos , y = f y sin , z =z, z = zmax , .. , zmax ,</p> <p>(3.2) = 0, .. ,2 ,</p> <p> fx , fy ( z) , . (3.2) . , ,</p> <p>37</p> <p>,</p> <p> . fx , fy 3.1, , , N (nx,ny,nz). 3.1 fx fy nx ny nz a 1 ( z c) 2b 1 ( z c) 2 x a2 y b2 z c2</p> <p> a z</p> <p> (a c) z</p> <p> a 1 + ( z c) 2</p> <p> a bx a2 y b2</p> <p>b z x a2 y b21 2</p> <p>(b c) z x a2 y b2 z c2</p> <p>b 1 + ( z c) 2 x a2 y b2 z c2</p> <p>0</p> <p> 3.1 : a b , z</p> <p> z=0, z=1, z=c , ; c , , . - , . , , , . </p> <p>38</p> <p> .3.3 </p> <p> , , , . () , . , 3D- . . </p> <p> . , . () . , . , . , . - . (spline) . . ( ) , , . , . , , </p> <p>39</p> <p> , , . , , , . - . 1 2, 3.4, S , . , S . , S : 1S</p> <p>2</p> <p>1) </p> <p>2) </p> <p> 1 2, ; 3) 4) S 1 2 (), . S , . , , , 3.4 - </p> <p>y = ax 3 + bx 2 + cx + d , a,b,c d. :</p> <p>40</p> <p>1) 1 2) 2 </p> <p>y1 = ax13 + bx12 + cx1 + d ,3 2 y 2 = ax2 + bx2 + cx2 + d ,</p> <p>3) 1 </p> <p>&amp; y1 = 3ax12 + 2bx1 + c ,4) 2 2 &amp; y2 = 3ax2 + 2bx2 + c .</p> <p> , , , . . () . , . , 0 3. , [3]. , . </p> <p> . . -, . -, , . . . , -, , , , . , </p> <p>x(u, v) = C X 00 + C X 01u + C X 02u 2 + C X 03u 3 v 0 +X 10 X 20</p> <p>( +(C +(C +(C</p> <p>+ C X 11u + C X 12u 2 + C X 13</p> <p>+ C X 21u + C X 22u 2 + C X 23</p> <p>2 X 30 + C X 31u + C X 32 u + C X 33</p> <p>) u )v + u )v + u )v = C3 1 3 2 3 3 3 3 i =0 j =0</p> <p>41</p> <p>(3.3)X i ju j i</p> <p>v,</p> <p>u = 0, .. ,1 ,</p> <p>v = 0, .. ,1 ,</p> <p> u , v ( -);</p> <p>C X 00 ,..., C X 33 </p> <p> .</p> <p>,</p> <p> y(u,v) </p> <p>z(u,v), </p> <p> CY 00 ,..., CY 33 CZ 00 ,..., CZ 33 , . (3.3) . u,v , . . (3.3) , . 3.5. 1</p> <p>v </p> <p>vCP y0</p> <p>CP</p> <p>uCP z</p> <p>1 yCP</p> <p>zCP xCP</p> <p>u</p> <p>x</p> <p> 3.5 </p> <p>42</p> <p> . . , ( , ) , ( ) ( ) [1,3]. , . ( ), . , . (3.3), , . x(u, v) = f i (v) f j (u ) PX i j ,i =0 j =0 3 3 3 3</p> <p>y (u , v) = f i (v) f j (u ) PY i j ,i =0 j =0 3 3</p> <p>(3.4)</p> <p>z (u , v) = f i (v) f j (u ) PZ i j , u = 0..1, v = 0..1,i =0 j =0</p> <p> PX , PY , PZ x, y z- ; f i (u ) , f j (v) , -. f i (u ) , f j (v) , . , :</p> <p>43</p> <p>x ( u, v ) = U M PX M T V T , y ( u, v ) = U M PY M T V T , z ( u, v ) = U M PZ M V ,T T</p> <p>(3.5)</p> <p> U, V u v:U = u3 u2 u 1 , V = v3 v2 v 1 ;</p> <p>PX , PY , PZ , x, y z </p> <p>, , , 3.6,x00 PX = x10 x20 x30 x01 x11 x21 x31 x02 x12 x22 x32 x03 x13 x23 x33 ;</p> <p>M , ,</p> <p> . . , . , . , , (, ) . , . , , , . , ( (3.5)) . . u, v. </p> <p>44</p> <p>3.6 , 16 P00,,P33.vz</p> <p>P01 P10 y</p> <p>P02</p> <p>P03 P13 P23 P20 P33</p> <p>P00</p>...

Recommended

View more >