- •«Санкт-петербургский государственный университет аэрокосмического приборостроения»
- •Оглавление
- •1. Постановка задачи
- •2. Общая структура файла dxf
- •3. Коды группы
- •4. Раздел заголовок
- •5. Раздел таблицы
- •6. Раздел блоки
- •7. Раздел примитивы
- •8. Определения признаков примитивов
- •Признаки типа блока
- •9. Написание интерфейсных программ dxf
- •12. Аппаратные и программные требования.
- •Требования к программному обеспечению
- •15. Литература
4. Раздел заголовок
Раздел ЗАГОЛОВОК (HEADER) файла DXF содержит установочные значения для переменных, которые непосредственно связаны с чертежем. Эти переменные устанавливаются с помощью различных команд и относятся к такому виду информации, который отображается на дисплее с помощью команды STATUS. Каждая переменная указывается в разделе заголовка с помощью группы 9, задающей ее имя, после чего следуют группы, определяющие ее значение. Переменные заголовка, последующие группы и их значения приведены в данной таблице.
$ACADVER |
1 (номер версии системы AutoCAD) |
$ANGBASE |
50 (угол направления ноль) |
$ANGDIR |
70 (1=углы по часовой, 0=против часовой) |
$ATTMODE |
70 (видимость атрибута: 0=нет; 1=нормальная; 2=все) |
$AUNITS |
70 (формат UNITS для углов) |
$AUPREC |
70 (точность UNITS для углов) |
$AXISMODE |
70 (если значение не равно нулю, то оси включены) |
$AXISUNIT |
10 и 20 (разметка осей Х и Y) |
$BLIPMODE |
70 (если значение не равно нулю, то "включение" режима отметки на экране) |
$CECOLOR |
62 (номер цвета примитива; 0=BYBLOCK, 256=BYLAYER) |
$CELTYPE |
6 (имя типа линии примитива, или BYBLOCK или BYLAYER) |
$CHAMFERA |
40 (первый параметр фаски) |
$CHAMFERB |
40 (второй параметр фаски) |
$CLAYER |
8 (имя текущего слоя) |
$COORDS |
70 (0=статическое отображение координат, 1=непрерывное обновление, 2="d<a" формат) |
$DIMALT |
70 (если не ноль, размерность в альтернативных единицах) |
$DIMALTD |
70 (число десятичных знаков для альтернативных единиц) |
$DIMALTF |
40 (масштабный коэффициент альтернативных единиц) |
$DIMASZ |
40 (величина размерной стрелки) |
$DIMBLK |
2 (имя блока стрелки) |
$DIMCEN |
40 (размер центровых меток/линий) |
$DIMDLE |
40 (продолжение линии размерности) |
$DIMDLI |
40 (увеличение размерной выносной линии) |
$DIMEXE |
40 (продолжение выносной линии) |
$DIMEXO |
40 (смещение выносной линии) |
$DIMLFAC |
40 (масштабный коэффициент линейных размеров) |
$DIMLIM |
70 (если не равно нулю, то вырабатываются пределы размеров) |
$DIMRND |
40 (значение округления для расстояний размера) |
$DIMSCALE |
70 (масштабный коэффициент габаритных размеров) |
$DIMSE1 |
70 (если не равно нулю, то первая выносная линия подавляется) |
$DIMSE2 |
70 (если не равно нулю, то вторая выносная линия подавляется) |
$DIMTAD |
70 (если не равно нулю, то текст располагается над размерной линией) |
$DIMTIH |
70 (если не равно нулю, то текст располагается под горизонталью) |
$DIMTM |
40 (отрицательный допуск) |
$DIMTOH |
70 (если не равно нулю, то текст располагается над горизонталью) |
$DIMTOL |
70 (если не равно нулю, то вырабатываются допуски размеров) |
$DIMTP |
40 (положительный допуск) |
$DIMTSZ |
40 (задание размеров штриховой разметки: 0=разметки нет) |
$DIMTXT |
40 (задание высоты размерностей текста) |
$DIMZIN |
70 (если не нуль, включать нулевые дюймы в текст) |
$DRAGMODE |
70 (0=выключено, 1=включено, 2=автоматическое) |
$DRAGP1 |
70 (скорость съема ввода для трансформации с регенерацией) |
$DRAGP2 |
70 (скорость съема ввода для быстрой трансформации) |
$ELEVATION |
40 (установка текущего подъема с помощью команды ELEV) |
$EXTMAX |
10 и 20 (правый верхний угол пределов чертежа) |
$EXTMIN |
10 и 20 (левый нижний угол пределов чертежа) |
$FASTZOOM |
70 (0=выключено, 1=включено) |
$FILLETRAD |
40 (радиус сопряжения) |
$FILLMODE |
70 (если не равно нулю, то "включение" режима FILL) |
$GRIDMODE |
70 (если не равно нулю, то "включение" режима GRID) |
$GRIDUNIT |
10 и 20 (размещение координатной сетки по осям Х и Y) |
$HIGHLIGHT |
70 (1=подсвечивать выбранные объекты, 2=не подсвечивать) |
$INSBASE |
10 и 20 (установка базы вставки с помощью команды BASE) |
$LIMCHECK |
70 (не равно нулю, если "включена" проверка пределов) |
$LIMMAX |
10 и 20 (правый верхний угол границ чертежа) |
$LIMMIN |
10 и 20(левый нижний угол границ чертежа) |
$LTSCALE |
40 (глобальный масштаб типа линии) |
$LUNITS |
70 (формат команды UNITS для координат и расстояний) |
$LUPREC |
70 (точность команды UNITS для координат и расстояний) |
$MENU |
1 (имя файла меню) |
$MIRRTEXT |
70 (если не нуль, текст MIRROR) |
$ORTHOMODE |
70 (если не равно нулю, то "включение" режима ORTHO) |
$OSMODE |
70 (действующий режим привязки объекта) |
$PDMODE |
70 (режим отображения точек) |
$PDSIZE |
40 (размер отображения точек) |
$PLINEWID |
40 (ширина ломаной по умолчанию) |
$QTEXTMODE |
70 (если не равно нулю, то "включение" режима "быстрого текста") |
$REGENMODE |
70 (если не равно нулю, то "включение" режима REGENAUTO) |
$SKETCHINC |
40 (инкремент эскизной записи) |
$SKPOLY |
70 (0=эскиз линиями, 1=эскиз ломаными) |
$SNAPANG |
50 (угол вращения сетки привязки) |
$SNAPBASE |
10 и 20 (начало отсчета сетки привязки) |
$SNAPISOPAIR |
70 (изометрическая плоскость: 0= слева, 1= сверху, 2=справа) |
$SNAPMODE |
70 (если не равно нулю, то "включение" режима привязки) |
$SNAPSTYLE |
70 (тип привязки:0=стандартный, 1=изометрический) |
$SNAPUNIT |
10 и 20 (размеры сетки по Х и Y) |
$TDCREATE |
40 (дата/время создания чертежа) |
$TDINDWG |
40 (накопленное время редактирования для данного чертежа) |
$TDUPDATE |
40 (дата/время последнего обновления чертежа) |
$TDUSRTIMER |
40 (таймер прошедшего времени пользователя) |
$TEXTSIZE |
40 (высота текста по умолчанию) |
$TEXTSTYLE |
7 (имя текущего типа шрифта) |
$THICKNESS |
40 (установка текущей толщины с помощью команды ELEV) |
$TRACEWID |
40 (ширина трассы по умолчанию) |
$VIEWCTR |
10 и 20 (центр текущего вида на экране) |
$VIEWDIR |
10, 20 и 30 (установка текущей точки вида с помощью команды VPOINT) |
$VIEWSIZE |
40 (высота текущего вида на экране) |
ЗАМЕЧАНИЕ: Хотя выше приведенный список переменных заголовка DXF очень близок к списку системных переменных в приложении А, эти два списка не идентичны. Будьте внимательны, ссылаясь к правильному списку.
Переменные даты и времени ($TDCREATE и $TDUPDATE) имеют вывод, как действительные числа в формате:
<Julian date>.<Fraction>
(<юлианская дата>.<Остаток>)
Переменные истекшего времени ($TDINDWG и $TDUSRTIMER) имеют подобный формат:
<Number of days>.<Fraction>
(<Число дней>.<Остаток>)
