Использование JavaScript для моделирования 3D-многогранников

StackOverflow https://stackoverflow.com/questions/1146174

Вопрос

Существует ли библиотека JavaScript, которая моделирует 3D многогранники используя тег холста или SVG?Скажем, я хотел создать визуализацию Платоновые тела, как мне лучше всего этого добиться?Кстати, меня интересуют только веб-браузеры на базе WebKit, такие как Safari и Chrome.

Я видел эту классную демонстрацию того, как рендерить 3D треугольники, но как я могу распространить его на многогранники с произвольным числом сторон?

Это было полезно?

Решение

Взгляните на эту библиотеку: SVG-VML-3D

Он использует SVG и возвращается к VML в MSIE.У них есть демо с платоновыми телами.У меня нет под рукой Webkit-браузера, но полагаю, что и там он должен работать.

Другие советы

Это не прямой ответ на ваш вопрос, но, учитывая, что вы упомянули только WebKit, я решил указать на новый 3D-преобразование CSS поддержка, которая была добавлена ​​в webkit совсем недавно.Это позволяет вам делать то, что вы хотите, без использования Javascript.Я не видел примера трехмерных многогранников, но есть примеры кубов и т. д., например. здесь.

Есть немного более сложная демонстрация. здесь который имеет кольцо из прямоугольников.Чтобы получить представление о том, что вы можете сделать (хотя для анимации используется Javascript), см. Снежный стек демо.

Большинство 3D-библиотек обобщают треугольники.Если вам нужен многоугольник с более чем тремя сторонами, вы разделите его на треугольники и нарисуете эти треугольники.Если вас интересуют только платоновые тела, то вам будет довольно легко, потому что вы можете легко получить триангуацию каждой грани, сначала усреднив вершины каждой грани, а затем используя этот центр и две смежные грани. вершины лица, чтобы дать вам триангуляризацию.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top