[GPG 4 글 2.4] Catmull-Rom Spline에 대한 질문입니다.

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

Moderator: 류광

j5267018
Posts: 11
Joined: 2006-10-12 11:37

Catmull-Rom Spline에 대한 질문입니다.

Post by j5267018 »

현제 카메라 트랙을 만들고 있습니다.

선형으로 보관을 하려고 이것저것 찾다가 카트물.....이녀석이 괜찮아 보여서 사용하고 있습니다.

사용하는데는 별 지장은 없는데...

4개의 정점으로 만들어지는 곡선 (정확히 말하면 ( DX함수 사용중, 포인트0~포인트3번중 포인트1부터 포인트2사이의 곡선의 길이 ) )를 알아야할 필요성이 생겼습니다 ㅠ.ㅠ ( 모..몰라 그거 무서워;;; )

링크나 답변 부탁드립니다. 아! 그리고 미리 감사합니다 선배님, 후배님 (__)
겸손하자
비회원

재미있네요.

Post by 비회원 »

새로운 걸 하나 또 알았네요.
데모를 보니까 완전 멋있네요.

함수 f(t)가 시간 t에 대한 포지션을 나타낸다고 하면
f(t)/dt 가 speed가 되니까 f(t)/dt 를 시간으로 적분하면 거리가 나오겠죠.-_-
머 단순하게는 그렇습니다.

인터넷에 보니 공식이 아래와 같으니까
f(t) = 0.5 *(
(2 * P1) +
(-P0 + P2) * t +
(2*P0 - 5*P1 + 4*P2 - P3) * t^2 +
(-P0 + 3*P1- 3*P2 + P3) * t^3
)

f(t) / dt = 0.5 * (
(-P0 + P2) +
2 * ( 2 *P0 - 5*P1 + 4*p2 - p3) * t +
3 * (-P0 + 3*P1 - 3*P2 + P3 ) * t^2
)

위 를 t_0 에서 t_t 까지 적분하면 될 꺼 같은데요 ?
물론 비연속 구간에 대해서 잘 처리 해주시면 될 듯 싶네요.

머 대충은 그런데 진짜는 어떨지 모르겟네용
j5267018
Posts: 11
Joined: 2006-10-12 11:37

Re: 재미있네요.

Post by j5267018 »

비회원 wrote:새로운 걸 하나 또 알았네요.
위 를 t_0 에서 t_t 까지 적분하면 될 꺼 같은데요 ?
물론 비연속 구간에 대해서 잘 처리 해주시면 될 듯 싶네요.
아하하 저..적분;;;;
답변 감사합니다. (__)
일단 시간이 급해서 0.0f ~1.0f까지 수백번 위치를 구한 길이의 합을 내서 마무리 했습니다.-_-;
실시간으로 구할것도 아니고 구한 결과를 파일로 내릴꺼라서....
정확한 길이는 아니지만 비슷하게 나오니 일단 넘어갔네요..
적분....수학을 피할순 없나봐요 ㅠ.ㅠ
겸손하자
비회원

Post by 비회원 »

속도 함수면 음수 구간도 있을 텐데 그냥 적분하면 실제 길이보다 작게 나오지 않을까요? 3차 방정식이라 해를 구하는 것도 무리일 텐테요.
visco
Posts: 114
Joined: 2006-07-02 12:46

Post by visco »

응용 레벨로 접근하신다면 gpg4권의 '2.4 비균일 스플라인' 을 읽어보시면 도움이 될 것 같습니다.
각 정점마다의 거리를 지정하여 스플라인의 곡선을 생성할 수 있습니다.

opengl로 제작되어있어서 컨버팅이 좀 귀찮긴 한데 인터페이스 커스터마이징까지 해서
하루정도면 붙일 수 있을겁니다.
j5267018
Posts: 11
Joined: 2006-10-12 11:37

Post by j5267018 »

visco wrote:gpg4권의 '2.4 비균일 스플라인'
각 정점마다의 거리를 지정하여 스플라인의 곡선을 생성할 수 있습니다.
오~~~이거 좋네요 ^^;( 비스코님 감사합니다 (__) )
지피지에 글을 남기면서 지피지를 읽지 않았다는게 창피하네요;;;;;
겸손하자
Post Reply