[GPG 1 글 4.10] [질문] Gem1권 octree소스 중에서 질문

GPG 시리즈 관련 질답, 논의 공간.

Moderator: 류광

zetarus
Posts: 96
Joined: 2001-09-28 09:00

[질문] Gem1권 octree소스 중에서 질문

Post by zetarus »

소스중에서 TriBox.cpp에서

CheckLine에서 CheckPoint( p1, p2, (.5f-p1.x)/(p2.x-p1.x), 0x3e) == INSIDE) 이런식으로 CheckPoint()를 호출하는 부분이 있습니다.

몇가지 예를 들어 식대로 대입해보니까 결과는 맞는데요
그 식이 이해가 가지를 않습니다.

alpha라는 파라메타로 (.5f-p1.x)/(p2.x-p1.x)이렇게 넘겨주는이유와
CheckPoint의 LERP매크로에서 계산하는 식의 의미를 혹시 아시는 분이
계시다면 설명 부탁드리겠습니다.

주석에서 Test the point "alpha" of the way from p1 to p2라고 되어있던데요.
이 함수의 결과는 알겠지만... 그 과정에서 나온 식은 잘 모르겠습니다.
류광
Posts: 3805
Joined: 2001-07-25 09:00
Location: GPGstudy
Contact:

Post by 류광 »

그 부분의 기본적인 목표는 입방체 각 면마다.. 특정한 한 종류의 성분들의 비를 이용해서 선분과 평면이 만나는 점을 구하는 것입니다.

좀 더 구체적으로는...

Code: Select all

        P2 
     |  +  
     |b/|  
     |/ |  
     A  |  
   a/|  |  
   / |  |  
P1+--B--+  
   c | d   
    0.5    
a:b = c:d 라는 점을 이용한 것입니다....

+-0.5라는 값들은 비교 대상이 원점을 중심으로 하는 단위입방체 (각 축이 -0.5 ~ 0.5)이기 때문입니다.
Last edited by 류광 on 2003-05-22 17:55, edited 1 time in total.
류광
Posts: 3805
Joined: 2001-07-25 09:00
Location: GPGstudy
Contact:

Post by 류광 »

앗 a:b = c:d가 아니라 a : a+b = c : c+d 인가요?? (누가 정석 좀 찾아보시길^^;; ) 어쨌는 아이디어는 동일.......
Post Reply