Предисловие

При работе с библиотеками ROBUR основное внимание обычно уделяется самим элементам: их названиям, геометрии, характеристикам и оформлению. Теги параметров при этом часто остаются где-то на втором плане. Они уже есть в библиотеке, программа с ними работает - и кажется, что разбираться в их устройстве необязательно.

Для большинства задач действительно достаточно обычного тега. Мы создаём параметр, указываем ему имя и назначаем какое-нибудь понятное обозначение:


Tag1

Такой тег работает как идентификатор. Благодаря ему ROBUR понимает, какой параметр находится перед ними. Но на этом возможности тегов не заканчиваются.

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


То есть тег способен не только обозначить параметр, но и подсказать ROBUR, как именно с ним работать:

  • показать обычное текстовое поле;
  • принимать числовое значение;
  • добавить единицу измерения;
  • показать выпадающий список;
  • разрешить или запретить изменение в свойствах.

Сначала такая запись может выглядеть сложно:

Tag1 combo "Нет|No|Да|Yes" "Нет" false

Однако внутри неё нет ничего страшного. Она состоит из нескольких последовательных частей, каждая из которых отвечает только за одну настройку.

В этой статье разберём основные виды таких тегов, посмотрим, как они выглядят, и попробуем создать собственные параметры с нужным поведением.

Выпадающий список

Тип Combo создаёт параметр с готовым списком значений.

Пример:

Tag1 combo "Нет|No|Да|Yes" "Нет" false

Варианты записываются парами:

Название для пользователя | Служебное название

В этом примере пользователь увидит два варианта:

  • Нет;
  • Да.

Можно создать более подробный список:

Tag2 combo "По умолчанию|Default|Прямолинейный|StraightLine|Шарнирный|Joint" "По умолчанию" false

Значение после списка определяет вариант по умолчанию:

"По умолчанию"

Если в названиях нет пробелов, допускается короткая запись:

Tag1 combo Нет|No|Да|Yes Нет

Однако вариант с кавычками универсальнее и понятнее.

Текстовый параметр

Для текстового значения используется тип string:

Tag3 info string||false

Он подходит для:

  • названий;
  • описаний;
  • примечаний;
  • марок;
  • обозначений.

Две вертикальные черты означают, что единица измерения не указана.

Числовой параметр

Для обычных чисел используется тип float:

Tag4 info float

Можно дополнительно указать единицу измерения:

Tag4 info float|mm|false

В данном случае параметр содержит число в миллиметрах.

Другой пример:

Tag5 info float|m|false

Такой параметр содержит значение в метрах.

Целое число

Если параметр должен содержать только целое число, используется тип int:

Tag6 info int||false

Он подходит, например, для количества элементов, деталей или повторений.


Что означают состояния True и False

Последняя часть тега определяет, можно ли изменять параметр в свойствах ROBUR.

Tag3 info string||false
Tag3 info string||true

Значения означают:

  • false - параметр разблокирован;
  • true - параметр заблокирован.

Для выпадающих списков действует такое же правило:

Tag1 combo "Нет|No|Да|Yes" "Нет" false

Если true или false не указано, параметр обычно считается заблокированным по умолчанию.


Было
Стало

Из каких частей состоит расширенный тег

Рассмотрим пример

Tag4 info float|mm|false

Здесь:


Tag4 - имя тега;


info - указание на специальный тип параметра;


float - числовое значение;


mm - миллиметры;


false - параметр разблокирован.


Для списка структура выглядит иначе:

Tag1 combo "Обычный|Normal|Усиленный|Reinforced" "Обычный" false

Здесь:


Tag1 - имя тега;


combo - выпадающий список;


далее перечислены варианты;


Обычный - значение по умолчанию;


false - параметр доступен для редактирования.


Как создать собственный расширенный тег


Сначала придумайте уникальное имя:

Tag1

После этого выберите необходимый тип.

Редактируемый текст

Tag1 info string||false

Заблокированный текст

Tag1 info string||true

Число в миллиметрах

Tag2 info float|mm|false

Целое число

Tag3 info int||false

Собственный выпадающий список

Tag5 combo "Обычный|Normal|Усиленный|Reinforced" "Обычный" false

Главное правило для списка — записывать варианты парами:

Отображаемое название | Служебное название

Если необходимо добавить ещё один вариант, он просто дописывается в эту последовательность:

Tag5 combo "Обычный|Normal|Усиленный|Reinforced|Специальный|Special" "Обычный" false

Таким способом можно создавать собственные списки категорий, состояний, способов отображения, типов конструкций и других заранее определённых вариантов.

Создание тегов в редакторе библиотек

Вручную составлять такие теги полезно хотя бы для понимания принципа их работы. Но постоянно следить за кавычками, вертикальными разделителями и правильным порядком частей не всегда удобно. Особенно если выпадающий список содержит много вариантов.

Поэтому работа с такими тегами уже автоматизирована в Редакторе библиотек ROBUR, который представлен на сайте.

При создании или изменении параметра в программе можно выбрать:

  • обычный текст;
  • число;
  • целое число;
  • переключатель;
  • выпадающий список;
  • единицу измерения;
  • состояние блокировки.

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

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

Готовые параметры также распознаются автоматически. Программа покажет подходящее поле, выпадающий список и состояние блокировки. В дальнейшем такие параметры можно использовать при массовом редактировании и создании вычисляемых параметров.