2014-03-05 5 views
1

C++ OpenGL의 3 차원 공간에서 전래 수식을 사용하여 움직이지 않는 와이어를 만들려고합니다. 두 고정 점의 xyz 좌표 (와이어가 끼워지는 폴)와 수식에서 와이어의 처짐을 나타내는 값을 지정하고 싶습니다. 정밀도 (그릴 선분 수)에 따라 수식을 반복해야합니다.두 세트의 xyz 좌표와 sag (a)에 대한 값이 주어지면 OpenGL의 해당 점 사이에 선을 그릴 수 있습니까?

OpenGL 세계에서 x와 y는 가로이고 양수 y가 올라가므로 와이어는 항상 음수 y로 늘어납니다. 따라서 y 축을 따라 똑바로 내려다 보면 전선이 직선으로 나타납니다. 그러나 두 종점은 수평으로 동일한 평면에 있지 않을 수 있습니다 (다른 y 값).

내가 본 catenary의 모든 예는 2 차원입니다. 3D로 그려야하는데, 그것은 내 뇌를 긁어 모으고 있습니다. ;)

답변

0

당신이 원하는 것은 2D 전차를 타고 원하는 비행기로 변환하는 것입니다. 설명 된 구현에서는 위의 "직선으로 나타납니다"라고 말합니다. 따라서이 방정식은 X & Z 축을 따라 평행 이동하고 주어진 방향에 맞게 Y 축을 중심으로 회전 할 수있는 2 차원 평면에 맞습니다.

+0

문제는 두 끝점을 원래 지정된 xyz 좌표와 일치시키는 방법을 알아 내야한다는 것입니다. 어떻게 회전 시킬지 결정할 수 있습니다. –

+0

[수학] (http://www.math.stackexchange.com) – Proxy