DirectX Graphics ·¹ÆÛ·±½º Direct3D extension (D3DX) C/C++ ·¹ÆÛ·±½º ÇÔ¼ö »ê¼ú ÇÔ¼ö D3DXVec4CatmullRom   [¸ñÂ÷¿­¶÷] [ÁÖ¼Òº¹»ç] [½½·Ôºñ¿ì±â]
D3DXVec4CatmullRom ÇÔ¼ö
 
Microsoft DirectX 9.0

D3DXVec4CatmullRom ÇÔ¼ö


ÁöÁ¤µÈ 4D º¤Å͸¦ »ç¿ëÇØ, Catmull-Rom º¸°£À» ½ÇÇàÇÑ´Ù.

±¸¹®

D3DXVECTOR4 *WINAPI D3DXVec4CatmullRom(      

    D3DXVECTOR4 *pOut,     CONST D3DXVECTOR4 *pV1,     CONST D3DXVECTOR4 *pV2,     CONST D3DXVECTOR4 *pV3,     CONST D3DXVECTOR4 *pV4,     FLOAT s );

ÆÄ¶ó¹ÌÅÍ

pOut
[in, out] ¿¬»ê °á°úÀÎ D3DXVECTOR4   ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ.
pV1
[in] À§Ä¡ º¤Å͸¦ ³ªÅ¸³»´Â, ó¸®ÀÇ ±âº»À¸·Î µÇ´Â D3DXVECTOR4 ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ.
pV2
[in] À§Ä¡ º¤Å͸¦ ³ªÅ¸³»´Â, ó¸®ÀÇ ±âº»À¸·Î µÇ´Â D3DXVECTOR4 ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ.
pV3
[in] À§Ä¡ º¤Å͸¦ ³ªÅ¸³»´Â, ó¸®ÀÇ ±âº»À¸·Î µÇ´Â D3DXVECTOR4 ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ.
pV4
[in] À§Ä¡ º¤Å͸¦ ³ªÅ¸³»´Â, ó¸®ÀÇ ±âº»À¸·Î µÇ´Â D3DXVECTOR4 ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ.
s
[in] °¡Áß °è¼ö. ¡¸ÁÖÀÇ¡¹¸¦ ÂüÁ¶ÇÒ°Í.

¹Ýȯ°ª

Catmull-Rom º¸°£ÀÇ °á°úÀÎ D3DXVECTOR4 ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ.



ÁÖÀÇ

4 °³ÀÇ Á¡ (p1, p2, p3, p4)À» ÁÖ¸é ´ÙÀ½°ú °°Àº ÇÔ¼ö Q(s)¸¦ °Ë»öÇÑ´Ù.

Q(s) is a cubic function.  
Q(s) interpolates between p2 and p3 as s ranges from 0 to 1.  
Q(s) is parallel to the line joining p1 to p3 when s is 0.  
Q(s) is parallel to the line joining p2 to p4 when s is 1.  

Catmull-Rom ½ºÇöóÀÎÀº, ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÏ´Â °ÍÀ¸·Î, ¿¡¸£¹ÌÆ® ½ºÇöóÀÎÀ¸·ÎºÎÅÍ ÆÄ»ýÇÒ ¼ö ÀÖ´Ù.

v1 = p2
v2 = p3
t1 = (p3 - p1) / 2
t2 = (p4 - p2) / 2

¿©±â¼­ v1 ´Â pV1 ÀÇ ÄÁÅÙÃ÷, v2 ´Â pV2 ÀÇ ÄÁÅÙÃ÷, p3 ´Â pV3 ÀÇ ÄÁÅÙÃ÷, ¹× p4 ´Â pV4 ÀÇ ÄÁÅÙÃ÷ÀÌ´Ù.

´ÙÀ½ÀÇ ¿¡¸£¹ÌÆ® ½ºÇöóÀÎ ¼ö½ÄÀ» »ç¿ëÇØ

Q(s) = (2s3 - 3s2 + 1) v1 + (-2s3 + 3s2) v2 + (s3 - 2s2 + s) t1 
         + (s3 - s2) t2

v1, v2, t1, t2 ¿¡ ´ëÀÔ Çϸé, ´ÙÀ½ÀÇ °á°ú¸¦ ¾òÀ» ¼ö ÀÖ´Ù.

Q(s) = (2s3 - 3s2 + 1) p2 + (-2s3 + 3s2) p3 + (s3 - 2s2 + s) (p3 - p1)/2 
         + (s3 - s2)(p4 - p2)/2

À̰ÍÀº, ´ÙÀ½°ú °°ÀÌ ¿Å°Ü³õÀ» ¼ö ÀÖ´Ù.

Q(s) = [(-s3 + 2s2 - s) p1 + (3s3 - 5s2 + 2) p2 + 
         (-3s3 + 4s2 + s) p3 + (s3 - s2) p4] / 2

ÇÔ¼öÀÇ Á¤º¸

Çì´õd3dx9math.h
ÀÓÆ÷Æ® ¶óÀ̺귯¸®d3dx9.lib
ÃÖÀúÇÑÀÇ operating system Windows 98

ÂüÁ¶

D3DXVec2CatmullRom ,D3DXVec3CatmullRom


© 2002 Microsoft Corporation. All rights reserved.
¡èTOP