Пятница, 01 Апрель 2011 16:10

CSG - твердотельное моделирование 3

Особенности твердотельного моделирования

benzolПоговорим об особенностях твердотельного моделирования. Напомним, что речь идет о конструировании трехмерных объектов при помощи набора элементарных примитивов используя операции объединения, пересечения и вычитания. Сравнивать твердотельное моделирование будем с другим, на сегодняшний день более распространенным методом: моделирование при помощи поверхностей. Например, для моделирования можно использовать поверхности Безье (http://ru.wikipedia.org/wiki/Поверхность_Безье).

Опубликовано в Программирование
Суббота, 26 Март 2011 06:13

Подборка CSG моделей

winding3x7Собрал в одном месте все CSG-модели, каталог CSG моделей, упомянутых в статье "CSG - твердотельное моделирование". Все модели интерактивные, рисуются в технологии canvas2D. Для просмотра требуется достаточно современный браузер. Во всяком случае в Firefox 3 и 4, Chrome и IE9 изображения показывают. IE8, видимо, уже не современный браузер...

Опубликовано в Программирование

sponge_icoГубка Серпинского это трехмерный вариант коврика Серпинского. Губка Серпинского, как и коврик обладает поразительными свойствами: ее объем равен нулю. Построить губку можно бесконечно вычитая парраллелепипеды из куба.

 

Опубликовано в Программирование

winding2x7Развивая идеи твердотельного моделирования написал небольшой скриптик для генерации цепочки шаров вокруг тора. Известно, что каждой обмотке вокруг тора соответствует узел. Для получения узла необходимо взять веревку и бублик сделать несколько витков вокруг бублика и связать концы веревки. После того как бублик будет съеден останется веревка завязанная в узел. Кольцо получится если сделать только один оборот вокруг тора. 

 

Опубликовано в Программирование

Строительные "кубики" - элементарные тела

После того как мы разобрались с операциями твердотельного конструирования в предыдущей статье, перейдем к строительным кубикам - элементарным телам, из которых будут собираться наши твердотельные конструкции. В зависимости от исходного набора элементарных блоков мы сможем получать те или иные сложные тела. Например, если в исходном наборе только параллелепипеды, то как бы мы не объединяли их конечное число - шар не получится. С другой стороны, из одних шаров трудно построить что-то угловатое. Зато при помощи объединения шаров можно строить  сложные модели молекул.

 

Опубликовано в Программирование
Среда, 02 Март 2011 17:13

Модель раковины

Идея этой модели настолько стара, что даже не помню откуда появилась.

Модель представляет собой объединение шаров, центры которых лежат на логарифметической спирали. Красота спирали завораживает.

shell

Опубликовано в Программирование
Вторник, 01 Март 2011 18:06

CSG. То ли болт, то ли шпилька

Восстановил полностью функциональность визуализатора трехмерных твердотельных моделей. Добавил конус и тор.

Опубликовано в Программирование
Воскресенье, 27 Февраль 2011 18:41

Алгоритм визуализации CSG

Реализовал старый алгоритм визуализации твердотельных моделей на JavaScript (canvas 2D, HTML5 и все такое) за несколько вечеров. Теперь в статье про твердотельное моделирование можно кликать на некоторых изображениях и просматривать модели под разными углами обзора. Визуализатор работает, как минимум, в Chrome 9 и FireFox 4 beta11.

Красивых и интересных моделей подготовить не успел. Есть только несколько примеров для статьи. Например, модель молекулы из двух шаров.

Опубликовано в Новости
Вторник, 22 Февраль 2011 16:44

CSG - твердотельное моделирование 1

Подход к представлению тел

Один из подходов описания трехмерных объектов называется Constructive Solid Geometry (CSG) или по русски: твердотельное моделирование.
Идея подхода проста: тела можно представлять в виде комбинации других тел при помощи операций объединения, пересечения, вычитания и т.д.

Опубликовано в Программирование