3D 공간에서 작업 중입니다. 광선, 또는 특히 3D 공간에서 광선의 시작 및 전송 벡터를가집니다. 나는 또한 삼각형을 가지고 있는데, 나는 사실이 광선에 부딪쳤다는 것을 안다. 삼각형을 사용하면 물론 3D 점이 세 개 있다는 것을 의미합니다. 이 삼각형에서 법선 벡터를 쉽게 계산할 수도 있습니다.3D 공간에서 삼각형을 반사하는 광선
이제 새로운 광선을 얻을 필요가 있습니다. 특정 광선을 반사시킨 새 광선이 필요합니다.
나는 또한 삼각형에 접촉점이있는 곳을 알지 못하지만 반사 광선을 얻으려면 분명히 고려해야한다. 그 시점이 새로운 광선의 시작일 것입니다.
이것은 2D에서하는 것이 쉽지 않지만 3D로하는 방법을 이해할 수 없습니다.
저는 Cx ++와 OpenFrameworks를 ofxRay 부가 기능과 함께 사용하고 있습니다.
두 벡터를 추가하거나 점을 찍는 것과 같이 벡터 대수학에 익숙하십니까? – Beta
생각할 수있는 유용한 방법은 평면에 수직선 (삼각형)과 광선이 함께 평면을 형성하는 것입니다. 이 평면에서는 익숙한 2D 문제를 검색합니다. 따라서이 2D 공간을 찾아 문제를 해결 한 다음 다시 변환 할 수 있습니다.이것은 수학적으로 벡터 대수학 공식 (@Beta가 지적한 바와 같이)과 같을 것입니다. 이것은 아마도 가장 효율적인 (또는 적어도 계산 상으로는 간단히) 해결책 방법 일 것입니다. – jwimberley