2009-12-06 2 views
1

에 한 지점에서 커브, 그리고 그들이 X에서 바람 :내가 임의의 장소에있는 타일이 다른

X 을 = 이것은 잘 작동 (((X ′ -X)/T) * t) + X, Y
t = (((′ Y-Y)/T) * t) + Y

, 하지만 그것은 선형입니다. 나는 뭔가 더 curvier 찾고 있어요. 포물선처럼 조금 작용합니다. 기본적으로 직선에서 X '에 도달하는 대신, 곡선을 그리며 X'에서 끝나고 곡률의 양이 변수를 기반으로하는 알고리즘을 찾고 있습니다.

감사

* 편집 나는 베 지어 곡선 모양이 내가 원하는 것으로 생각하지만, 나는 그것을 구현하는 방법을 모르겠어요. 누군가가 2 차 베 지어 공식을 설명해 주시겠습니까? 나는 또한 'E'와 같은 상징이 무엇인지 확신 할 수 없다. 나는 그것이 범위와 관련 있다고 생각하지만, 확실하지 않다, 고마워.

+0

나는 E가 의미하는 바를 알아 냈고 다음과 같이함으로써 스스로 구현할 수 있었다. Nx = (1-i)^2 * x + 2 * (1-i) * i * 200 + (i^2) * xP Ny = (1 - i)^2 * y + 2 * (1 - i) * i * 900 + (i^2) * yP 고맙습니다 모두 – jmasterx

답변

2

당신은 Bezier Curves, 또는 다른 유사한 파라 메트릭 커브를 찾고 있습니다. 이들은 프로그램 적으로 코드 작성이 매우 쉽고 직관적으로 조작하기 쉽다는 이점이 있습니다. 내가 아는 최고의 논문은 고전 서적 Mathematical Elements of Computer Graphics이지만 컴퓨터 그래픽의 모든 교과서에는 기본 소개가 포함되어있을 것입니다.

+0

당신은 더 단순한 보간 즉 Lagrange 및 Newton 보간을 추가 할 수 있습니다 . – pmr

0

특히 "보간"섹션을 보자. this page about Perlin Noise. 일반적인 아이디어는 t 이상의 선형 전달 함수 대신 [0, 1]에 무언가를 적용하여 더 부드러운 곡선을 만들 수 있다는 것입니다. "가장 매끄러운"노이즈는 cos(t) 함수이지만 3 차 또는 5 차 다항식을 사용하여 코사인을 근사 할 수 있습니다.

2

여러분이 찾고있는 것은 Catmul-Rom spline입니다. 이것은 제어 포인트를 통과하는 Hermite 스플라인 유형입니다. 베 지어 곡선은 갈 길이 멀지 않아이 상황에서 제어하기가 어렵습니다.

관련 문제