Warning: Declaration of YOOtheme\Theme\Wordpress\MenuWalker::walk($elements, $max_depth) should be compatible with Walker::walk($elements, $max_depth, ...$args) in /home/users/d/detalist/domains/kd3d.ru/wp-content/themes/yootheme/vendor/yootheme/theme/platforms/wordpress/src/Wordpress/MenuWalker.php on line 120
  • Главная
  • Проектирование параметрических конструкций в Grasshopper

Проектирование параметрических конструкций в Grasshopper

Проект скамейки в Grasshopper

Трехмерное моделирование скамейки в среде Grasshopper

В последнее время широкое распространение в дизайне и архитектуре приобретает такое направление как параметрическое 3d моделирование.
Это процесс 3D моделирования сложных, плавных, форм интегрируемых в архитектурное пространство.
Для примера что это такое вы можете посмотреть картинки ниже.

Параметрическая скамья в Grasshopper
Пример параметрической мебели

Современные дизайнеры так же активно используют данную технологию при создании мебели и конструкций необычных форм.
При всей своей кажущейся простоте, сложность заключается в создании и быстром изменении формы самой этой криволинейной поверхности.
Здесь мы хотим рассказать вам о том, как самому спроектировать и даже, при возможности, изготовить самостоятельно предмет интерьера в стиле параметризма, который способна выдумать ваша фантазия.
Есть несколько вариантов проектирования подобных форм.
Я хочу остановить ваше внимание на программе трехмерного моделирования Rhinoceros.
Это очень доступная по цене, а главное, очень мощная программа для 3D моделирования, дающая проектировщику полный спектр способов для реализации своих идей.
Программа обладает так же возможностью установки огромного количества как платных, так и бесплатных плагинов для решения широкого круга задач.
Для реализации проекта нам потребуется такой плагин как Grasshopper.
Этот плагин позволяет строить очень сложные формы, изменять их геометрию в допустимых рамках в режиме онлайн.
Он является одной из разновидностей программ нодового моделирования, когда из отдельных нодов составляется алгоритм воздействия на задаваемые параметры при помощи нодов-операторов.
К сожалению, в сети практически нет мануалов на русском языке по Grasshopper, есть некоторые отрывки и выдержки.
Но есть несколько энтузиастов, которые выкладывали в сеть переводы на русском языке. Желающие могут найти и изучить данное руководство.
Итого, чтобы спроектировать мебель нам потребуется: скачать с официального сайта и установить программу Rhinoceros (последняя 5 версия), а так же скачать с сайта www.grasshopper3d.com плагин Grasshopper.
В этой статье мы не будем подробно объяснять весь функционал самого Rhino и плагина Grasshopper, так как на это уйдет огромное количество времени. Кроме того, мы предполагаем, что наши читатели хотя бы немного знакомы с принципами 3D моделирования. Наша задача объяснить вам, как спроектировать параметрическую мебель.Приступим.

Допустим, что мы хотим получить параметрическую модель лавки для торгового комплекса примерно такой геометрии как на скрине ниже.

Параметрическая 3D модель скамьи
Пример проектируемого изделия
  1. Запускаем программу Rhinoсeros.
Rhinoceros.Трехмерное моделирование
Запуск Rhino

2. После запуска программы Rhino запускаем плагин Grasshopper, вызывая его написанием в строке панели задач Rhino.
Плагин запускается и появляется окно Grasshopper.В верхней части сосредоточены основные параметры для работы в среде Grasshopper.

3.Основная поверхность скамьи строится методом лофтинга – построением поверхности, которая проходит через серию сечений. Мы должны получить эту серию сечений, и, главное возможность изменять геометрию и размер этих сечений, формируя поверхности различной геометрии.В окне проекций Rhino рисуем 2 кривые: одну направляющую и одну кривую поперечного сечения:

В окне grasshopper вытягиваем из панели нод Curves и назначаем ноду кривые (Set one Curve) из окон Rhino. Как только кривая назначена ноду он изменяет цвет с оранжевого (когда ноду не назначено ничего) на серый (определенный).
В окне Rhino обратите внимание, при назначении кривые так же поменяли свой цвет.

Так поверхность формируется по сечениям, нам надо сделать нашу кривую профиля расположенной на направляющей. Для этого поперечное сечение нужно разместить на плоскостях, разбивающую направляющую на равные длины. Идем в раздел Curves-Division-Perp Frames. В данном ноде в параметре N по умолчанию стоит 10, т.е. кривая разбивается на 10 отрезков одинаковой длины. Этот параметр можно поменять. Изменение осуществляется слайдером. Вытягиваем его из Param. По умолчанию слайдер имеет точность до тысячных долей. Естественно, что число плоскостей должно быть целым числом. Жмем правой клавишей мыши по слайдеру и идем в Edit.Я назначил минимальное значение 1, максимальное – 30. Т.е у меня возможно количество плоскостей вдоль направляющей от 1-30, количество которых я регулирую перемещением ползунка. Если плохо видно поверхности их можно увеличить в разделе Grashoppera Display – Preview Plane Size. Я поменял на 50.

5. Далее располагаем наш профиль на полученных плоскостях, используя нод Orient. Он находится во вкладке transform-euclidian-orient.Для правильной ориентации профиля используйте перемещение профиля в окне Rhino, а именно Rotate и Move.Конечную точку кривой старайтесь поместить в центр координат, используйте активацию функции Grid Snap внизу окон Rhino.В результате мы получили набор профилей, размещенных на наших плоскостях. Теперь наша задача состоит в том, чтобы каждый из этих профилей сделать управляемыми (чтобы они могли изменять свою геометрию по некоторому закону).Именно в этом и состоит возможность параметрического моделирования.Далее по этим профилям можно построить поверхность применив Surface-Loft

6. Акцентирую внимание: нам надо, чтобы сечения меняли свою геометрию! В теперешнем варианте это не более чем просто набор сечений по которым выстроен Loft.Наиболее удобно изменять геометрию некоторым образом используя распределение графическим методом , используя Graph Mapper в разделе Params. Далее нам надо сделать так чтобы система понимала некий порядок среди наших сечений, а именно как бы нумерацию их в последовательности 1-ая кривая,2-ая кривая и т.д. Чтобы узнать порядок и количество чисел есть нод List.

7. Далее, очень важный момент. Системе так же надо дать понять, каким образом организуется нумерация этих кривых, что образует собой последовательность этих кривых.

11. Она образует собой серию. Выделяем и перетаскиваем на холст нод Serials.Обратите внимание, что оси графика меняются от 0 до 1, количество наших кривых меняется от 1 до 30. Соответственно надо сделать так, чтобы эти числа могли уместиться в диапазон 0-1. Это можно сделать применив нод One ovex X из вкладки Math.Он как бы обращает последовательность нумераций кривых в управляемый диапазон от 0-1, т.е. на каждую кривую в нужном диапазоне.

8. Пусть методом изменения геометрии серии наших сечений будет изменение масштаба этих сечений.
В ноде Scale есть три входных параметра: G – базовая геометрия- это набор наших сечений, соединяем их как на скрине, C – центр масштабирования – это центр наших плоскостей, которые разбивают направляющую кривую,F – фактор масштабирования- в нашем случае это график, по которому и будет меняться закон масштабирования каждого сечения в нашей серии.Затем мы должны разорвать старую связь для получения Loft и замкнуть его на новый алгоритм получения Loft, а именно масштабируемый по нашему закону.
Обратите внимание, как поменялась геометрия. Теперь, двигая ползунок и меняя внешний вид графика можно менять геометрию нашей поверхности онлайн!! Для того чтобы сохранить геометрию из Grasshopper в Rhinoceros надо к поверхности применить функцию Bake (Испечь).
В итоге я сделал несколько вариантов различных поверхностей. Можно регулировать не только масштаб, но и изменять направляющую кривую. Управление ей производится точками, вызываемыми в Rhino кнопкой F10, скрытие точек F11.

3D моделирование мебели
Лофтинг
Проектирование параметрической мебели.
Создание модели Rhino из Grasshopper

3D моделирование на заказ
Набор «Запеченных» поверхностей Rhino

9.Далее замыкаем основание профиля, по которому строится наша поверхность. Это можно сделать сразу, нарисовав с плоской нижней поверхностью кривую, и главное, она обязательно должна быть замкнута! Сделаем это в Grasshopper.Посмотрите скрин ниже, как я это сделал.

Создание параметрических 3D моделей
Замыкание контура при помощи элементов Grasshopper

10. Окончательное изделие является не сплошной поверхностью, я является некой аппроксимацией этой поверхности внешними торцевыми поверхностями фрезерованного листового материала.Поэтому логично будет использовать не полученную поверхность, а сразу создать набор листовых элементов, образующих конструкцию.Создадим поверхность при помощи Boundary Surface из раздела Surface.Итоговый «виртуальный» фрезерованный лист создается путем вытягивания нашей поверхности вдоль…а вдоль чего?
А вытягиваться он должен в направлении вектора, касательному к направляющей в точке пронзания профиля. Для этого надо определить вектор. Этот вектор фактически перпендикулярен к плоскостям, на которых мы ориентировали наши профили.
Для этого применяем к нему нод Deconstruct Plane, который излекает нам векторы X,Y,Z.Нас интересует Z, указываем его как направление вытяжки.

Поверхностное трехмерное моделирование
Создание поверхности и вытягивание
Программа 3D моделирования Rhinoceros
Определение вектора вытяжки
NURBS моделирование в Rhinoceros
Набор готовых поверхностей и тел

11. В результате я сделал несколько вариантов геометрии, чтобы показать как быстро и легко она меняется. Теперь осталось полученные сечения преобразовать в файлы резки, для того чтобы их мог вырезать из листового материала раскройный фрезерный станок. (Сами понимаете, что пилить это в ручную, займет много времени)). Однако, если подготовить шаблоны в масштабе 1:1, нанести их на листы материала, пронумеровав их в порядке их дальнейшей сборки, то можно воспользоваться и лобзиком.Далее для простоты и понимания дальнейших действий я сокращу количество сечений до 20. У вас их может быть сколько угодно (в разумных пределах, разумеется). Чем больше будет поперечных листов, тем точнее у вас получится приблизиться в форме поверхности,но и больше материала затратиться на производство единицы изделия. Думаю, здесь все понятно. Далее нам надо получить набор плоских поверхностей,я сделал,обратную той,что мы делали,ориентируя профиль нашей тумбы вдоль направляющей прямой:я ориентировал наши поверхности на плоскость XY.Когда мы «Запечем» все полученные поверхности,мы получим фактически набор поперечных сечений.Однако для создания файла раскройки нам нужен не набор поверхностей, а набор контуров их (поверхностей).Именно они будут являться траекториями,по которым движется фреза станка, формируя контур. Контуры обычно сохраняются в форматах .cdr (Corel Draw) или в форматах .dxf/.dwg (AutoCAD) И тому подобные.

Раскрой листового материала.Файлы резки
Набор готовых поверхностей для Rhino

В заключении хотел бы отметь, что для изготовления полноценной конструкции нужно в модели дополнительно и сразу продумать систему соединения листов между собой в цельную конструкцию.При небольшой кривизне конечной формы удобно использовать длинные шпильки диаметром 6-8 мм с гайками (или проставками), задающими необходимый интервал при соединении листов. Если конструкция сильно изогнута, то можно использовать те же проставки, но соединять конструкцию специально изготовленным тросом с резьбовыми концами.

Tags: , , , , ,

Добавить комментарий

© 2011–2019 kd3d.ru | Москва,Врачебный проезд,д.10,к.1