2015-03-13 1 views
0

Рассмотрите обычный икосаэдр. Даже с моими бедными математическими навыками, довольно легко генерировать с кодом, когда вы осознаете, что вершины икосаэдра являются углами трех ортогональных прямоугольников:Икосаэдр, соединяющий краевые углы

Icosahedron

Я хотел бы расширить лицо, но до сих пор делает они объединяются вместе. Вид вроде этого. example

С моими умениями в отношении тригонометрии это то, о чем я думаю. псевдокод

var triangles = 20; 
var seams = triangles*3; 
var targetAngle = 360/seams; //6 degrees. 

Является ли это правильный способ пойти об этом?

ps: Если вас интересует какой-то код для создания икосаэдра и исосферы, здесь хорошая статья. http://blog.andreaskahler.com/2009/06/creating-icosphere-mesh-in-code.html

+1

Вы спрашиваете, что произойдет, если вы добавите треугольную призму на каждом лице обычного икосаэдра? Если это так, то угол будет просто углом между нормальными векторами двух смежных сторон. –

ответ

0

Я думаю, что вы хотите, это двугранный угол. Они хорошо известны, и вы можете увидеть таблицу по адресу https://en.wikipedia.org/wiki/Table_of_polyhedron_dihedral_angles. Для икосаэдра угол равен π - arccos (√5/3) или приблизительно 138,19 °. Угол в вашей диаграмме составляет 360 ° - 138,19 ° - 90 ° - 90 ° = 41,81 °.

 Смежные вопросы

  • Нет связанных вопросов^_^