나는 인터넷에서 300 페이지가 넘는 책을 읽었으며, 내가 원하는 결과를 얻지 못했거나 작동하지 않았기 때문에 사람들이 나를 도와 줄 수 있기를 바랍니다. 의사 코드와 수학을 사용하여 설명 할 수 있습니다. :)알려진 XYZ 각도, 반경 및 원점을 가진 점으로부터 3D 좌표 찾기?
따라서 점 A (원점)가 있습니다. 점 A는 반경, XYZ 위치 및 XYZ 회전을가집니다 (두 각도로 수행 할 수 있지만 3 각이 있어야합니다). 포인트 B의 위치를 알 수 없습니다.
해당 정보로 무장 한 제 질문은 : 점 B의 위치를 어떻게 알 수 있습니까? (또는 내 질문은 "구에서 3D 점을 찾는 방법"이라고 표현할 수 있습니다.)
저는 이미 2D로 해왔고 거기에서 효과가있었습니다. 2D에 대한 내가 사용 : 나는 순수 매트릭스를 사용하지 않는하지만 난 코사인 등을 사용할
x=pointA.x+radius*cos(angle)
y=pointA.y+radius*sin(angle)
. (심하게 실패, 정말 코사인와 XYZ 회전을 결합하는 방법을 모르고이 없다) 내 시도 의사 코드는 : 누군가가 나를 도울 수 있다면
newx=pointA.x+radius*cos(rotationY)*sin(rotationZ+toRadians(90))
newy=pointA.y+radius*cos(rotationZ-toRadians(90))*math.sin(rotationY)*math.cos(rotationX)
newz=pointA.z+radius*math.cos(rotationZ+toRadians(90))*sin(rotationX)
나는 그것이 너무 감사하겠습니다. :)
감사 :
추가 유용한 링크
는 비슷한 답변 같은 질문이 하나입니다. 그것은 단지 2 개의 각도로 성공적으로 회전했습니다.하지만 XY 또는 ZX 등을 사용해야하는지 아직 확실하지 않습니다. – Arundel규칙이 있습니다. 원하는 컨벤션을 사용할 수 있지만 일관성을 유지해야합니다 (할 수 있으면 항상 같은 규칙을 사용하십시오). 이 사실을 모르는 경우 ZYX 규칙을 사용하십시오. – Jepessen