Неверный результат для расчета углов между треугольными плоскостями - PullRequest
0 голосов
/ 20 февраля 2020

Мне нужно найти угол между соответствующими плоскостями двух треугольников. Я использую треугольники из файла .stl разных объектов. Я следовал за ответом на этот вопрос . Он работает с некоторыми формами, однако недавно я столкнулся с проблемой, когда результирующий косинус угла равен 2, поэтому он не является правильным.

Ни один из двух треугольников в этом случае не вырожден, так как их точки соответственно - A, B, C и B, C, D. Общее ребро - B C. Значения: A (50,3473, 2,03038, 50) B (99,072, 10,6219, 50) C (50,3473, 0,3038, 0) D (99,072, 10,6219, 50)

При вычислении перекрестных произведений B C X AB и B C X AD, оба имеют одинаковые значения. После их нормализации и нахождения скалярного произведения получается 2.

Я что-то не так делаю? Что это значит?

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 20 февраля 2020

Неравенство Коши-Шварца: скалярное произведение двух нормализованных векторов не может быть больше 1.

Проблема должна заключаться в нормализации векторов или в вычислении скалярного произведения.

...