ARCHICAD: ОТКРЫВАЯ ЗАНОВО.Язык GDL: программирование для уникальных задач архитектора

mainImg
Компaния:
GRAPHISOFT
Этот экспертный материал продолжает цикл статей «ARCHICAD: открывая заново», начатый в декабре 2016 года статьей Владимира Савицкого «Создание конструкций и извлечение рабочих чертежей из модели», а затем продолженный публикациями Светланы Кравченко «ARCHICAD: открывая заново. Визуализация – новые возможности для архитектора» и Александра Анищенко «TEAMWORK: эффективная командная работа шаг за шагом». Цикл призван помочь пользователям в полной мере раскрыть весь потенциал ARCHICAD®. Мы попросили архитекторов поделиться личным опытом использования программы с применением нестандартных подходов, малоизученных функций и новых возможностей, о которых многие пользователи могут и не подозревать. Как разработчики приложения ARCHICAD мы уверены, что только глубокое знание продукта может раскрыть всю его ценность и решающим образом повлиять на результаты, скорость и качество работы проектировщика.
 
Вы тоже предпочитаете «непротоптанные дорожки»? Имеете опыт применения нестандартных подходов в работе с ARCHICAD, регулярно задействуете не самые известные возможности приложения? Будем рады пригласить к сотрудничеству новых авторов: [email protected].
 
Рассказывает Светлана Кравченко, практикующий архитектор:
zooming
Наверняка многие из вас слышали о GDL в ARCHICAD, однако как им пользоваться в работе до сих пор знают далеко не все. Учитывая невероятную полезность этой функции, а также множество вопросов после моего первого вебинара на эту тему, я решила более подробно рассказать о том, как даже поверхностное его знание может здорово помочь в повседневной работе архитектора.
zooming
Начнем с основ
 
GDL (Geometric Description Language, язык геометрического описания) – язык программирования, подобный языку BASIC, созданный для работы в среде ARCHICAD. С его помощью описываются объемные 3D-тела (такие как двери, окна, мебель) и 2D-символы в окне плана этажа. Эти объекты называются Библиотечными Элементами.
 
Для тех, кто хоть немного знаком с программированием, освоить этот язык не составит труда. Впрочем, при достаточном желании изучение GDL окажется вполне по силам и человеку, далекому от этой среды.
 
Любой архитектор изучал в свое время геометрию и начертательную геометрию, имеет отличное объемное мышление, а это уже половина успеха. Не нужно сразу пытаться написать сложные объекты, начинать стоит с основных геометрических фигур и форм; много информации можно почерпнуть, изучая скрипты других Библиотечных Элементов. Ну а самый главный источник информации – это справочное руководство GDL, которое можно открыть через меню Помощь в самом ARCHICAD.
 
Итак, для чего архитектору может пригодиться знание GDL? Например, в отличие от Grasshopper, при помощи которого можно создавать сложные структуры, GDL просто незаменим для написания различных маркеров и выносных надписей, а также при создании специальных компонентов для других Библиотечных Элементов или инструментов. Одним из моих первых применений GDL в работе было создание специального филенчатого полотна двери, которое при изменении размеров не масштабировалось во все стороны, а меняло только размеры филенки. Толщина фигурной рамки и ширина обвязки оставались неизменными. Также архитекторам очень часто хочется добавить какие-то простые функции в существующие объекты стандартных библиотек – и это основная причина, по которой начинают вникать в GDL.
 
Безусловно, знание GDL не является жизненно необходимым, и многие из этих задач можно решить стандартными инструментами. Например, можно построить филенки с обвязкой из перекрытий и сохранить как специальное полотно двери. Если у вас таких нестандартных дверей всего несколько штук, то так будет даже быстрее. Но если в вашем проекте много подобных дверей разных размеров и ширина их меняется в процессе работы, то написание специальной панели в GDL значительно ускорит и упростит работу.
 
Геометрическое описание подразумевает, что любую из возможных фигур можно написать текстом по размерам или координатам.
 
Для 3D-скрипта есть блок команд основных пространственных фигур, таких как:
 
- BLOCK и BRICK – параллелепипед, строящийся по трем размерам с началом в точке 0 системы координат
 BLOCK a, b, c
 BRICK a, b, c
zooming
- CYLIND – цилиндр вдоль оси Z, с высотой h и радиусом r
  CYLIND h, r
zooming
- SPHERE – сфера с центром в начале координат и радиусом r
 SPHERE r
zooming
Похожим образом описываются эллипс и конус.
 
Следующий блок фигур уже сложнее – это различные призмы. Они описываются набором координат точек. Самая простая призма определяется количеством точек (n), высотой (h) и перечислением координат всех точек по порядку.
 
PRISM n, h,
x1, y1,
xn, yn
zooming
Есть много разновидностей призмы. Следующий вид, PRISM_, позволяет указывать к координатам точек коды статусов, которые определяют видимость граней и ребер, а также позволяют создавать криволинейные призмы и призмы с отверстиями (см. в справочнике раздел Коды Статусов). Другой вид, BPRISM_, создает призму, закрученную вокруг оси Y. FPRISM_ строит призму с фаской или скруглением по верхней стороне.
zooming
Существует несколько команд, описывающих более сложные фигуры на основе полилиний: EXTRUDE, PYRAMID, REVOLVE, RULED, SWEEP, TUBE, COONS, MASS. Их описание с примерами можно найти в справочнике.
 
Для 2D-скрипта фигуры описываются другими командами: линия, круг, прямоугольник, полилиния, сплайн. Но можно прописать и команду для построения проекции из 3D-скрипта.
 
Создание 2D- или 3D-форм – это только часть функционала GDL. Если вам нужен просто стол, то проще построить его инструментами самого ARCHICAD. Объект пишется в случае, когда требуется какой-то параметризм: возможность выбора разных типов ножек для стола, количества ножек, изменение размеров стола с сохранением остальных размеров, расчет пиломатериала для его изготовления, вес и стоимость. Объект может вообще не содержать никакой геометрии, а только производить расчеты.
Для этого используются в том числе и Управляющие Предложения (Операторы Управления), такие как циклы, условные операторы, обращение к определенному месту кода (подпрограмме). С циклами и условиями лучше ознакомиться в самом начале – используются они часто. Так, во всех приведенных ниже примерах есть условные операторы.
 
ПРИМЕР №1 – поворот объекта
 
Часто у проектировщиков возникает желание сделать объект поворачивающимся. На этом простом примере и рассмотрим структуру Библиотечного Элемента, а также основные окна Редактора Объектов GDL.
 
Чтобы открыть любой объект, размещенный в пространстве проекта (если разработчик не наложил на него пароль), нужно, выделив его, нажать комбинацию клавиш Ctrl+Shift+O. Другой способ – воспользоваться меню Файл > Библиотеки и Объекты > Открыть Объект. Если в этот момент ни один объект не был выделен, то откроется окно для выбора объекта.
 
Добавим параметры поворота, например, к жалюзийной решетке (рис. 1).
zooming
Рис. 1. Первый подопытный

zooming
Рис. 2. Окно Редактора объектов GDL
Итак, мы открыли окно Редактора объектов GDL (рис. 2).
 
Слева вверху здесь расположено окно просмотра разных видов, как в обычном окне параметров объекта; еще левее кнопки для выбора вида – план, фасад, 3D-окно и предпросмотр.
 
Ниже располагаются кнопки для открытия таблиц параметров, списков данных и скриптов. Скрипты можно открыть двумя способами: кликнуть на кнопку с названием скрипта – открыть в этом же окне, кликнуть на кнопку правее с пиктограммой окна – скрипт откроется в отдельном окне. Это может быть полезно, чтобы одновременно видеть разные скрипты (рис. 3).
zooming
Рис. 3. Одновременно открытые разные скрипты
Наверху в окне любого скрипта есть очень нужная кнопка Проверить: при ее нажатии редактор подскажет, нет ли в скрипте ошибок. Сообщение будет содержать причину ошибки и номер строки, в которой найдена ошибка.
 
В разделе «Детали» можно выбрать подтип объекта: специальное полотно двери, дверная ручка, рама навесной стены и так далее.
 
Так, специальные объекты (ручка, полотно, рама) появятся в соответствующем окне выбора этих элементов. При выборе какого-либо 2D-типа в объекте будут отсутствовать окна для трехмерной геометрии. Там же выбираются типы для разных маркеров – узла, разрезов, выносной надписи, зоны; они также появятся в соответствующих инструментах.
 
В этом разделе можно заполнить описание объекта и выбрать пароль.
 
Далее – «Параметры», где в виде таблицы представлены все данные, которые используются в этом объекте и которые можно изменять во время работы над проектом.
 
Тут нужно добавить параметры для поворотов, которые мы позже будем использовать.
zooming
Рис. 4. Добавление параметров
Нажимаем кнопку Новый, расположенную выше таблицы (рис. 4). Появится новая строка, в которой нужно заполнить столбцы.
 
Первый из этих столбцов – Переменная. Здесь мы латиницей и без пробелов пишем название переменной, которое будет использоваться в скриптах. Именовать нужно так, чтобы было несложно запомнить и при этом легко понять, за что эта переменная отвечает. В нашем случае нужно создать две переменные для значения углов поворотов по осям X и Y (вокруг оси Z объект и так можно поворачивать прямо в плане). Я решила назвать их angle_x и angle_y.
 
В следующем столбце нужно выбрать тип данных. Варианты выбора представлены в таблице 1.
zooming
Таблица 1. Типы данных
Последние два типа не используются в построении объекта, а нужны для большей наглядности и упорядоченности списка в окне параметров объекта. Нам нужен угол – в таблице это вторая пиктограмма.
 
Третий столбец – Имя. Тут можно без правил на любом языке написать, что именно мы хотим потом увидеть в окне параметров объекта.
 
И последний столбец – Значение. Сейчас тут можно оставить 0: это значение меняется в любой момент как в скрипте, так и в параметрах самого объекта. Как выглядят два новых параметра в окне Редактора объектов GDL, показано на рис. 5. С помощью стрелок в начале строки можно переместить строку в удобное место.
zooming
Рис. 5. Добавленные параметры
Затем нужно сохранить объект под новым именем, так как стандартная библиотека зашита в контейнер, и в нем нельзя перезаписывать объекты. Окно Параметров объекта будет теперь выглядеть вот так (рис. 6).
Рис. 6. Новые параметры в окне Параметров объекта
Появились два новых параметра, значение которых можно менять в любой момент. Но сейчас ничего не произойдет, так как еще не написано никаких команд с их использованием.
 
Теперь нужно открыть окно 3D-скрипта.
 
Здесь идет полное описание построения трехмерной модели на основе заданных параметров. Кроме того, в объект могут быть вложены разные макросы.
 
Перед всеми построениями нужно повернуть систему координат, в которой будет строиться объект. Тут важно понять вот какую логику: все повороты, перемещения и масштабирование происходят не так, как при работе в самом ARCHICAD. Мы не берем элемент и не поворачиваем его, а поворачиваем глобальную систему координат (после изменения она становится локальной) перед построением объекта.
 
Перемещение (команда ADD), поворот (ROT), масштабирование (MUL) – это команды преобразования системы координат. Дальше преобразования можно удалять в скрипте по одному, сразу по несколько либо удалить сразу все. В справочнике все это описано достаточно подробно и с примерами.
 
Пример перемещения системы координат в 3D-пространстве сразу по трем осям показан на рис. 7.
 
ADD a, b, c
zooming
Рис. 7. Схема перемещения системы координат
Итак, перед всеми построениями поворачиваем систему координат сначала по одной, потом по другой оси. Поворот по оси Х выполняет команда ROTX alphax, где alphax – угол поворота против часовой стрелки; вместо alphax нужно вписать заранее созданную переменную. По оси Y поворот выполняется аналогично (рис. 8).
zooming
Рис. 8. Изменение 3D-скрипта
Теперь можно задавать разные углы для поворота – и в окне просмотра, расположенном вверху слева, будут происходить изменения 3D-модели (рис. 9).
zooming
Рис. 9. При изменении углов меняется изображение в окне просмотра
Теперь можно задавать разные углы для поворота – и в окне просмотра, расположенном вверху слева, будут происходить изменения 3D-модели (рис. 9).
 
Но в 2D-виде пока ничего не происходит. В 2D-скрипте объект строится отдельными линиями и полилиниями, так отрисовка объекта в плане происходит во много раз быстрее. На одном объекте это незаметно, но если в проекте окажутся сотни таких решеток, торможение будет существенным. Можно высчитать координаты точек этих линий и простроить их так, как они выглядели бы в проекции повернутого объекта, но это не очень просто и не очень быстро. В этой решетке я предлагаю следующее решение: если углы по X или по Y не равны нулю, то объект в 2D-скрипте, то есть для плана, будет отрисовываться как проекция трехмерной модели, а иначе по-старому.
 
Проекцию модели для 2D-скрипта строит команда PROJECT2 projection_code, angle, method. Что означают projection_code, angle, method – можно прочитать в справочнике, мы же познакомимся с более важной командой из раздела операторов управления IF – THEN – ELSE – ENDIF. Это операторы условий, которые помогут выстроить предложение условия из предыдущего абзаца.
 
На рис. 10 я выделила добавленные команды в 2D-скрипте и правее красным цветом дописала «перевод».
zooming
Рис. 10. Изменение 2D-скрипта
Теперь требуется только сохранить объект и можно им пользоваться (рис. 11). Преимущество такого метода перед преобразованием в морф заключается в том, что объект остается параметрическим, его можно считать в спецификациях, в нем можно менять размеры планок, размеры рамки и всё остальное, что было в оригинальном объекте.
zooming
Рис. 11. Повернутые в пространстве новые объекты
Так подробно на этом примере мы рассмотрели основные окна и скрипты Редактора объектов GDL.
 
Если выбранный вами для поворота объект имеет параметры не в виде списка, как в этой решетке, а в виде картинок и схем, это означает, что разработчик написал также графический интерфейс. Чаще всего при этом стандартный список с параметрами скрывают, как на рис. 12: в выпадающем списке страниц параметров нет раздела «Все параметры».
zooming
Рис. 12. В этом объекте отсутствует список всех параметров в стандартном виде
В этом случае нужно зайти в скрипт параметров и найти команду, которая прячет все параметры (рис. 13).
 
В этом скрипте описываются все действия, которые влияют на параметры:
 
- обозначение вариантов или диапазонов возможных значений (VALUES);
- какие-либо расчеты, результат которых присваивается параметру (PARAMETERS);
- скрытие или блокировка параметров (HIDEPARAMETER, LOCK).
zooming
Рис. 13. Строка в скрипте параметров, которая прячет все параметры
Строку HIDEPARAMETERS ALL можно просто удалить либо, поставив в начале строки «!», сделать ее нечитаемой (по синтаксису GDL строка, начинающаяся с восклицательного знака, считается комментарием. Далее описания и переводы на скриншотах я буду писать именно после знака «!»). После этого в списке страниц параметров появится строка «Все параметры», и, выбрав ее, вы увидите стандартного вида список с параметрами, среди которых будут и новые строки для поворота.
 
ПРИМЕР №2 – текст на символе
 
Следующий пример я беру из текущего проекта. При работе с планом многоквартирного жилого здания требовалось на наружных блоках кондиционеров поставить букву «К» – причем так, чтобы она всегда располагалась вертикально. Конечно, букву можно было бы просто дописать сверху текстом или поставить выносную надпись-текст, но тогда при повороте кондиционера, возможно, пришлось бы двигать и текст.
 
Для начала я добавила четыре новых параметра (рис. 14):
zooming
Рис. 14. Добавление новых параметров в объекте Кондиционер Воздуха
1. Показывать текст: тип параметра – логическое значение, что подразумевает два возможных значения: 0 (нет) и 1 (да). Таким образом, текст можно будет включить или отключить.
 
2. Специальный текст: тип параметра – текстовый. Позволит вписывать любой текст в символ (я намерена использовать одну букву, чтобы она помещалась внутри прямоугольника блока кондиционера).
 
3. Шрифт: тип – текстовый. Обратите внимание – некоторые виды написания этой переменной позволяют выбирать в столбце значения шрифта из списка установленных на компьютере. «Fonttype» вызывает это список автоматически, если же я напишу «typefont» или просто «font», то придется писать название шрифта вручную. Этот момент я заметила случайно в каком-то из стандартных объектов.
 
4. Перо текста: тип – перо. Ну, тут всё понятно.
 
Теперь посмотрим на пиктограммы, которые я нажала в начале строк.
 
У первой строки нажата пиктограмма , что означает bold – жирный. То есть эта строка в окне параметров объекта будет жирной.
 
У трех других – пиктограмма . Она означает, что эти строки будут вложены выпадающим списком под первую строку.
 
На рис. 15 – скриншот, иллюстрирующий, как это выглядит в Параметрах Объекта.
 
Для начала я добавила четыре новых параметра (рис. 15):
Рис. 15. Окно Параметров Объекта
 
А на рис. 16 – то, что я дописала в 2D-скрипте (по традиции с переводом и комментариями).
zooming
Рис. 16. Дописанные строки в 2D-скрипте
Рис. 16. Дописанные строки в 2D-скрипте
 
На следующем скриншоте (рис. 17) я для большей ясности подкрасила разные типы слов/команд/переменных.
zooming
Рис. 17. Дописанные строки в 2D-скрипте с пояснениями
Объект готов (рис. 18).
zooming
Рис. 18. Новые объекты на плане под разными углами
А если бы я не писала строки с поворотом и масштабированием, то объект выглядел бы так, как на рис. 19.
zooming
Рис. 19. Новые объекты на плане под разными углами без строк поворота и масштабирования

 
ПРИМЕР №3 – детализация
 
Для упрощения работ над проектом можно при написании объекта добавить текстовый параметр с выбором из нескольких вариантов детализации (простой, средний, детальный). И в 3D-скрипте при построении разных мелких деталей дописать условие типа:
 
если уровень детализации = “детально”, то
(описание построения деталей)
конец условия
 
Отдельного внимания заслуживают Глобальные Переменные. В справочном руководстве они занимают 40 страниц и для удобства поиска сгруппированы по темам. В предыдущем примере я использовала некоторые данные об ориентации объекта в проекте. Тот же раздел справочного руководства содержит Глобальные Переменные для координат расположения объекта – с их помощью создаются объекты типа выноски с координатами или отметки высоты на разрезе/фасаде.
 
Очень часто используется GLOB_SCALE – масштаб чертежа (зависит от вида согласно текущему окну), при масштабе 1:100 он равен 100, при масштабе 1:20 равен 20. Применяется чаще всего для перевода размера шрифта в метры модели или наоборот. Также на этот параметр можно «повесить» варианты отображения на плане. Например, для скамейки написать в 2D-скрипте следующее:
 
IF GLOB_SCALE < 100 THEN ! если масштаб крупнее, чем 1:100,то
PROJECT2 3, 270, 2  ! строить проекцию из 3D-модели
ELSE ! иначе
ENDIF ! конец условия
Так на генплане в масштабе 1:500 скамьи отобразятся прямоугольниками, а на фрагменте с более крупным масштабом будет отрисовываться детальная проекция.
 
Подобный прием, но уже для трехмерной модели, используется в стандартных деревьях – если включить галочку Автоматический тип кроны. На определенном расстоянии от камеры тип кроны меняется с детального на простой, а с простого на эллипс. Правда, для того чтобы скрипты объекта перечитались, нужно что-то с ними сделать – например, после смены ракурса, выделив все деревья, открыть окно параметров объекта и, ничего не меняя, просто нажать ОК, или нажать и отжать галочку замены покрытий.
 
Покажу на примере аппроксимации сферы. Вот что я написала в 3D-скрипте:
 
discam_x=abs(GLOB_EYEPOS_X-SYMB_POS_X)
discam_y=abs(GLOB_EYEPOS_Y-SYMB_POS_Y)
discam_h=sqr(discam_x^2+discam_y^2)
discam_z=abs(GLOB_EYEPOS_Z-SYMB_POS_Z)
discam=sqr(discam_h^2+discam_z^2)
if discam<=20 then res=50
if discam<=30 and discam>20 then res=20
if discam<=40 and discam>30 then res=10
if discam>40 then res=5
 
resol res
sphere 1
 
В скрипте я использовала Глобальные Переменные GLOB_EYEPOS_X, GLOB_EYEPOS_Y, GLOB_EYEPOS_Z – это координаты расположения камеры (глаз) в 3D-окне проекта и SYMB_POS_X, SYMB_POS_Y, SYMB_POS_Z – это координаты расположения объекта в пространстве;
abs – модуль числа (убирает «-», если он есть);
sqr – квадратный корень;
^2 – возведение числа в квадрат.
 
В 3D-окне на разном расстоянии от камеры сфера будет строиться с разной аппроксимацией. Для наглядности я включила каркасный режим (рис. 20).
zooming
Рис. 20. Объект с разной аппроксимацией в зависимости от расстояния в 3D-окне
Через Глобальные Переменные объект может получить:
 
- данные о расположении проекта (север, широта, долгота, возвышение), установленные в –соответствующем диалоговом окне;
- текущий этаж и собственный этаж;
- тип текущего вида (например, в перемычках ГОСТ используется такое условие: если тип вида – ведомость, то строить вид перемычки в сечении с выносками позиций); в примере с решеткой можно дописать такое условие: если тип вида – ведомость, то не поворачивать систему координат, чтобы в любом случае в ведомости решеток был бы фронтальный вид;
- неполный показ конструкций (можно заставить объект не показывать какие-то части, если выбран показ только ядра).
 
В объект окна или двери можно вытащить данные о стене. Выносные надписи могут получить очень много различной информации об элементе, с которым они связаны, – например, флажок со слоями многослойной конструкции или выноску с объемом элемента. И так далее 40 страниц разных и очень полезных Глобальных Переменных.
 
ПРИМЕР №4 – маркер зоны
 
Рассмотрим, как создается собственный маркер зоны. Если создать новый объект и в разделе Детали выбрать ему подтип Паспорт Зоны, то в разделе Параметры отображаются синим цветом все специфические параметры, которые инструмент Зона передает маркеру (рис. 21).
Рис. 21. Параметры объекта подтипа Паспорт Зоны
При помощи команды TEXT2 можно написать любую из этих переменных в 2D-скрипте – так получится маркер, состоящий только из текста (рис. 22).
zooming
Рис. 22. 2D-скрипт с использованием переменных зоны
Используя общие параметры маркера зоны, можно определить текстовый стиль и высоту строки, зависящую от высоты шрифта:
 
DEFINE STYLE “ROOM” AC_TextFont_1,ROOM_LSIZE,5,0
STYLE “ROOM”
row = ROOM_LSIZE/1000*GLOB_SCALE*1.5
 
text2 0, row,ROOM_NUMBER
text2 0, 0, ROOM_NAME
text2 0, -row, ROOM_AREA
 
Можно создать новый параметр для выбора типа маркера (рис. 23), задать ему варианты в скрипте Параметров (рис. 24) и в 2D-скрипте прописать разные виды отрисовки маркера для разных типов.
zooming
Рис. 23. Добавление параметра для типа маркера
zooming
Рис. 24. Скрипт Параметров – варианты значений параметра «mt»
2D-скрипт:
 
 if mt=«маркер с номером» then
  text2 0, 0, ROOM_NUMBER
  CIRCLE2 0,0,row
 endif
 if mt=«номер и площадь» then
  text2 0, row/2, ROOM_NUMBER
  text2 0, -row/2, AREA_TEXT
 endif
 if mt=«название и площадь» then
  text2 0, row/2, ROOM_NAME
  text2 0, -row/2, AREA_TEXT
 endif
 if mt=«номер, название и площадь» then
  text2 0, row,  ROOM_NUMBER
  text2 0, 0, ROOM_NAME
  text2 0, -row, AREA_TEXT
 endif
 if mt=«только площадь» then
  text2 0, 0, AREA_TEXT
 endif
В этом скрипте в качестве площади я не использовала заранее определенную переменную площади зоны, а преобразовала площадь в текст и добавила к ней единицы измерения:
 
area = str (ROOM_AREA, 4, 2) ! преобразования числа в текст с 2 знаками после запятой
AREA_TEXT = area + « кв.м.» ! добавление к строковому значению букв “кв.м.”
 
Можно дополнить строки в маркере линиями, разделяющими некоторые строки. Чтобы найти длину строки, нужно использовать команду STW. Допишем в начале скрипта:
 
tl1=stw(ROOM_NUMBER) /1000*GLOB_SCALE
tl2=stw(ROOM_NAME) /1000*GLOB_SCALE
tl3=stw(AREA_TEXT) /1000*GLOB_SCALE
 
if mt=«номер и площадь»then tl= MAX (tl1, tl3)
if mt=«номер, название и площадь»then tl= MAX (tl1, tl2)
if mt=«название и площадь»then tl= MAX (tl2, tl3)
if mt=«только площадь»then tl= tl3
 
И в вариантах маркеров допишем линии командой LINE2 (рис. 25).
Рис. 25. 2D-скрипт
Если номер зоны состоит из нескольких цифр, для маркера можно создать параметр радиуса окружности, независимый от высоты шрифта, или же вместо окружности описать фигуру наподобие эллипса, длиной равной длине строки номера зоны, которую мы нашли ранее:
 
POLY2_ 5, 1+2+4,
-tl1 /2, row, 1,
tl1 /2, row, 1,
tl1 /2, -row, 1001,
-tl1 /2, -row, 1, -tl1 /2, row, 1001
 
Можно добавить новый параметр для типа пола (FLOOR_TYPE) и параметр, позволяющий скрывать или показывать его (ShowFloorType), а в 2D-скрипте дописать треугольник полилинией и текст с типом пола:
 
if ShowFloorType then
ADD2 0, row*3
POLY2_ 4, 1,
-row*1.4, -row*0.8, 1,
row*2.8,60,201,
row*1.4, -row*0.8, 1,
0,0,700
text2 0,0, FLOOR_TYPE
endif
 
Для типа пола желательно добавить отдельный параметр для пера, а также точки для графического редактирования расположения маркера пола. О том, как добавлять точки графического редактирования, я подробно рассказывала в своем вебинаре, а по ссылке в конце статьи можно скачать объекты и посмотреть, как это реализовано в данном конкретном случае.
 
И напоследок рассмотрим еще один очень важный подтип объекта, который открывает большие возможности, – Глобальные Параметры Библиотеки (рис. 26).
zooming
Рис. 26. Выбор подтипа объекта «Глобальные Параметры Библиотеки»
Объект с этим подтипом ничего не строит и не чертит, он определяет параметры в модельных видах. Таким образом, туда можно вынести те параметры, которые хотелось бы видеть общими у объекта, но при этом иметь возможность выставить разное значение для разных видов.
 
Покажу это на примере маркера зоны. Мне попадались проекты, в которых было несколько комплектов зон в разных слоях для разных видов. Если есть потребность в разных маркерах, то Глобальные Параметры Библиотеки – лучшее решение.
 
У меня есть маркер, в котором есть возможность ставить тип пола в треугольнике и менять тип маркировки (рис. 27). И эти два параметра вынесены в отдельный файл подтипа Глобальные Параметры Библиотеки (рис. 28).
zooming
Рис. 27. Зона со специальным маркером в окне плана
zooming
Рис. 28. Параметры объекта подтипа «Глобальные Параметры Библиотеки»
Чтобы эти параметры отобразились в диалоговом окне Параметры Модельного Вида, нужно прописать их в скрипте Интерфейса объекта (рис. 29). Не буду подробно задерживаться на специальных командах для этого скрипта, они достаточно подробно и с примерами описаны в справочнике. Скажу только, что тут мы описываем, в каком месте поля графического интерфейса будет располагаться та или иная надпись или кнопка (поле с выбором вариантов, галочка и т.д.), в Пользовательский Интерфейс можно вставлять и изображения. В стандартной библиотеке почти каждый объект имеет графический интерфейс; вы можете увидеть все возможности и посмотреть, как написаны эти скрипты. Кроме кнопки Проверить скрипт имеет еще и кнопку Просмотр. Нажав на нее, можно быстро увидеть, что получается.
zooming
Рис. 29. Скрипт интерфейса объекта подтипа «Глобальные Параметры Библиотеки»
Можно сохранить объект и посмотреть его в диалоговом окне Параметры Модельного Вида (рис. 30). Здесь мы сможем менять тип маркировки сразу для всех зон в проекте (с этим маркером), но отдельно для разных видов.
zooming
Рис. 30. Новая вкладка Глобальных Параметров в диалоговом окне Параметры Модельного Вида
Теперь в объекте маркера зоны нужно запросить у объекта значения этих двух параметров.
В Основном Скрипте (который читается объектом первым, поэтому все расчеты и определения значений, которые должны применяться в нескольких скриптах, лучше писать тут) пишу две вот такие строки:
 
success1 = LIBRARYGLOBAL ("LibraryGlobals20«, »ShowFloorType", ShowFloorType)
success2 = LIBRARYGLOBAL ("LibraryGlobals20«, »mt", mt)
 
«success» будет равен 1, если запрос выполнен успешно; в противном случае будет 0.
 
Это можно использовать для того, чтобы вместо маркера зоны написать предупреждающее сообщение о том, что в библиотеку не подгружен объект LibraryGlobals20.
 
Дальше объект работает как обычно, используя два новых значения: если тип маркировки такой-то, то писать то-то и то-то и т.д.
 
В этой статье я осветила лишь малую часть возможностей GDL. С его помощью можно создавать как совсем простые элементы для оформления, так и очень сложные объекты.
 
Например, вы занимаетесь небольшими и простыми домами из СИП-панелей. У вас есть определенный список вариантов изменений проекта:
 
- длина и ширина дома может быть от 2,4 до 24 метров с шагом 1,2 м;
- если ширина превышает 6 м, то посередине должна стоять еще одна стена;
- два варианта высоты этажа в зависимости от типоразмера панели;
- этажность – один или два этажа;
- окна могут быть в определенных местах панелей, определенного размера;
- отделка фасадов в трех вариантах;
- кровельное покрытие в трех вариантах;
- толщина стен нескольких типоразмеров
 и так далее.
 
Вы можете задать все эти параметры для объекта, дописав еще стоимость за квадратный метр панели, кровли, отделки и т.д. А в 2D- и 3D-скриптах объекта полностью выстроить и вычертить этот дом с переменными вместо статичных размеров. Чтобы пользователь не запутался в длинном списке параметров, можно написать графический интерфейс на несколько страниц с картинками и схемами. В Основном Скрипте посчитать все объемы и вывести стоимость. Еще можно в 2D-скрипте рядом с планом вывести таблицу с раскроем панелей. Написание такого объекта потребует немало времени, нужно будет составить детальное ТЗ, предусмотреть все нюансы, но зато вы получите не просто объект, а почти программу, в которой выбором параметров можно будет получить комплект эскизного проекта с расчетом материалов и стоимости для заказчика.
 
Надеюсь, этим обзором я кого-то заинтересовала возможностями GDL. Моя история началась с острого желания изменить какую-то мелочь в каком-то стандартном маркере зоны, и чем больше я вчитываюсь в справочник, тем больше раскрывается потенциал этого инструмента, на мой взгляд, очень полезного для архитектора.
 
По ссылке ниже можно скачать все объекты, которые рассматривались в качестве примеров в этой статье:
 
 
Примечание. Для написания этих объектов использовался ARCHICAD 20, поэтому в более ранних версиях они не откроются.
 
О GRAPHISOFT
Компания GRAPHISOFT® в 1984 году совершила BIM революцию, разработав ARCHICAD® – первое в индустрии САПР BIM-решение для архитекторов. GRAPHISOFT продолжает лидировать на рынке архитектурного программного обеспечения, создавая такие инновационные продукты, как BIMcloud™ – первое в мире решение, направленное на организацию совместного BIM-проектирования в режиме реального времени, EcoDesigner™ – первое в мире полностью интегрированное приложение, предназначенное для энергетического моделирования и оценки энергоэффективности зданий и BIMx® – лидирующее мобильное приложение для демонстрации и презентации BIM-моделей. С 2007 года компания GRAPHISOFT входит в состав концерна Nemetschek Group.

Поставщики, технологии

GRAPHISOFT

29 Августа 2017

GRAPHISOFT: другие статьи и новости
Технологии и материалы
«Лазалия»: Новый взгляд на детскую игровую среду
Игровой комплекс «Лазалия» от компании «Новые Горизонты» сочетает в себе передовые технологии и индивидуальный подход, что делает его популярным решением для городских парков, жилых комплексов и других общественных пространств.
​VOX Architects: инновационный подход к светопрозрачным...
Архитектурная студия VOX Architects, известная своими креативными решениями в проектировании общественных пространств, уже более 15 лет экспериментирует с поликарбонатом, раскрывая новые возможности этого материала.
Свет, легкость, минимализм: поликарбонат в архитектуре
Поликарбонат – востребованный материал, который помогает воплощать в жизнь смелые архитектурные замыслы: его прочность и пластичность упрощают реализацию проекта и обеспечивают сооружению долговечность, а характерная фактура и разнообразие колорита придают фасадам и кровлям выразительность. Рассказываем о современном поликарбонате и о его успешном применении в российской и международной архитектурной практике.
​И шахматный клуб, и скалодром: как строился ФОК...
В 2023 году на юго-востоке Москвы открылся новый дворец спорта. Здание напоминает сложенный из бумаги самолётик. Фасадные и интерьерные решения реализованы с применением технологий КНАУФ, в том числе системы каркасно-обшивных стен (КОС).
​За фасадом: особенности применения кирпича в современных...
Навесные фасадные системы (НФС) с кирпичом – популярное решение в современной архитектуре, позволяющие любоваться эстетикой традиционного материала даже на высотных зданиях. Разбираемся в преимуществах кирпичной облицовки в «пироге» вентилируемого фасада.
Силиконо-акрилатная штукатурка: секрет долговечности
Компания LAB Industries (ТМ Церезит) представила на рынке новый продукт – силиконо-акрилатную штукатурку Церезит CT 76 для фасадных работ. Она подходит для выполнения тонкослойных декоративных покрытий интенсивных цветов, в том числе самых темных, гарантируя прочность и устойчивость к внешним воздействиям.
Свет и материя
​В новой коллекция светильников Центрсвет натуральные материалы – алебастр, латунь и кожа – создают вдохновляющие сюжеты для дизайнеров. Минимализм формы подчеркивается благородством материала и скрывает за собой самую современную технологию.
Teplowin: новое имя, проверенный опыт в фасадном строительстве
Один из крупнейших производителей светопрозрачных конструкций на российском строительном рынке – «ТД Окна» – объявил о ребрендинге: теперь это бренд Teplowin, комплексный строительный подрядчик по фасадам, осуществляющий весь спектр услуг по производству и установке фасадных систем, включая алюминиевые и ПВХ конструкции, а также навесные вентилируемые фасады.
Архитектурная подсветка фасадов ЖК и освещение придомовой...
Уютно должно быть не только внутри жилого комплекса, но и рядом с ним. В этой статье мы рассмотрим популярные осветительные решения, которые придают ЖК респектабельности и обеспечивают безопасную среду вокруг дома.
Облицовочный кирпич: какой выбрать?
Классический керамический, клинкерный или кирпич ручной формовки? Каждый из видов облицовочного кирпича обладает уникальным набором технических и эстетических характеристик. На примере продукции ГК «Керма» разбираемся в тонкостях и возможностях материала для современных проектов.
Sydney Prime: «Ласточкин хвост» из кирпича
Жилой комплекс Sydney Prime является новой достопримечательностью речного фронта Большого Сити и подчеркивает свою роль эффектным решением фасадов. Авторский подход к использованию уникальной палитры кирпича в навесных фасадных системах раскрывает его богатый потенциал для современной архитектуры.
Возрождение лесной обители. Как восстанавливали старинный...
Во Владимирской области возрожден из руин памятник церковного зодчества начала XIX века – Смоленская церковь на Веретьевском погосте. Реставрационные работы на каменном храме проводились с использованием материалов компании Baumit.
Урбанистика здоровья: спорт в проектах благоустройства
Уличные спортивные зоны являются неотъемлемой частью современной урбанистической среды и призваны, как и благоустройство в целом, стимулировать жителей больше времени проводить на улице и вести здоровый образ жизни. Компания «Новалур» предлагает комплексные решения в области уличного спорта и также является производителем линейки уличных тренажеров с регулируемой нагрузкой, подходящих максимально широкому кругу пользователей.
​Архитектура света: решения для медиафасадов в...
Медиафасады – это инновационное направление, объединяющее традиционные архитектурные формы с цифровыми технологиями. Они позволяют создавать интерактивные здания, реагирующие на окружающую среду, движение пешеходов или даже социальные медиа. Российская компания RGC представляет технологию, интегрирующую медиа непосредственно в стеклопакеты.
Как уменьшить запотолочное пространство для коммуникаций?
Повысить уровень потолка за счет сокращения запотолочного пространства – вполне законное желание девелопера, архитектора и дизайнера. Но этому активно сопротивляются инженеры. Сегодня мы расскажем о красивом и нестандартном решении этой проблемы.
Холст из стекла
Открытие нового корпуса Третьяковской галереи на Кадашевской набережной в мае 2024 года ознаменовало не только расширение знаменитого музея, но и знаковое событие в области использования архитектурного стекла с применением технологии печати. О том, как инновационное остекление расширило границы музейной архитектуры – в нашем материале.
От эскиза до «Дракона»: творческая кухня «Новых Горизонтов»
Компания «Новые Горизонты», отметившая в 2024 году свое 25-летие, прошла путь от дистрибьютора известного финского производителя Lappset до разработчика собственных линеек детского игрового оборудования. За четверть века они эволюционировали от импортера до инновационного проектировщика и производителя, способного воплощать самые смелые идеи в реальность.
​Палитра вашего путешествия
Конкурс авторских палитр для интерьера «Время, место и цвет» в самом разгаре. Его проводит дизайнер, декоратор и преподаватель Виктория Малышева в партнерстве с брендом красок Dulux. Виктория рассказала об идее конкурса и собственных палитрах.
От плоскости к объему: революция в остеклении с помощью...
Моллирование стекла – технология, расширяющая границы архитектурного проектирования и позволяющая создавать сложные геометрические формы в остеклении зданий. Этот метод обработки стекла открывает новые возможности для реализации нестандартных архитектурных решений, сочетая эстетику и функциональность.
Сейчас на главной
Плач, затмение и городище
Якорный объект экопарка «Каялов бор» в городе Россошь – маршрут длиной в 3,5 километров, который знакомит посетителей с событиями, описанными в «Слове о полку Игореве». Архитекторы воронежского бюро TOU ARCHITECTS дополняют тематические объекты, которые обеспечивают разнообразный досуг, спортивными трассами и событийной площадью.
Зодчество 2024: семеро
Как уже говорилось, в этом году главные награды «Зодчества» не присуждены. Рассуждаем, почему так, фантазируем на тему возможных форматов судейства – как бы было хорошо, как бы было здорово… Вместо двух наград получилось семь: их состав тоже интересен. Публикуем полный список лауреатов XXIII фестиваля.
Балкон над долиной
Вилла на севере Ливана по проекту местного бюро BLANKPAGE Architects раскрывается над зеленой приморской долиной как панорамная терраса.
Золотая коронка
Концепцию стоматологической клиники в Екатеринбурге бюро CNTR обозначило как mouth full of gold: белоснежные стены из керамогранита оттеняют матовые латунные детали. Чтобы отсылка не стала слишком прямолинейной, архитекторы сосредоточились на пропорциях здания, лавируя между инсоляционными и пожарными ограничениями.
Собор для туристов
Трехнефный вокзал для линии скоростной железной дороги по проекту gmp в Наньчане облегчит путь на работу жителям, а туристам – доступ к ключевым достопримечательностям региона.
Спелый апельсин
Учебный центр Edu Expo построен в центральной части Ташкента по проекту местного бюро Parallel architects. Относительно простая планировочная структура – аудитории и конференц-залы, сосредоточенные вокруг центрального холла – проявлена на фасаде панелями с паттерном штрих-кода. Однако вставки ярко-оранжевых балконов и ниш полностью меняют восприятие.
Гибкость и интеграция
Не так давно мы рассказывали о проекте 4 очереди ЖК ÁLIA, спроектированной компанией APEX. Теперь нам показали варианты разработанных ими же ограждений пространств приватных дворов, с интегрированными в них разнообразными общественными функциями. Участие архитекторов комплекса в работе над такой деталью, как ограды, – считаем показательным.
Сады и узоры
С проектом креативного кластера в Саудовской Аравии бюро IND взяло премию WAF в номинации «Проекты», в категории «Культура». Архитекторы предложили жесткую ортогональную структуру, но интегрировали в нее систему камерных пространств с тенью, садами и водоемами. Отсылки к традиционной культуре, такие как трамбованная земля или имитация узоров на ткани, соединяются с вертикальным озеленением и структурным остеклением.
Начало новой жизни
ЦСИ Винзавод объявляет о начале переосмысления архива, собранного за время его работы на протяжении 17 лет. Архив и библиотека будут доступны для исследователей, обещан сайт и ежегодные выставки. Первая открылась сейчас в Зале красного: интерьер уподоблен лаборатории будущего анализа, но базируется это высказывание на христианской и дионисической теме умирания / оплакивания / возрождения, тесно связанной с вином. Прямо таки пара «Архитектуре духа».
И свет, и тень
Сегодня последний день работы выставки «Открытого города» в Руине Музея архитектуры. Там атмосферная экспозиция кураторов: Александра Цимайло и Николая Ляшенко, – почти как это бывает в иерархии многих церквей – подчинила себе информацию о проектах воркшопов. Но получилось красиво, этакий храм новой реальности понимания духа. И много – 13 участников. Такая, знаете ли, особенная дюжина.
Древнеримский порядок
Учебный корпус CuBo Римского биомедицинского университета по проекту бюро Labics соединяет в себе открытость и ориентированность на коммуникацию с жесткой матрицей древнеримского градостроительства.
Лес у моря
В рамках архитектурной экспедиции «Русский Север», организованной СПбГАСУ, студентам удалось посетить труднодоступное село Ворзогоры. Сложную дорогу окупает увиденное: песчаный берег Белого моря, старинные деревянные церкви, нетронутый пейзаж. В своих работах команды искали способы привлечения туристов, которые не нарушат уклад места, но помогут его сохранить.
Вызов технический и туристический
Смотровые платформы над рекой Нуцзянь в Тибете по проекту бюро Archermit задуманы как вызов для путешествующих по западу Китая туристов, но экстремальные условия Сычуаньских Альп потребовали максимальных усилий и от архитекторов, конструкторов и строителей.
WAF 2024: малые награды
Завершаем наш обзор финалистов Всемирного фестиваля архитектуры специальными номинациями. В этом году отмечены выдающие работы с цветом, естественным светом, камнем, а также экологичными решениями. Приз за лучший малый объект вновь ушел в Японию.
Сказки Нёноксы
Архитектурная экспедиция «Русский Север», организованная СПбГАСУ, посвящена исследованию туристического потенциала двух арктических сёл. В этой публикации рассказываем о поморском поселении Нёнокса, сохранившем пятишатровую церковь и другие характерные деревянные постройки. Пять студенческих команд из разных городов на месте изучали архитектурное наследие и дух места, а затем предложили концепции развития с модным «избингом» и экотропами, а также поработали над брендом и событийной программой.
Шаг вперед
Жилой комплекс HIDE стал для архитекторов ADM, Андрея Романова и Екатерины Кузнецовой, существенным рубежом в поиске новой пластики высотных башен: гибкой и дискретной, позволяющей оживлять объем и силуэт, моделировать форму. За последние годы подход стал «фирменной фишкой» ADM, а его в становлении ключевую роль сыграла, в частности, золотистая башня HIDE. Рассказываем историю, рассматриваем подробности построения комплекса, находим его стержень.
Роль фактуры
Активная поверхность бетона на фасадах и в интерьерах – основа архитектурного образа виллы в пригороде Бразилиа по проекту Studio Bruno Porto.
WAF Inside 2024: голодный город
Жюри Всемирного фестиваля архитектуры признало лучшим интерьерным проектом года пекинскую лапшичную. Новозеландское бюро Office AIO сумело найти оптимальные планировочные решения для гибридной концепции обслуживания, а также, оставаясь в рамках минимализма, предложило яркие решения, которые притягивают посетителей и располагают к общению. Рассказываем подробнее об этом проекте и показываем победителей других категорий.
Зодчество 2024: шесть причин зайти на фестиваль
Сегодня в 32 раз стартует фестиваль Союза архитекторов «Зодчество». Он продлится 3 дня: Гостиный двор будет заполнен экспозициями, программа же заполнена мероприятиями. Мы посмотрели на анонсы и сделали свою выборку, чтобы помочь вам сориентироваться. Дедала – вручают в четверг вечером.
WAF 2024: инклюзия
Всемирный фестиваль архитектуры подвел итоги. Главный приз забрала школа, тесно связанная с сообществом аборигенов Австралии, проектом года стал религиозный центр алевитов в Турции, а в лучшем ландшафтном проекте используются традиционные архитектурные мотивы китайского субэтноса хакка. И даже работа российского бюро в этом году попала в список финалистов – при соблюдении условия, что сделана она для другой страны. Рассказываем о победителях и финалистах.
Черное кимоно
Бюро IDEOLOGIST подготовило проект реконструкции позднесоветской базы отдыха, расположенной на скале у Черного моря, недалеко от Геленджика. Концепция выдержана в японском духе, что с одной стороны соответствует вектору развития курорта, с другой – логично соотносится с созерцательными пейзажами субтропического пояса.
Золото в песках
В Дубае открылся офис трансконтинентальной компании, связанной с добычей и обработкой ресурсов. Его интерьер реализован по проекту T+T Architects, а они мастера своего дела, умеют организовать пространство современно, разнообразно, гибко и оригинально. В данном случае на представительском этаже «царит» гигантская, облицованная золотистой латунью, перегородка, а контекстуально обоснованный фон дает слоистая фактура прессованной земли.
Новые проекты в малых городах
Показываем отчет о паблик-токе «Большие амбиции малых городов», предоставленный его организаторами. Среди проектов – два для Палеха, по одному для Наро-Фоминска и Зеленоградска
Пресса: Это Валентин Коган (бюро SLOI) — пожалуй, самый востребованный...
Основателя бюро SLOI Валентина Когана можно назвать самым успешным молодым архитектором Петербурга — по его проектам строят сразу несколько больших объектов, в том числе протестантскую церковь в Парголово и жилой комплекс и гостиницу рядом с Островом фортов в Кронштадте. Как успевать за глобальными профессиональными трендами, что общего у придуманного им деревянного храма с айфоном и какие КОНКРЕТНЫЕ (да, капсом!) меры помогут сделать архитектуру Петербурга лучше, специально для отдела «Петербург будущего» Собака.ru архитектурный критик Мария Элькина узнала у Валентина Когана.
«Открытый город 2024»: Алтари неизведанного. Стихийное...
Знакомим еще с одним воркшопом фестиваля «Открытый город» – «Алтари неизведанного. Стихийное сакральное» под руководством MARKS GROUP. Основная цель воркшопа – провести самостоятельное исследование и получить практические навыки, которые студенты могли бы применить в дальнейшей работе. Объектом исследования была предложена гора Воттоваара в западной Карелии.
Культурный треугольник
Еще один проект мастерской «Арканика» для Альметьевска – трехэтажная художественная галерея, которая расположится у Каскада прудов в пешей доступности от штаб-квартиры «Татнефти». Главными аттракторами послужат подсвеченные фасады и кровля-амфитеатр, ориентированная на мечеть, а также функциональная программа, продуманная компанией «Новая земля».
Архитектура будущего глазами сегодняшних выпускников
В Паркинг Галерее парка «Зарядье» проходит выставка дипломных работ выпускников художественных вузов ВЫПУСК’24. Специальный раздел выставки посвящен архитектурным проектам, о которых мы расскажем. Среди них досуговый комплекс в Ярославской области, городской рынок в Суздале, университет в Сочи, музей в Калуге, научно-исследовательский кластер в Сколково и целый город Николоград.
Временно белоснежный дракон
В китайском Уси после реконструкции по проекту бюро Wutopia Lab открылся парковый павильон Emerald Screen Pergola: эта белоснежная эфемерная конструкция скоро действительно станет изумрудно-зеленой.
«Открытый город 2024»: Дом Евангелия в Санкт-Петербурге
Цикл публикаций о воркшопах проекта «Открытый город» в этом году начинаем с рассказа о проекте «Дом Евангелия: функционализм vs сакраментализм» в Санкт-Петербурге. Проект реализован под руководством бюро «СИВИЛ» и призван обратить внимание на проблему сохранения исторической архитектуры и включения ее в современный городской контекст. Реконструкция Дома Евангелия – это реальный проект бюро, в ходе которого будут реализованы идеи участников воркшопа.