В следующем файле шаблона перечислено 15 возможных полей. N означает числовой тип, C символьный тип, www общая длина поля в виде трехзначного числа, ddd число выводимых знаков после десятичной точки в виде трехзначного числа.
BL:NAMECwww000 (Имя блока)
BL:LEVELNwww000 (Уровень вложенности блока1)
BL:X Nwwwddd(Координата X точки вставки)
BL:Y Nwwwddd(Координата Y)
BL:Z Nwwwddd(Координата Z)
BL:NUMBERNwww000 (Счетчик блоков; один и тот же для блоков, вставленных по МВСТАВИТЬ)
BL:HANDLECwww000 (Метка блоков; одна и та же для блоков, вставленных по МВСТАВИТЬ)
BL:LAYERCwww000 (Имя слоя вставки блока)
BL:ORIENT Nwwwddd(Угол поворота блока)
BL:XSCALE Nwwwddd(Масштаб по X)
BL:YSCALE Nwwwddd(Масштаб по Y)
BL:ZSCALE Nwwwddd(Масштаб по Z)
BL:XEXTRUDE Nwwwddd(Составляющая X вектора выдавливания)
BL:YEXTRUDE Nwwwddd(Составляющая Y вектора выдавливания)
BL:ZEXTRUDE Nwwwddd(Составляющая Z вектора выдавливания)
numericNwwwddd (Числовой атрибут)
characterCwww000 (Символьный атрибут)
Шаблон может включать в себя все или некоторые из полей типа BL:xxxxxxx, перечисленных выше. Включенные в шаблон имена атрибутов задают, данные каких атрибутов (и, следовательно, каких блоков) включаются в файл вывода. Значения заданных в шаблоне, но не содержащихся в блоке атрибутов, заменяются пробелами (для символьных) или нулями (для числовых).
Пояснения о назначении стандартных полей приведены здесь исключительно в качестве комментария; включаться в шаблон они не должны.
В шаблоне вывода атрибутов задаются сведения об атрибутах; например, о наименовании детали, номере модели, стоимости и поставщике, как показано на чертеже блока с атрибутами и в таблице.
Поле Символьные (C) или числовые(N) данные Максимальная длина поля Число десятичных знаков Тип C 040 000 Изготовитель C 006 000 Модель C 015 000 Цена N 006 002
Число создаваемых файлов шаблонов не ограничивается. Каждая запись в файле шаблона описывает одно поле, сохраняемое в файле вывода атрибутов.
При создании файла шаблона вывода атрибутов рекомендуется придерживаться следующих правил:
■ Между именем атрибута и описанием формата выводимого значения должен стоять символ пробела. Для ввода пробела следует использовать не символ табуляции, а планку пробела.
■ Каждую строку файла, включая последнюю, необходимо заканчивать нажатием ENTER.
■ Файл шаблона должен содержать хотя бы одно поле с именем атрибута, и каждое из полей может упоминаться в шаблоне не более одного раза.
Ниже приведен пример простого файла шаблона для извлечения информации из атрибутов.
BL:NAME C008000 (Имя блока, 8 символов)
BL:X N007001 (Координата X, в формате nnnnnn.d)
BL:Y N007001 (Координата Y, в формате nnnnnn.d)
SUPPLIER C016000 (Фирма-изготовитель, 16 символов)
MODEL C009000 (Номер модели, 9 символов)
PRICE N009002 (Стоимость единицы, в формате nnnnnnnn.dd)
ПРИМЕЧАНИЕ. В общую длину числового поля входит и десятичная точка. Например, для вывода числа 249.95 требуется хотя бы 6 позиций; формат записи может выглядеть как N006002. Для описания символьных полей не нужно указывать три последние цифры, как для числовых полей.
Создание файла вывода атрибутовПосле создания файла шаблона пользователь может извлечь данные из атрибутов, сохранив их в файле вывода в одном из форматов:
■ Формат файла с разделителями-запятыми (CDF)
■ Формат файла с разделителями-пробелами (SDF)
■ Формат файла обмена графическими данными (DXF)
Файл формата CDF содержит по одной записи для каждого вхождения блока в чертеж. Поля записи разделяются запятыми, а символьные поля заключаются в апострофы. Некоторые системы управления базами данных могут непосредственно воспринимать данный формат.
Файл формата SDF также содержит по одной записи для каждого вхождения блока в чертеж. Поля каждой записи имеют фиксированную длину и не требуют ни разделителей, ни ограничителей символьных полей. Операция dBASE III Copy… SDF также формирует файлы в формате SDI. Операция The Append From… SDF позволяет читать файлы в формате dBASE IV, которые легко обрабатываются пользовательскими программами, написанными на языке FORTRAN.
При выводе в формате DXF образуется подмножество файла обмена чертежами, содержащее только вхождения блоков, атрибуты и символы конца последовательности. В данном случае файл шаблона вывода атрибутов не требуется. Выходные файлы отличаются от стандартных DXF-файлов своим расширением (.dxx).
Использование файла вывода атрибутовФайл вывода атрибутов содержит список значений и других сведений всех атрибутов, вывод которых описан в шаблоне.
Если при выводе с помощью шаблона применяется формат CDF, то файл вывода может иметь следующий вид:
'DESK', 120.0, 49.5, 'ACME INDUST.', '51-793W', 379.95
'CHAIR', 122.0, 47.0, 'ACME INDUST.', '34-902A', 199.95
'DESK', -77.2, 40.0, 'TOP DRAWER INC.', 'X-52-44',249.95
По умолчанию, символьные поля заключаются в апострофы. Разделителем по умолчанию является запятая. Для переопределения этих настроек можно использовать две следующие записи в шаблоне:
C:QUOTE c(Ограничитель символьной строки)
C:DELIM c(Разделитель полей)
Символ, следующий сразу (без пробела) за именем поля C:QUOTE или C:DELIM определяет соответственно ограничитель символьных строк или разделитель полей. Например, для того чтобы символьные строки заключались в кавычки, необходимо вписать в шаблон следующую строку:
C:QUOTE "
Ограничителем символьных строк не может быть символ, встречающийся в символьных значениях полей. Аналогично, разделителем полей не может быть символ, встречающийся в числовых значениях полей.
Если при выводе с помощью шаблона применяется формат SDF, то файл вывода может иметь следующий вид:
(NAME) (X) (Y) (SUPPLIER) (МОДЕЛЬ) (PRICE) DESK 120.0 49.5 ACME INDUST. 51-793W 379.95 CHAIR 122.0 47.0 ACME INDUST. 34-902A 199.95 DESK -77.2 40.0 TOP DRAWER INC. X-52-44 249.95Порядок вывода полей соответствует порядку описания полей в файле шаблона. Файлы, полученные после вывода атрибутов, могут использоваться в других приложениях, включая электронные таблицы. Данные из этих файлов могут в дальнейшем сортироваться и обрабатываться. О порядке работы с данными других приложений см. документацию по используемому приложению обработки электронных таблиц. Если полученный файл открыть в Блокноте или каком-либо другом текстовом редакторе Windows, то данные из файла можно вставить в чертеж в виде текста с помощью буфера обмена.
Вложенные блокиСтрока BL:LEVEL шаблона определяет уровень вложенности блока. Блок, вставленный в чертеж, имеет уровень вложенности 1. Вхождение блока, являющегося частью первого блока, имеет уровень вложенности 2 и т.д.
Во вложенном вхождении блока координаты, масштабные коэффициенты, вектор выдавливания и угол поворота отражают реальные значения вложенного блока в Мировой системе координат.
В некоторых случаях, вложенные вхождения блоков невозможно корректно представить, оперируя только двумя масштабными коэффициентами и углом поворота. К таким случаям можно отнести вхождение блока, повернутое в трехмерном пространстве. В этой ситуации, масштабные коэффициенты и угол поворота в записях файла вывода отображаются значением 0.
Обработка ошибокЕсли заданная длина поля недостаточна для представления значения атрибута, то конец значения отсекается, затем появляется следующее сообщение:
** Переполнение в поле записи <номер_записи>
Подобная ошибка может произойти, например, если в шаблоне для поля BL:NAME указана длина поля 8, а в чертеже содержится имя длиной 10 символов.
Для создания файла шаблона вывода атрибутов
1. Открыть программу "Блокнот".
Можно также воспользоваться любым другим текстовым редактором, работающим с текстами в формате ASCII.
2. Ввести данные шаблона. Подробнее о формате шаблона см. в разделе Извлечение данных из атрибутов (метод низкого уровня).