Некоторые организации возводят жилье целыми кварталами, у них солидные объемы работ. Трудно представить, что они готовы выполнять индивидуальные пожелания отдельных покупателей. С такими пожеланиями лучше обращаться в небольшие фирмы или к профильным специалистам, способным превратить стандартную квартиру от застройщика в действительно индивидуальное жилье.
Что-то подобное наблюдается и в сфере разработки программного обеспечения. Применительно к проектированию это выглядит так. Есть базовые графические платформы. Со временем на их основе появились надстройки (например, nanoCAD Инженерный BIM). Но вот отдельный пользователь, попросивший внести в них изменения под его нужды, может ждать реализации своей просьбы очень и очень долго.
О возможности создания дополнительного функционала на примере трех небольших программ я рассказывал в апреле 2024 года на вебинаре «Нестандартные инструменты и методы работы при проектировании слаботочных систем в nanoCAD BIM ОПС и СКС».
Преобразование таблицы прокладки кабелей
nanoCAD BIM ОПС и nanoCAD BIM СКС формируют таблицу прокладки кабелей в виде, представленном на рис. 1.

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

Как автор этой программы могу утверждать, что минимальный результат достигается нажатием одной кнопки Выполнить (рис. 3).

Каким образом получить этот результат?
После вывода таблицы прокладки кабелей в Excel из nanoCAD BIM ОПС или nanoCAD BIM СКС запускаем программу преобразования. В момент запуска она выбирает все уникальные наименования кабельных конфигураций и выводит их в список – обычное дерево, узлы которого можно перетаскивать, задавая им необходимый порядок следования. В том же порядке будут созданы столбцы для вывода данных.
Если проектировщика устраивают приведенные наименования столбцов, он просто нажимает кнопку Выполнить. Программа создает новый лист, куда копирует в нужной последовательности данные исходного листа. В конце листа приводятся итоговые значения по каждому кабелю: каким способом он проложен и какова длина прокладки этим способом. Также приводятся общие итоги по прокладке всех кабелей различными способами. 1600 строк исходной таблицы преобразуются в 400 строк новой за две-три секунды.
Если наименования конфигураций кабеленесущих систем не очень понятны или представлено множество похожих конфигураций, можно объединить их в группы. Для этого понадобится только установить переключатель в значение Объединить по способам прокладки (рис. 4).

Наименования первого уровня будут наименованиями столбцов (В лотке, В коробе…). Их можно добавлять, используя поле ввода наименований, и удалять лишние.
Наименования второго уровня необходимо распределить по группам путем перетаскивания или последовательных кликов: сначала выделяем для переноса наименование кабеленесущей системы, а затем наименование группы, в которую выполняется перенос. Дерево перестраивается, узел переносится.
Возможный вариант структуры показан на рис. 5.

После нажатия кнопки Выполнить программа добавит очередной лист с преобразованными данными (рис. 6).

Остается добавить, что если проектировщик пользуется одинаковыми наименованиями конфигураций кабеленесущих систем, его работа дополнительно упростится: программа запоминает, какие конфигурации к каким группам были отнесены. При очередном запуске, обнаружив соответствующие конфигурации в новой таблице, она построит ранее примененное дерево.
Преобразование схем шкафов
nanoCAD BIM СКС вычерчивает схему расположения оборудования в шкафу так, как показано на рис. 7.

Очевидно, что ей как минимум не хватает рамки формата с основной надписью. На самом деле можно сделать еще кое-что – например, получить результат, представленный на рис. 8.

Все это достигается одним нажатием кнопки, если использовать разработанную мной программу преобразования. Та самая кнопка – на рис. 9.

Для получения результата вычертите схему телекоммуникационного шкафа в программе nanoCAD BIM CKC или откройте ранее сохраненную схему в nanoCAD любой конфигурации. Нажмите кнопку Все подряд + рамка +…. Программа создаст схему, аналогичную представленной на рис. 8.
Этот процесс разбит на этапы, которые могут быть выполнены последовательно нажатием соответствующих кнопок в окне программы:
· оборудование на схеме выполнено блоками, в которых текстовыми примитивами приведены марки оборудования, использованного в шкафу. На первом шаге программа преобразования выбирает эти марки и заносит в таблицу перечня оборудования;
· следующим шагом программа заполняет таблицу. Для этого в зависимости от положения переключателя она обращается к базе данных производителя или проекта и выбирает из нее недостающие данные по оборудованию;
· третий шаг: программа заменяет текстовые надписи возле оборудования позиционными обозначениями и проставляет их в таблице;
· на четвертом шаге (отдельной кнопки для него нет) программа определяет формат, в который поместится данная схема (А4 или А3), а затем добавляет шаблон форматной рамки и основной надписи.
Шаги 2 и 3 можно менять местами.
Основную надпись можно будет заполнить с применением программы «Реквизитор», которая используется для окончательного оформления тома документации (подробнее я расскажу об этом в следующем материале).
Значения, приведенные в перечнях оборудования на чертежах, могут быть собраны программой в девятиграфную спецификацию с суммированием однотипных элементов или без него. Этот функционал работает с любыми чертежами, даже выполненными в базовой платформе. Заполните таблицы на чертежах; укажите программе, из каких файлов собрать данные, – и она сформирует итоговую спецификацию. А для nanoCAD BIM СКС имеется дополнительная возможность обратиться к базе данных и выбрать из нее сведения по оборудованию, которых нет в таблице (например, информацию о производителе) – (рис. 10).

Программа поиска по базам данных
nanoCAD BIM ОПС использует более шестидесяти баз данных производителей. В ранних версиях поиск по базам отсутствовал как таковой. 24-я версия обеспечила возможность поиска в пределах одной базы, но этот функционал необходимо развивать.
Чтобы упростить новым пользователям nanoCAD BIM ОПС знакомство с программой в части поиска нужного оборудования, а также для проверки технической возможности выполнить поиск по всем базам данных одновременно, была написана программа DataBIM (рис. 11).

Ее особенностью является построение дерева данных одновременно по всем базам производителей, имеющимся в распоряжении проектировщика. Улучшена работа с самим деревом данных – например, есть возможность двойным кликом мыши развернуть или свернуть все дерево. Клик правой кнопкой разворачивает или сворачивает любую ветку – вам не понадобится щелкать по каждому отдельному узлу, чтобы посмотреть, что в нем находится.
Фильтрация данных при наборе символов в поле ввода выполняется автоматически после появления очередного символа, а значит не нужно нажимать дополнительную кнопку Найти. Данные отображаются как таблица в верхней части окна программы, позволяющая выполнять прокрутку колесом мыши, что обеспечивает просмотр нескольких записей в секунду. Для указания поля поиска достаточно установить или снять галочку в поле над соответствующим столбцом (рис. 12).

Для отображения узла дерева, соответствующего выбранной записи, необходимо кликнуть мышью в показанном на рис. 12 поле Тип, марка.
Возможность обеспечить поиск по такому большому массиву информации достигается благодаря формированию выборки из баз данных производителей в промежуточную базу. То есть пользователь сначала добавляет необходимые ему базы в перечень обрабатываемых. А затем программа выбирает из них сведения в объеме, необходимом для заполнения девятиграфной спецификации, и формирует промежуточную базу данных.
Процесс формирования промежуточной базы данных достаточно быстр: в зависимости от производительности компьютера все базы данных производителей обрабатываются за одну-две минуты. В дальнейшем программа просто проверяет в момент запуска, не было ли обновлений какой-либо из баз. Если были, информация в промежуточной базе данных тоже обновляется. Это позволяет проектировщику вносить изменения непосредственно в базы данных производителей – например, уточнять имеющиеся там сведения, создавать или корректировать копии оборудования. А программа DataBIM актуализирует эти сведения и всегда отображает корректные данные.
Важное ограничение: DataBIM никак не влияет на работу nanoCAD BIM ОПС. Выполненный в ней поиск лишь демонстрирует пользователю, в какой из папок какого производителя находится интересующая его позиция.
DataBIM реализована для nanoCAD BIM ОПС, но, в случае заинтересованности пользователей, ее можно настроить на работу с другими программными продуктами nanoCAD Инженерный BIM.
Заключение
В статье кратко представлен функционал трех программ, которые призваны упростить труд проектировщика, использующего в работе nanoCAD BIM ОПС и/или nanoCAD BIM СКС.
По тем или иным причинам данный функционал отсутствует в обоих продуктах. Своими программами я продемонстрировал техническую возможность реализовать эти функции – и буду рад, если разработчики добавят аналогичные решения.
В действительности задач, подобных тем, о которых говорилось в статье, гораздо больше. Мы хотим, чтобы выполнялось еще и это, и это, и это – набор пожеланий у каждого свой.
Николай Король,
BIM-менеджер
ООО «Нормасофт»