A(xA,yA,zA), B(xB,yB,zB), C(xC,yC,zC), D(xD,yD,zD).
Знаю, что их 6:
(ABC,ABD), (ABC,AСD), (ABC,BСD), (ABD,AСD), (ABD,BСD), (ACD,BСD).
Например, для A(-2,1,-1), B(-3,1,3), C(-4,2,-1), D(-2,3,1).
Может у кого-то "завалялась" готовая процедура

Модератор: Admin
IVVA писал(а):Вот сделано в Маткаде.
Думаю разберетесь.
...
Kitonum писал(а):IVVA писал(а):Вот сделано в Маткаде.
Думаю разберетесь.
...
А почему Вы берёте векторные произведения именно в этом порядке, а не в другом? Сначала смотрите на рисунок? Но тогда результат носит частный характер и не может быть положен в основу процедуры, которая должна работать автоматически для любого тетраэдра.
Идея общего подхода:
1. Берётся точка, гарантированно лежащая внутри тетраэдра. Проще всего взять центроид. См.
http://en.wikipedia.org/wiki/Centroid
Обозначим через О .
2. Находим проекции точки О на те грани, угол между которыми ищем. В пакете geom3d есть соответствующая команда. Можно и без пакета по известным формулам из аналитической геометрии. Обозначим полученные точки через А и В .
3. Находим угол между векторами ОА и ОВ . Обозначим его через phi .
4. Искомый угол равен Pi - phi