다항식 함수로 설명 된 특정 코스를 따라 차량을 시간 경과에 따라 움직이는 실시간 그래픽 엔진 (C++/OpenGL)을 구현하고 있습니다. 이 함수 자체는 프로그램 외부에서 프로그래밍 방식으로 생성되었으며 고차원 (25 점 이상)이므로 여기에 게시 할 수는 없습니다 (어쨌든 중요하지 않다고 생각합니다). 런타임 중에 함수는 변경되지 않으므로 첫 번째 및 두 번째 파생 상품을 한 번 계산하여 나중에 신속하게 사용할 수 있습니다.arc 길이에 대해 일정한 속도로 함수를 계산하십시오.
내 문제는 일정한 속도 (예 : 초당 10 단위)로 곡선을 따라 이동해야하므로 내 함수 매개 변수가 시간과 직접 같지 않기 때문에 두 지점 x1과 x2 사이의 호 길이가 다르기 때문에 함수 값에 따라 다릅니다. 예를 들어 f (a + 1) - f (a)의 차이는 함수가 점 a 및 b에서 보는 방법에 따라 f (b + 1) - f (b)보다 크게 또는 작을 수 있습니다.
움직임이 시각적이며 더 이상 처리되지 않으므로 모든 근사값도 정상이므로 100 % 정확한 솔루션이 필요하지 않습니다. 또한 모든 것을 런타임에 각 프레임 (60fps)에서 계산해야하므로 계산 시간에 따라 복잡한 수학으로 방정식을 풀면 문제가되지 않을 수도 있습니다.
나는 어디서부터 시작 해야할지 모르겠다. 그래서 어떤 생각의 기차라도 높이 평가할 것이다!
미적분을 아십니까? 차량을 움직여야하는 각도가 다항식의 첫 번째 미분입니다. – Alnitak
https://stackoverflow.com/questions/26226663/evenly-space-circles-along-sin-curve/26226795#26226795 – Alnitak
감사합니다. 나는 그 접근법을 시도 할 것이다. 그러나 링크 된 math.stackexchange 페이지에있는 사람들이 sqrt의 정밀도와 소수점에 문제가있는 것처럼 보였으므로 아마도 약간 조정해야 할 것입니다. (여기에도 작은 숫자로 작업하고 있습니다.) – Markus