Меню

Скрипты для Rhinoceros

Фантастические твари и где они обитают

Розита Каширцева

07.12.2019

Время чтения: 10 мин

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

Розита Каширцева, архитектор бюро MAD Architects, рассказывает о разнице двух подходов и о том, какие возможности для архитектора открывает базовое программирование в среде Rhino.

Что такое скрипт?

Плагины и скрипты — это два разных способа расширить функционал Rhino. Но работают они по-разному, и для повторяющихся задач скрипты иногда оказываются эффективнее.

Плагин — это программа (или приложение) с собственным интерфейсом, которая добавляет к возможностям Rhino дополнительный набор функций и требует отдельной установки, но работает лишь внутри самой программы.

Скрипт — это текстовый файл с кодом дополнительных команд, который написан на одном из языков программирования. Его достаточно подгрузить в Rhino, и новые команды, содержащиеся в скрипте, можно будет вызывать через командную строку программы или с помощью панели иконок в интерфейсе. При желании из кода скрипта можно собрать плагин.

Кто и как использует скрипты?

Создавать скрипты самостоятельно не так легко, как пользоваться уже готовыми: для разработки необходимо владеть хотя бы одним из языков программирования (VBScript1, Python2). Чтобы освоить скриптинг, мы рекомендуем начать с изучения Grasshopper, перейти к основам Python, а затем проштудировать официальный гайд Rhino.Python.

Некоторые известные архитектурные бюро используют возможность создания скриптов максимально эффективно — например, команда голландского бюро UNStudio собрала даже собственную закрытую библиотеку. В других бюро появляются собственные отделы разработки и скриптинга, сотрудники которых работают с разными языками программирования — так делают в Zaha Hadid Architects и MAD Architects

Мы попросили архитектора Илью Переяславцева (Mospace), работавшего в отделе CODE в Zaha Hadid Architects с 2015 по 2016 год, рассказать, как возможности скриптинга используются в бюро:

Илья Переяславцев, архитектор, сооснователь студии передового дизайна Mospace

Наиболее популярный инструмент в отделе CODE — Grasshopper (GH). Но важно отметить, что GH используется в основном как среда для скриптинга, в которой есть понятные методы для работы с геометрией. Инструментарий, алгоритмы и системы оптимизации для него мы писали на C#3 внутри GH или создавали отдельную подключаемую библиотеку.

Мы использовали GH для автоматизации простых решений и создания небольших декоративных элементов уже на финальной стадии проекта. А ещё для создания производственных моделей и для взаимодействия с производителями и инженерами.

Внутри нашей команды также активно использовался C++4 для написания плагинов и дополнений к Maya5, а также как инструмент для работы с OpenGL, поиска форм и решений — и просто как инструмент для creative coding.

Ну и наконец, в офисе широко использовался MEL Script6, чтобы быстро создавать и тестировать в Maya дизайн-идеи.

Где найти готовые скрипты?

Pascal Golay

Возможность создания собственных скриптов делает среду Rhino более гибким инструментом и позволяет трансформировать программу под задачи конкретных проектов и команд. 

В открытом доступе уже существует достаточное число библиотек со скриптами, например, библиотеки McNeel и наборы, которые создал Паскаль Голэй (Pascal Golay)скачать их может каждый, а некоторые уже официально добавили в Rhino 6 или планируют внедрить в будущие версии программы. Вот самые популярные из скриптов Голэй:

Sprinkler
Позволяет задать плоскость и произвольно распределить объекты по ней (Surface, Polysurface, Mesh), задавая угол поворота и изменяя масштабы объектов. Команда идеально подходит, например, для быстрого копирования деревьев или людей в модели.

ClippingPlaneCurves
Позволяет создать кривые на пересечение объекта с режущей плоскостью (Clipping Plane). Так, с помощью скрипта можно в один клик создать план этажа или сечение детали — без него пришлось бы создавать отдельную поверхность и использовать команду Intersection — то есть идти гораздо более утомительным путём.

PopUpPlanes
Пригодится, если вы активно пользуетесь CPlane (Construction Plane): список CPlane будет появляться под курсором мышки и больше не нужно будет искать нужные функции в отдельных вкладках.

Peter Harris

Ещё один полезный набор скриптов разработан Питером Харрисом (Peter Harris), он также находится в открытом доступе. Эти скрипты можно разделить на 4 категории: свойства объекта, создание и редактирование геометрии, работа с файлом, дополнения. Вот самые полезные из скриптов Харриса:

JoinCurvesByClosestEnds
Проводит отрезок между двумя ближайшими точками, лежащими на разных линиях. К сожалению, встроенная в Rhino команда CloseCrv на такое не способна.

MagicCap
Создает плоскую поверхность из любых линий или граней. В отличие от стандартной команды Rhino, которая использует для создания плоскости только кривые (линии и полигинии), используя MagicCap можно выбрать грани объекта или использовать смешанный выбор (линии + грани). 

SetX, SetZ, SetY
Выравнивает точки относительно координат XYZ — позволяет поддерживать в файле порядок, чтобы моделировать объекты качественно.

OpenSelectedInNewWorkspace
Позволяет открыть выделенные объекты в новом файле, то есть делает работу с ними быстрее и удобнее.

Marco Traverso

И напоследок — ещё два скрипта от Марко Траверсо (Marco Traverso), которые могут пригодиться любителям организованной работы:

SaveLayers
Позволяет сохранить структуру слоёв из любого файла в текстовый документ.

LoadLayers
Подгружает названия всех слоёв и подслоёв, сохраняя их исходную структуру и цвета в новый файл.

Наш сайт использует файлы cookie. Продолжая использовать сайт, вы даёте согласие на работу с этими файлами.