Работа с блоками


В данном разделе меню находятся модули для различных манипуляций с блоками.

Экспорт блоков в CSV
Импорт блоков из CSV
---
Поворот блоков по полилинии
Поворот блоков по полилиниям
Проставить блоки по полилинии
Случайное заполнение полилинии блоком
---
Прибавить к атрибуту блока текст
Прибавить к атрибуту блока число
Прибавить к атрибуту блока случайное число
---
Переименовать определение блока
Видимость скрытых атрибутов
Скрыть задний фон атрибутов штриховкой
Повернуть атрибуты в соответствии с правилами чтения чертежа
Преобразовать 'поле' в текст в атрибутах блоков
---
Сбросить свойства динамических блоков
Замена блоков с наследованием атрибутов
Замена точек на блок
---
Подпримитивы блока: Задать слой
Подпримитивы блока: Задать ширину линии
Подпримитивы блока: Задать вес линии

Экспорт блоков в CSV

Данный модуль экспортирует в CSV файл следующие данные блоков: координаты точки вставки, слой (если задан параметр "обработать все слои"), угол поворота блока и значения атрибутов, если таковые присутствуют. При запуске модуль просит указать на экране блок. В обработку попадут все блоки с таким именем. Если параметр "обработать все слои" не задан, в обработку попадут только блоки, лежащие на том же слое, что и указанный образец. Первой строкой в CSV файле идет "шапка таблицы", где указаны значения столбцов. В нижеприведенном примере последние три столбца – имена и значения атрибутов.
Окно ZWCAD с отображением свойств блока:

CSV файл, результат работы модуля:


Импорт блоков из CSV

Данный модуль позволяет построить блоки по данным из CSV файла. Необходимый минимум параметров: два столбца, X и Y координаты.

При запуске модуль просит указать блок-образец с экрана, т.е. импортируемый блок должен присутствовать в чертеже. После появляется окно, в котором пользователь должен указать соответствия столбцов CSV файла параметрам блока:

Для каждого параметра блока выбирается значения из выпадающего меню, представляющего собой 1-ю строку CSV файла с номером столбца в скобках. Так же задаются соответствия значений атрибутов импортируемых блоков столбцам CSV файла:

Если в столбцах CSV файла, указанных как XYZ координаты, встречается не число, то вся строка игнорируется, замена запятой на точку в столбцах с координатами происходит автоматически.

Количество точек после запятой для координат XYZ задается в настройках Программы.

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

Пример. В чертеже присутствует несколько сотен отметок высот (блок с атрибутом, в котором хранится значение отметки высоты), к которым необходимо прибавить какое-либо значение, например, 0.27. Экспортируем блоки в CSV файл и открываем его в Excel. Добавляем новый столбец, в который вносим формулу:

Результат:

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

Внимание! Следует обратить внимание на то, что в Excel по умолчанию разделителем целой и дробной части является запятая, а в AutoCAD (ZWCAD) – точка. Следует или поменять в настройках Excel разделитель целой и дробной части на точку, или в настройках Программы установить параметр "заменять точку на запятую при экспорте в csv", или функцией Excel "заменить" произвести замену точки на запятую в необходимых столбцах (выбрать предварительно). В случае если в Excel разделителем является запятая, а в CSV файле будет точка, то Excel с такими данными будет работать как с текстом, а не как с числом и выполнение арифметических операций в формулах окажется невозможным.


Поворот блоков по полилинии

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

После обработки:

Черная полилиния - та, по которой выравнивались блоки. Пунктирной линией (показана для наглядности) показан допуск, в примере равный 100. В качестве начала полилинии была указана точка рядом с левым концом полилинии.


Поворот блоков по полилиниям

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


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


Проставить блоки по полилинии

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

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

При параметре "начальное смещение", равном нулю, первый блок будет вставлен на начальную вершину полилинии, при отличном от нуля значении первый блок будет вставлен с указанным смещением.
Пример:

При необходимости проставленные блоки можно повернуть по полилинии.


Случайное заполнение полилинии блоком

Позволяет заполнить контур(полилинию) указанным блоком(выбор по маске тип-слой) в случайном порядке. Пример:

Пояснение к примеру. Блок, изображенный в верхнем правом углу был выбран в качестве блока-образца. Модуль расчитывает разброс координат от сетки с указанном шагом (в данном примере 5) с учетом фактора случайности(в примере он равен 0.5). При указании фактора случайности 0 блоки встанут на шаг сетки:

При факторе случайности, равном 1, диапазон случайного разброса будет равен указанному шагу.


Прибавить к атрибуту блока текст

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

Пример:


Прибавить к атрибуту блока число

Позволяет прибавить (или отнять) к значению выбранного атрибута блоков, выбранных по маске тип-слой, какое либо значение. Нечисловое содержимое игнорируется.

Пример:


Прибавить к атрибуту блока случайное число

Позволяет прибавить (или отнять) к значению выбранного атрибута блоков, выбранных по маске тип-слой, случайное число:

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


Переименовать определение блока

Позволяет переименовать определение блока. Выбор определения блока осуществляется путем указания блока-образца с экрана.


Видимость скрытых атрибутов

Управляет видимостью скрытых атрибутов блоков:


Скрыть задний фон атрибутов штриховкой

Скрывает задний фон атрибутов блоков, выбранных по маске тип-слой, с помощью заштрихованного прямоугольника белого (RGB 255,255,255) цвета.

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


Повернуть атрибуты в соответствии с правилами чтения чертежа

Модуль поворачивает атрибуты блоков в соответствии с правилами чтения чертежа, а именно: если угол атрибута находится в диапазоне от 90 до 270 градусов, то он поворачивается на 180 градусов:



Примечание. Угол атрибута расчитывается от оси X против часовой стрелки в мировой системе координат.


Преобразовать 'поле' в текст в атрибутах блоков

Модуль позволяет массово преобразовать объект 'поле' в текст в атрибутах указанных блоков, избежав долгого ручного редактирования, как на примере ниже:



Сбросить свойства динамических блоков

Модуль сбрасывает динамические свойства выбранных блоков в значения поумолчанию:



Модуль может быть полезен в тех случаях когда часть блоков повернута стандартными средствами, а часть - посредством динамического свойства 'поворот', и необходимо привести чертеж к единому оформлению.

Примечание. Модуль работает только в AutoCAD и ZWCAD версий 2018 и 2019.


Замена блоков с наследованием атрибутов

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




Замена точек на блок

Позволяет заменить точки, выбранные по образцу, на указанный блок.


Подпримитивы блока: Задать слой

Позволяет задать слой у всех подпримитивов описания блока. Выбор блоков возможен 3-мя вариантами: из списка имен, все именованные и все, включая безымянные(которые вставлялись из буфера обмена командой 'вставить как блок'). Модуль будет полезен для случаев, когда нельзя удалить слои, на которых нет примитивов, но которые используются.


Подпримитивы блока: Задать ширину линии

Задает параметр 'глобальная ширина линии' у подпримитивов блока, которые имеют такое свойство(полилинии). Выбор блоков возможен 3-мя вариантами: из списка имен, все именованные и все, включая безымянные.


Подпримитивы блока: Задать вес линии

Задает параметр 'вес линии' у подпримитивов блока. Выбор блоков возможен 3-мя вариантами: из списка имен, все именованные и все, включая безымянные.