KiCad/Формат файлов
- Программы комплекса
- kicad: менеджер проектов
- eeschema: редактор схем
- pcbnew: редактор плат
- cvpcb: сопоставление отпечатков компонентам
- gerbview: просмотрщик файлов Gerber
- Справка
KiCAD использует в своей работе три типа файлов: - файлы схем *.sch (EEschema) - файлы библиотек *.lib (EEschema) - файлы печатных плат *.brd (PCBnew)
Все эти файлы являются простыми текстовыми файлами ASCII.
Файл описания схемы (*.sch)
[править]Единицы измерения
[править]Внутреннее представление всех размеров и координат в файлах схем KiCAD сделано в тысячных долях дюйма (mils).
Заголовок файла
[править]Формат заголовка:
EEschema Schematic File Version 1 LIBS: список библиотек (приведён лишь в информативных целях и не используется программой) EELAYER nn mm (параметры nn и mm зарезервированы для будущих применений
и сейчас не используются) EELAYER END $Descr Sheet_size dimx dimy (Sheet_size=A4...A0 или A_E) Title block description (Текст, располагаемый в штампе схемы) $EndDescr
Пример заголовка:
EEschema Schematic Spins Version 1
LIBS: brooktre, cypress, ttl, power, linear, memory, xilinx, idiot, aaci, INTEL, special, device, dsp
EELAYER 20 0
EELAYER END
$Descr A3 16535 11700
Sheet 1 4
""
Date "28 DEC 1996"
Rev ""
Comp ""
Comment1 ""
Comment1 ""
Comment3 ""
Comment4 ""
$EndDescr
Описание компонента
[править]L name reference - название компонента и ссылочное название на схеме U N mm time_stamp - N-номер символа в компоненте, состоящем из нескольких символов,
mm-номер представления элемента (если есть несколько различных представлений),
time_stamp - временная метка. P posx posy - положение элемента (можно непосредственно по этому полю найти
элемент на схеме с использованием статусной строки, если переключить сетку в дюймовую) Далее следует список полей 1 posx posy - избыточная не используемая строка. На самом деле первый элемент -
не 1, как указано в оригинальной документации, а номер символа в компоненте
из нескольких символов. A B C D - матрица поворотов/зеркальных отражений, элементы которой принимают
значения -1, 0, 1. $EndComp
Описания полей:
F n „text“ orientation posx poxy dimension flags hjust vjust n - номер поля (ссылочное название - 0, значение - 1); orientation - ориентация на схеме (H-горизонтальная, V-вертикальная); posx posy - координаты; dimension - продольный размер (вдоль текста); flags - атрибуты, определяющие видимость надписи на схеме; hjust - горизонтальное выравнивание (LCR - левое, по центру, правое); vjust - вертикальное выравнивание (BTC - bottom top center - нижнее, верхнее, по центру).
В качестве примера ниже приведено описание перемычки (джампера):
$Comp
Вот результат:
L CONN_3 JP3
U 1 1 329879E1
P 1200 2000
F 0 „JP3“ H 1250 2200 60 0000
F 1 „CONN_3“ V 1350 2000 50 0000
1 1200 2000
-1 0 0 1
$EndComp
В нижней части окна видны координаты в дюймах, соответствующие положению курсора. Их несложно сопоставить с параметрами, указанными в примере.
Описание символа «Не подсоединённый контакт»
[править]Формат:
NoConn ~ posx poxy - координаты символа
Пример:
NoConn ~ 13400 5500
Описание символа листа в иерархической схеме
[править]Формат:
$Sheet S posx posy dimx dimy - положение и размеры символа Список меток листа $EndSheet
Формат меток листа:
Fn text form side posx poxy dimension n=0 - название файла схемы, соответствующего символу; n=1 - название листа в иерархии;
при n=0,1 остальные поля отсутствуют; n - номер вывода (больше 1); form - форма вывода I - вход, O - выход side - сторона расположения вывода RL - правая и левая
Пример:
$Sheet
S 1800 1600 1500 1500
F0 „PROGALIM.SCH“ 60
F1 „PROGALIM.SCH“ 60
F2 „CLK“ O R 3300 1800 60
F3 „/RESET“ O R 3300 2000 60
F4 „VPWR“ O R 3300 2700 60
F5 „/HALT“ O R 3300 2100 60
F6 „TRANSF1“ I L 1800 1900 60
F7 „TRANSF2“ I L 1800 2000 60
F8 „3.84MH“ O R 3300 2200 60
$EndSheet
Описание текстовой заметки
[править]Формат:
Text Notes posx posy orientation dimension ~ Текст заметки
posx posy - координаты orientation - ориентация в 0.1 долях градуса dimension - продольный размер текста
Пример:
Text Notes 2100 3250
TOTO
Описание глобальной метки
[править]Формат:
Text Glabel posx posy orientation dimension shape Текст метки
shape - форма, из списка: * „Input“ * „Output“ * „BiDi“ * „3State“ * „UnSpc“ * „?????“
Пример:
Text GLabel 3100 2500 2 60 UnSpc
TITI
Text GLabel 3150 2700 1 60 3State
3STATES
Text GLabel 2750 2800 0 60 UnSpc
BIDI
Text GLabel 2750 2650 0 60 Output
GLOBALOUT
Text GLabel 2750 2400 0 60 Input
RESET
Описание метки
[править]Формат:
Text Label posx posy orientation dimension ~ Текст метки
Пример:
Text Label 3400 2000 0 60 ~
/RESET
Описание точки соединения проводников
[править]Формат:
Connection ~ posx posy
Пример:
Connection ~ 13300 6500
Описание сегмента проводника
[править]Формат:
Wire Wire Line startx starty endx endy
startx starty - координаты начала сегмента endx endy - координаты конца сегмента
Пример:
Wire Wire Line
3300 1800 3900 1800
Описание сегмента шины
[править]Формат:
Wire Bus Line startx starty endx endy
Пример:
Wire Bus Line
3900 5300 4500 5300
Описание сегмента пунктирной линии
[править]Формат:
Wire Notes Line startx starty endx endy
Пример:
Wire Notes Line
2850 3350 2850 3050
Описание элемента шины
[править]- Формат элемента шины - проводника:
Entry Wire Bus startx starty endx endy
- Формат элемента шины - шины
Entry Bus Bus startx starty endx endy
Пример:
Entry Wire Bus
4100 2300 4200 2400
Entry Bus Bus
4400 2600 4500 2700
Формат файлов библиотек EEShema
[править]ЕЕShema хранит библиотеки в текстовых файлах ASCII.
Единицы измерения
[править]Все размеры хранятся в 1/1000 дюйма (mils).
Заголовок
[править]Формат:
EEShema-LIBRARY Version 2.0 24/1/1997-18:9:6 Далее следует описание компонентов #EndLibrary
Описание компонента
[править]Формат:
DEF name reference unused text_offset draw_pinnumber draw_pinname unit_counts unit_locked option_flag ALIAS name1 name2 ... Список полей DRAW Список графических элементов и выводов ENDDRAW ENDDEF
Параметры команды DEF:
name - название компонента в библиотеке (74LS02 ...); reference - ссылочное название (U, R, L, на схеме становятся U1, R3, L8); unused=0 (зарезервировано для будущего использования); text_offset - сдвиг положения названия вывода; draw_pinnumber - Y или N (отображать или не отображать номер вывода); draw_pinname - Y или N (отображать или не отображать название вывода); unit_count - количество символов в компоненте (для компонентов из нескольких частей); units_locked - L или F - элементы можно/нельзя менять (если они неидентичны,
используется, если unit_count>1); option_flag - N или P - нормальный компонент, или компонент питания (power).
Пример:
DEF BNC P 0 40 Y NR 1 L NR
F0 „P“ 10.120 60 H V L C
F1 „BNC“ 110 -60 40 V V L C
DRAW
C 0 0 70 0 1 0
C 0 0 20 0 1 0
X Ext 2 0 -200 130 U 40 40 1 1 P
X In 1 -150 0.130 R 40 40 1 1 P
ENDDRAW
ENDDEF
Описание псевдонима (Alias)
[править]Данная строка присутствует только в компонентах, имеющих псевдоним. Формат:
ALIAS name1 name2 ...
Описание полей
[править]Формат:
F n „text“ posx posy dimension orientation visibility hjust vjust
Парамеры команды имеют следующие значения:
n - номер поля. Принимает значения: * 0 - ссылочное название (reference); * 1 - значение (value); * 2 - название соответствующего корпуса (PCB footprint); * 3 - в настоящее время не используется; * 4...11 - остальные поля. posx posy - координаты orientation - Н или V - горизонтальная или вертикальная ориентация; visibility - V или I - видимое или невидимое поле; hjust - LCR - выравнивание по горизонтали (левое, по центру, правое); vjust - BCT - bottom, center, top - вертикальное выравнивание (снизу, по центру, сверху).
Пример:
DEF DIODE D 0 40 Y NR 1 0 NR
F0 „D“ 0.100 50 H V L C
F1 „DIODE“ 0 -100 50 H V L C
Описание графического элемента
[править]Существует пять типов графических элементов:
* Многоугольник - закрашенный и обычный; * Прямоугольник; * Окружность; * Дуга окружности; * Текстовое поле.
Многоугольник
[править]Формат:
P' Nb parts convert ltrait x0 y0 x1 y1 xi yi DC
Праметры принимают следующие значения:
Nb - количество точек; parts - определяет, во всех ли символах компонента присутствует данный многоугольник.
Если parts=0, то во всех, иначе это номер символа компонента; ltrait - толщина линии (всегда 0); xi, yi - координаты точки i; DC - если равно F, то многоугольник закрашен, иначе поле должно остатся пустым.
Пример:
P 3 0 1 0 -50 50 50 0 -50 -50 F
P 2 0 1 0 50 50 50 -50
Прямоугольник
[править]Формат:
S startx starty endx endy unit convert ltrait
Параметры:
unit - 0, если все символы в компоненте равнозначны, иначе - номер символа; convert - 0, если только одно преставление символа, иначе - номер представления; ltrait - толщина (всегда 0).
Пример:
S 0 50 900 900 0 1 0
Окружность
[править]Формат:
C posx posy radius unit convert ltrait
Параметры:
posx posy - координаты центра; radius - радиус окружности; unit - 0, если все символы в компоненте равнозначны, иначе - номер символа; convert - 0, если только одно преставление символа, иначе - номер представления; ltrait - толщина (всегда 0).
Примеры:
C 0 0 70 0 1 0
C 0 0 20 0 1 0
Дуга окружности
[править]Формат:
To posx posy radius start end unit convert ltrait start_pointX start_pointY end_pointX end_pointY
Параметры:
posx posy radius unit convert ltrait - параметры, как у окружности; start end - угол начальной и конечной точек (в 0.1 градуса); start_pointX start_pointY - координаты начальной точки (то же предназначение, что и
у параметры start); end_pointX end_pointY - координаты конечной точки (то же предназначение, что и у параметра end). Последние четыре параметра, судя по всему - необязательные.
Примеры:
To 0 148 48 -889 889 0 1 0
To 0 51 51 -889 889 0 1 0
Текстовое поле
[править]Формат,
T orientation posx posy dimension unit convert Text
Параметры:
orientation - 0 или 1 - горизонтальная или вертикальная ориентация posx posy - координаты; dimension - продольный размер текста; unit - 0, если все символы в компоненте равнозначны, иначе - номер символа; convert - 0, если только одно преставление символа, иначе - номер представления; Text - текст.
Пример:
T 0 -320 -10 100 0 0 1 VREF
Описание выводов
[править]Формат:
X name number posx posy length orientation Snum Snom unit convert Etype [shape]
Параметры:
name - название выводов без пробелов (~ - если нет); number - номер вывода; posx posy - координаты; length - длина вывода; orientation - R или L - правая или левая ориентация (?); Snum - размер текста номера вывода; Snum - размер текста названия вывода; unit - 0, если все символы в компоненте равнозначны, иначе - номер символа; convert - 0, если только одно преставление символа, иначе - номер представления; Etype - электрический тип (1 символ) (?); shape - форма вывода (не обязательно): clock, inversion, ... (?).
Примеры:
X TO 1 -200 0 150 R 40 40 1 1 P
X K 2 200 0 150 L 40 40 1 1 P
X 0 1 0 0 0 R 40 40 1 1 W NR
X ~ 2 0 -250 200 U 40 40 1 1 P
Файлы списков соединений (NetList)
[править]Примечание переводчика. Описание формата файлов соединений отсутствует в официальной документации KiCAD. Приведённый ниже материал получен путём анализа исходных текстров программы EESchema:
<src_dir>/eeschema/netform.cpp
EESchema позволяет формировать списки соединений в нескольких форматах:
- Generic NetList - внутренний формат EESchema, предназначенный для использования в конверторах форматов; содержит максимум возможной информации;
- PCBNew NetList - формат списка соединений, предназначенный для PCBNew (используется по умолчанию);
- OrcadPCB2, CadStar, Spice - поддерживаемые форматы для других программ.
Кроме того, совместно с KiCAD возможно использование дополнительных программ (plugins), формирующих список соединений в других форматах.
Формат списка соединений PCBNew
[править]Файл списка соединений PCBNew формируется процедурой WriteNetListPCBNEW()
из файла netform.cpp
. Данный формат является форматом OrcadPCB2 с дополнительными комментариями.
Ниже приведён краткий пример файла в данном формате:
# EESchema Netlist Version 1.1 created 17/5/2007-20:13:01
(
( 45E40665 $noname C1 0.015u {Lib=C}
( 1 GND )
( 2 VCC )
)
( 45E3E98E $noname R5 270 {Lib=R}
( 1 N-000003 )
( 2 VCC )
)
( 45E3E987 $noname R4 270 {Lib=R}
( 1 N-000004 )
( 2 VCC )
)
)
{ Allowed footprints by component:
$component C1
C?
SM*
$endlist
$component R5
R?
SM0603
SM0805
$endlist
$component R4
R?
SM0603
SM0805
$endlist
$endfootprintlist
}
{ Pin List by Nets
Net 1 "GND"
C1 1
Net 2 "VCC"
R5 2
R4 2
Net 3 ""
R5 1
D3 1
Net 4 ""
R4 1
D2 1
}
End
В данном фрагменте реального списка соединений описано три элемента - конденсатор C1 и два светодиода резистора R4 и R5. Структура списка соединений очевидна из данного примера. Она содержит:
- заголовок;
- список по элементам, содержащий информацию о принадлежности всех выводов элемента к той или иной цепи;
- отпечатки на плате, возможные для каждого из элементов;
- список соединений, отсортированный по электрическим цепям;
- хвостовую часть файла.
Формат файла печатной платы
[править]Общая информация
[править]Файлы печатный плат (*.brd) являются текстовыми файлами ASCII. Все размеры указаны в десятитысячных долях дюйма (1/10000 дюйма = 0.1 mils = 0.00254 мм), за исключением размера листа, указанного в тысячных долях дюйма (1/1000 дюйма = 1 mils = 0.0254 мм).
Первая строка содержит информацию о создавшей файл программе и дату создания, например:
PCBNEW-BOARD Version 0 date 5/1/2005-14:45:23
Далее следуют описания различных объектов, в общем случае имеющие вид:
$DESCRIPTION
некоторые данные...
...
$EndDESRIPTION
Примеры:
$GENERAL
Ly 1FF8001
Links 66
NoConn 0
Di 24940 20675 73708 40323
Ndraw 16
Ntrack 267
Nzone 1929
Nmodule 29
Nnets 26
$EndGENERAL
$SHEETDESCR
Sheet A4 11700 8267
Title ""
Date "23 Feb 2004"
Rev ""
Comp ""
Comment1 ""
Comment2 ""
Comment3 ""
Comment4 ""
$EndSHEETDESCR
Нумерация слоёв
[править]Дорожки и другие элементы (текстовые надписи, рисунки, ...) должны располагаться в одном из слоёв. Выводы и переходные отверсия могут располагаться на нескольких слоях. Используется 16 медных и 12 технических слоёв. Параметр layer, обозначающий номер слоя и используемый в описаниях объектов, принимает следующие значения:
Значение | Название слоя |
0 | Слой "Copper" (располагается с обратной стороны платы) |
1...14 | Внутренние слои |
15 | Слой "Component" (лицевая сторона платы) |
16 | Слой адгезии с обратной стороны платы |
17 | Слой адгезии с лицевой стороны |
18 | Слой паяльной пасты с обратной стороны |
19 | Слой паяльной пасты с лицевой стороны |
20 | Шелкография с обратной стороны |
21 | Шелкография с лицевой стороны |
22 | Слой паяльной маски с обратной стороны |
23 | Слой паяльной маски с лицевой стороны |
24 | Слой рисования (для прочих надписей и рисунков) |
25 | Слой комментариев (ещё один слой для прочих надписей и рисунков) |
26 | ECO1 (ещё один слой для прочих надписей и рисунков) |
26 (?) | ECO2 (ещё один слой для прочих надписей и рисунков) |
27 | Слой Edge, отображаемый на всех слоях. |
Иногда используется маска слоёв, определяющая, какие из слоёв необходимо отображать. Данный параметр представляет собой 32-разрядное целое число, задаваемое в файле в шестнадцатеричной форме. 0 бит соответствует слою "Copper", и так далее по спику, приведённому выше. При работе PCBnew выполняет операцию ИЛИ со списком существующих слоёв для того, чтобы определить, какие слои должны отображаться.
Описание первой строки
[править]Формат: PCBNEW-BOARD Version version date date-time
Параметры:
version - версия формата файла (?); date time - дата и время создания файла - параметры, приведённые в информативных целях
и не используемые программой PCBnew.
Блок $GENERAL
[править]В данном блоке собраны данные, требуемые при загрузке файла.
Пример | Описание |
$GENERAL | Начало блока |
Ly 1FFF8001 | Устаревший параметр, используемый для совместимости |
Links 66 | Общее количество соединений |
NoConn | Количество ещё не подсоединённых цепей |
Di 24940 20675 73708 40323 | Координаты прямоугольника, охватывающего всю плату: startX startY endX endY |
Ndraws 16 | Количество нарисованных объектов, таких, как границы платы, текстовые надписи, ... |
Ntrack 267 | Количество участков дорожек |
Nzone 1929 | Количество сегментов областей заполнения |
Nmodule 29 | Количество модулей (элементов) |
Nnets 26 | Количество электрических цепей |
$EndGENERAL | Конец описания |
Описание листа ($SHEETDESCR)
[править]В данном блоке описывается отдельный лист - формат бумаги, данные, заполняемые в штамп.
Пример | Описание |
$SHEETDESCR | Начало описания |
Sheet A4 11700 8267 | Формат листа, размеры (в 1/1000 дюйма) (ширина и высота) |
Title "" | Текст в заголовке штампа |
Date "23 Feb 2004" | Дата |
Rev "" | Версия |
Comp "" | Название организации |
Comment1 "" | Комментарий, строка 1 |
Comment2 "" | Комментарий, строка 2 |
Comment3 "" | Комментарий, строка 3 |
Comment4 "" | Комментарий, строка 4 |
$EndSHEETDESCR |
Описание блока $SETUP
[править]В блоке $SETUP находятся данные, используемые непосредственно при разработке печатной платы. Данные параметры не используются при редактировании модулей (элементов).
Пример | Описание |
$SETUP | Начало блока $SETUP |
InternalUnit 0.000100 INCH | Единица предоставления координат в PCBnew |
GridSize 500 500 | Текущий размер координатной сетки |
ZoneGridSize 100 | Размер сетки для заполнения участков платы |
Layers 2 | Количество слоёв |
TrackWidth 250 | Текущая ширина дорожки |
ТrackWidthHistory 170 | Список использованных значений ширины дорожки |
TrackWidthHistory 250 | |
TrackWidthHistory 400 | |
TrackClearance 100 | Промежуток между дорожками, используется при проверке автоматическом контроле |
ZoneClearance 100 | Промежуток, используемый при заполнении участков платы |
DrawSegmWidth 120 | Текущая ширина сегмента при рисовании на технических слоях |
EdgeSegmWidth 120 | Текущая ширина сегмента при рисовании в слое "Edges" |
ViaSize 700 | Текущий размер переходного отверстия |
ViaDrill 250 | Текущий диаметр отверсия |
ViaSizeHistory 450 | Список использованных значений размера переходного отверстия |
ViaSizeHistory 650 | |
ViaSizeHistory 700 | |
TextPcbWidth 120 | Текущий размер надписей на медных и технических слоях (не относится к тексту модулей (элементов)) |
TextPcbSize 600 600 | Текущий размер текста (ширина и длина) |
EdgeModWidth | Текущая ширина сегмента для редактировании модуля (элемента) |
TextModSize 120 600 | Текущий размер текста для редактирования модуля (элемента) (ширина и высота) |
PadSize 700 700 | Текущий размер вывода для редактирования модуля (элемента) (ширина и высота) |
PadDrill 320 | Текущий диаметр отверстия вывода |
AuxillaryAxisOrg 0 0 | Координаты начала относительной системы координат |
$EndSETUP | Конец блока |
Описание электрической цепи ($EQUIPOT)
[править]Пример | Описание |
$EQUIPOT | Начало блока $EQUIPOT |
Na 2 "N-000026" | Na <внутренний номер> <название цепи> |
St~ | |
$EndEQUIPOT | Конец блока |
Примечание 1 Внутренний номер цепи - произвольно выбираемое в момент чтения списка соединений (netlist) число. Примечание 2 Цепь 0 не является реально существующей цепью, а обозначает неподсоединённые цепи.
Примеры:
$EQUIPOT
Na 0 ""
St~
$EndEQUIPOT
$EQUIPOT
Na 1 "DONE"
St~
$EndEQUIPOT
$EQUIPOT
Na 2 "N-000026"
St~
$EndEQUIPOT
$EQUIPOT
Na 3 "TDO/Prog"
St~
$EndEQUIPOT
Описание модуля
[править]Описание модуля начинается с:
$MODULE <имя модуля>
и заканчивается
$EndMODULE <имя модуля>
Описание модуля содержит четыре раздела:
- общая информация (фиксированного размера);
- описания полей (переменного размера);
- описания графики (переменного размера);
- описания выводов (переменного размера);
- информация о трёхмерной модели элемента.
Примечание Все размеры указываются относительно положения модуля. Это означает, что все координаты и размеры указаны для положения модуля в начале координат с нулевым углом поворота. В случае, если модуль повёрнут или отражён зеркально, реальные координаты пересчитываются соответствующим образом.
Общая информация
[править]Пример | Описание |
---|---|
$MODULE bornier6 | $MODULE <имя модуля> |
Po 62000 30500 2700 15 3EC0C28A 3EBF830C ~ | Po X Y ориентация(0.1 град) слой метка_времени параметр_1 параметр_2
параметр_1 - "F"-фиксирован, "~"-можно перемещать (используется при авторазмещении) параметр_2 - "~" или "P" - не размещён или размещён автоматически. |
Li bornier6 | Указывает библиотечное название модуля |
Cd комментарий | Строка комментария |
Kw Keyword1 Keyword2 ... | Ключевое слово для выбора модуля |
Sc 3EBF830C | Временная метка |
Op 0 0 0 | <цена_поворота_90> <цена_поворота_180>
цена поворота для авторазмещения, от 0 (поворот запрещён) до 10 (нулевая цена) |
Примечание Обычно модуль находится либо на лицевом слое (component 15), либо на противоположном (copper 0). Если модуль находится на противоположном слое 0, то он отображается зеркально (координата X инвертируется).
Описания полей
[править]Модуль может иметь от 2 до 12 полей. Поле 0 - обозначение элемента на схеме (обязательное поле). Поле 1 - номинал компонента (обязательное поле). Остальные поля - комментарии.
Формат: T<номер поля> posX posY sizeX sizeY "text" Параметры означают номер поля, координаты, размеры поля и текст.
Примеры:
T0 500 -3000 1030 629 2700 120 N V 21 "P1"
T1 0 3000 1201 825 2700 120 N V 21 "CONN_6"
Описание графики
[править]В данном разделе описывается рисунок модуля. Рисунок состоит из линий, окружностей и дуг.
Пример | Описание |
---|---|
DS -6000 -1500 -6000 1500 120 21 | DS - рисовать сегмент (линию). Параметры: координаты начальной и конечной точки, толщина линии и слой. |
DC ox oy fx fy width layer | DC - рисовать окружность. Параметры: координаты центра, координаты точки, через которую проходит окружность (?),
толщина линии и слой. |
DA x0 y0 x1 y1 angle width layer | DA - рисовать дугу. Параметры: координаты начальной точки, конечной точки (?), угла, толщины линии и слоя. |
Описание выводов
[править]Описание выводов состоит из списка описаний вывода, формат которого приведён в соответствующем разделе.
Информация о трёхмерной модели модуля
[править]Трёхмерная модель модуля представляет собой файл в формате vrml, полученный с помощью трёхмерного редактора Wings3D. Трёхмерную модель можно масштабировать, поворачивать и перемещать, благодаря чему одну трёхмерную модель можно использовать для разных модулей (например, резисторы различных размеров). Некоторые модули элементов поверхностного монтажа используют это. Возможно также масштабирование элементов для более лучшего отображения.
Реальная единица измерения в трёхмерой модели - 0.1 дюйма (2.54 мм).
Формат:
Пример | Описание |
---|---|
$SHAPE3D | Начало блока |
Na "device/bornier6.wrl" | Имя файла трёхмерной модели |
Sc 1.00000 1.00000 1.00000 | Масштаб по осям X Y Z |
Of 0.00000 0.00000 0.00000 | Сдвиг по осям X Y Z |
Ro 0.00000 0.00000 0.00000 | Угол поворота по осям вокруг осей X Y Z (в градусах) |
$EndSHAPE3D | Конец блока |
Координаты трёхмерной модели заданы относительно координат модуля. Трёхмерная модель при отображении подвергается масштабированию, смещению и повороту в соответствии с указанными параметрами, после чего масштабируется, смещается и поворачивается вместе с модулем. Если модуль находится с обратной стороны платы (на нулевом слое - copper), то координаты инвертируются соответствующим образом.
Примечание Один модуль может иметь несколько трёхмерных моделей, например, микросхема и её колодка.
Описание выводов
[править]Выводы могут быть различной формы и иметь различные атрибуты. Поддерживаются следующие типы выводов:
- круглые;
- овальные;
- прямоугольные;
- трапециевидные.
Атрибуты выводов:
- Normal - сквозной вывод с отверстием в плате;
- Smd - вывод для поверхностного монтажа;
- Connector - ножевой вывод на плате, выполненный печатным способом;
- Mechanical - вывод предназначен исключительно для крепежа.
Кроме того, фигура вывода может быть нарисована смещённой относительно отверстия в плате. Форма отверстия может быть круглой либо овальной.
$PAD | Начало блока, описывающего вывод | |||
Sh "2" C 1500 1500 0 0 2700 | Shape: <имя вывода> <форма> size_X size_Y delta_X delta_Y orientation | |||
Круглое отверстие: Dr 600 0 0 |
Drill <диаметр отверстия> offset_X offset_Y | Овальное отверстие: Dr 600 0 0 O 600 650 |
Drill <размер X> offset_X offset_Y <форма отверстия> <размер X> <размер Y> | |
At STD N 00E0FFFF | Attributs: <тип вывода> N <маска слоёв> | |||
Ne 8 "GND" | Net <номер цепи> <название цепи> | |||
Po -3000 0Прямоугольное | Position pos_X pos_X (относительно положения модуля | |||
$EndPAD | Конец описания |
Примечание:
Атрибутом вывода является параметр <тип вывода>, принимающий значения:
- STD
- SMD
- CONN
- HOLE
- MECA
Форма вывода может быть:
- С - круглый;
- R - прямоугольный;
- O - овальный;
- T - трапециевидный.
Пример:
$PAD
Sh "3" C 1500 1500 0 0 2700
Dr 600 0 0
At STD N 00E0FFFF
Ne 10 "TD0_0"
Po -1000 0
$EndPAD
Графические элементы
[править]Графические элементы включают в себя линии, окружности, текст, мишени и указатели размера.
Элемент $DRAWSEGMENT
[править]В данном разделе описываются следующие элементы:
- прямые линии;
- окружности;
- дуги.
Прямая линия
[править]$DRAWSEGMENT | Начало описания линии |
Po 0 67500 39000 65500 39000 120 | Position <форма> start_X start_Y end_X end_Y <толщина> |
De 28 0 900 0 0 | Description <слой> <тип> <угол> <метка времени> <статус> |
$EndDRAWSEGMENT | Конец описания |
Примечания:
- <форма> = 0;
- параметр <угол> не используется для линии (используется только для дуги).
Окружность
[править]$DRAWSEGMENT | Начало описания |
Po 1 67500 39000 65500 39000 120 | Position <форма> <center_X> <center_Y> <end_X> <end_Y> <толщина> |
De 28 0 900 0 0 | Description <слой> <тип> <угол> <метка времени> <статус> |
$EndDESCRIPTION |
Примечания:
- <форма> = 1;
- параметр <угол> не используется в окружности (используется в дуге);
- Точка End является точкой окружности; если end_X или end_Y равен нулю, то другая координата является радиусом.
Дуга
[править]$DRAWSEGMENT | Начало описания |
Po 2 67500 39000 65500 39000 120 | Position <форма> <center_X> <center_Y> <end_X> <end_Y> <толщина> |
De 28 0 900 0 0 | Description <слой> <тип> <угол> <метка времени> <статус> |
$EndDESCRIPTION |
Примечания:
- <форма>=2;
- точки start и end являются точками на дуге, а параметр <угол> - угол, определяющий дугу (в величинах 0,1 градуса); координаты центра дуги определяются программой PCBnew на основе координат двух точек дуги и угла.
На данный момент поддерживается значение угла 90 градусов (<угол>=900).
Пример:
$DRAWSEGMENT
Po 2 67500 39000 65500 39000 120
De 28 0 900 0 0
Текстовая надпись ($TEXTPCB)
[править]Пример:
$TEXTPCB | Начало описания |
Te "TDI" | Text <текстовая надпись> |
Po 57250 35750 600 600 150 0 | Position start_X start_Y size_X size_Y <угол поворота> |
De 15 1 0 0 | Description <слой> <признак зеркального отражения> <метка времени> 0
|
$EndTEXTPCB | Конец описания |
Пример:
$TEXTPCB
Te "TCK"
Po 57250 35750 600 600 150 0
De 15 1 0 0
$EndTEXTPCB
Мишень ($MIRE)
[править]$MIREPCB | Начало описания |
Po 0 28 28000 51000 5000 150 000000000 | Position <форма> pos_X pos_Y <размер> <толщина> <метка времени> |
$EndMIREPCB | Конец описания |
Размерная линия ($COTATION)
[править]$COTATION | Начало блока |
Ge 0 24 0 | General <форма> <слой> <метка времени><br\ >
На данный момент поддерживается только <форма>=0 |
Te "4,550" | Text <строка><br\ >
<строка> представляет собой размер в миллиметрах или дюймах |
Po 50250 5791 600 800 170 0 1 | Position start_X start_Y size_X size_Y <толщина> <ориентация> <признак зеркального отражения><br\>
Указываются координаты текстовой надписи |
Sb 0 27500 6501 73000 6501 150 | Координаты сегментов (линий, стрелок, ...) |
Sd 0 73000 9000 73000 5081 150 | |
Sg 0 27500 9000 27500 5081 150 | |
S1 0 73000 6501 72557 6731 150 | |
S2 0 73000 6501 72557 6271 150 | |
S3 0 27500 6501 27943 6731 150 | |
S4 0 27500 6501 27943 6271 150 | |
$EndCOTATION | Конец блока |
Дорожки, переходные отверстия и зоны
[править]Дорожки ($TRACK)
[править]Разделы $TRACK описывают проводящие дорожки и переходные отверсия на медных слоях.
Каждая дорожка (или отверстие) описывается двумя строками:
- дорожка:<br\>
Position <форма> start_X start_Y end_X end_Y <толщина><br\> Description <слой> 0 <код цепи> <метка времени> <статус><br\> Параметр <форма> = 0 (зарезервировано для будущих применений
- переходное отверстие:
Position <форма> start_X start_Y end_X end_Y <диаметр><br\> Description <слой> 1 <код цепи> <метка времени> <статус><br\> Параметр <слой> для переходного отверсия означает:
- младшие 4 разряда - начальный слой отверсия;
- следующие 4 разряда - конечный слой отверстия. <br\>
Если, например, отверсие начинается в слое component (0), а заканчивается в слое copper (15), то данный параметр имеет значение 0xF0 в шеснадцатеричной системе (240 в десятеричной).<br\> Параметр <форма> может принимать значения:
- trough = 3 - сквозное отверситие;
- blind = 2 - "глухое" отверсие;
- buried = 1 - "утоплённое" отверсие.<br\>
Параметр <метка времени> устанавливается равным 0 (зарезервировано для будущих применений).<br\> Параметр <статус> может быть установлен равным 0 (используется внутри программы при разводке).
$TRACK | Начало блока |
Po 0 36750 37000 36550 37000 250 | Position <форма> start_X start_Y end_X end_Y <толщина><br\>
<толщина> = <диаметр> переходного отверсия. |
De 15 0 1 0 400 | Description <слой> 1 <код цепи> <метка времени> <статус><br\>
|
Po 0 39000 36750 38750 37000 250 | Ещё одна дорожка |
De 15 0 1 0 0 | |
Po 3 53500 27000 53500 27000 250 | Это переходное отверсие (сквозное - "through") от 15 до 0 слоя. |
De 15 1 14 0 0 | |
$EndTRACK | Конец блока |
Зона
[править]Блок описания зоны аналогичен блоку описания дорожки. Отверсия в зонах отсутствуют.
$ZONE | Начало блока |
Po 0 67100 33700 67100 38600 100 | Описание аналогично описанию дорожки |
De 0 0 2 3EDDB09D 0 | |
$EndZONE | Конец описания |
Конец файла платы ($EndBOARD)
[править]Описание всей платы заканчивается ключевым словом
$EndBOARD
Это должна быть последняя строка файла.
Родственные форматы
[править]Формат файлов gEDA/gschem
[править]Предисловие переводчика
[править]gEDA - набор программ для разработки электронных схем, аналогичный по назначению KiCAD, однако отличающийся подходом. Если KiCAD - набор из нескольких приложений, разработанных совместно, то gEDA - набор из программ, исторически разработанных в разное время разными людьми. Проект gEDA - попытка собрать "в кулак" всё, что существовало в мире GPL в отношении разработки электронных схем.
Одним из нерешённых на данный момент времени вопросов явяется вопрос интеграции пакетов gEDA и KiCAD, хотя в этом направлении нет принципиальных сложностей. В связи с этим я решил привести ниже перевод форматов файлов схем и символов gschem, оригинальный текст которого можно найти по адресу: [format spec]
Обзор
[править]Ниже приведен перевод официальной документации на формат файлов gEDA/gaf (gschem и связанные с ней программы). Основным форматом файлов, используемым в gEDA/gaf, является формат схем/символов. Данный документ описывает только формат схем и символов, хотя в пакете программ gEDA/gaf используются файлы и других форматов.
Описанный ниже формат файлов относится к версии gEDA/gaf 20040111, версия формата файла - 1. Учтите, что этот формат файла, как и все другие форматы файлов, связанные с gEDA/gaf, распространяется в соответствии с Общественной Лицензией GNU (GPL) версии 2.0. Права на символ gEDA/gaf и формат файла схем принадлежат Ales Hvezda.
Пространство координат
[править]Все координаты в файлах формата gschem указываются в mils (1/1000 дюйма). Это является произвольной предпосылкой. Не забывайте, что для схем и символов не существует физических длин и размеров (что относится только к задаче рисования электрических схем.
Примечание переводчика. Желательно выполнять схемы в действующими стандартами ЕСКД, в связи с чем эта предпосылка создаёт определённые проблемы. На самом деле единственный размер, который требуется соблюдать в gschem - расстояние между выводами элементов должно быть кратным 100 mils (2.54 мм). В нашей стране принято делать расстояние между выводами 5.0 мм. Простейший вариант соблюсти всё это - рисовать схему в масштабе 1:2.54/5, а при печати масштабировать её. Данная проблема требует дальнейшего исследования.
- Начало координат находится в нижнем левом углу.
- Размер координатного пространства не ограничен, однако рекомендуется не выходить за пределы 120x90 дюймов (3048x2286 мм).
- Рекомендуется использовать положительные значения координат. Отрицательные значения работают, но не приветствуются.
На приведённом ниже рисунке изображена система координат, используемая в gEDA.
Ось X направлена направо, ось Y - вверх. Координатная система располагается на листе таким образом, что ось X параллельна длинной стороне листа.
Примечание переводчика. В соответствии с ЕСКД у нас, в отличие от западных стандартов, принято портретное расположение листа А4
Имена файлов
[править]Файлы символов оканчиваются расширением .sym. Относительно имен файлов символов в gEDA/gschem сделано лишь одно предположение: если есть несколько версий одного и того же символа, то соответствующие файлы должны иметь одинаковые названия и различающиеся суффиксы -1, -2, -3, ... , -N. Примеры: 7400-1.sym, 7400-2.sym, 7400-3.sym.
Файлы схем имеют расширение .sch. Традиционно используемое соглашение о том, что файлы схемы, состоящей из нескольких листов, должны иметь одно имя с суффиксами -1, -2, -3, на сегодняшний день признано устаревшим. Имена файлов схем могут быть названы любым способом, удобным для создателя схемы.
Типы объектов
[править]Файл схемы или символа gEDA/gaf состоит из:
- номера версии формата (ключевая буква v), данная запись должна быть первой в файле;
- любое количество правильных записей объектов; записи объектов различаются по полю тип_объекта (object type);
- большинство объектов помещаются на одной строке, но текстовые записи занимают две строки;
- для всех перечислимых типов в gEDA/gaf поле принимает численное значение.
Идентификатор тип_объекта - одна буква, находящаяся в начале строки. Идентификатор типа чувствителен к регистру символа. Файлы символов и схем используют одинаковую разметку. Символ состоит из примитивных объектов (линий, прямоугольников, окружностей, дуг, текстовых надписей и выводов). Схема состоит из символов (symbol), цепей (net) и шин (bus).
Ниже приведена спецификация всех распознаваемых типов объектов. Каждый раздел состоит из:
- имени объекта;
- может ли он появляется в файле схем или символов;
- описания формата данных;
- описания каждого отдельного поля данных;
- деталей и предостережений относительно отдельных полей;
- примера использования.
Информация о индексах цвета, которые используются в большинстве объектов, смотрите раздел "Цвета".
Версия формата
[править]Встречается в: sym, sch.
type version fileformat_version
Поле | Тип/единицы | Описание |
type | char | v |
version | int | Версия gEDA/gaf, создавшей файл |
fileformat_version | int | Версия формата файла |
- Тип - маленькая буква v.
- Этот объект обязательно должен быть в любом файле схем или символов, созданном gEDA/gaf.
- Формат первого поля версии - «ГГГГММДД».
- Версия не обязательно является отметкой времени. Не следует делать данного предположения в программа.
- Надпись «version of gEDA/gaf that wrote this file» использовалась вплоть до версии gEDA 20030921 и больше не означает формат файла, а приводится в информативных целях.
- Начиная с версии gEDA 20031004 в качестве версии используется версия формата файла. Любой код, обрабатывающий файлы, должен использовать это поле.
- С появлением нового формата номер версии увеличивается.
- Номер формата файла - просто целое число без численного суффиса.
- На данный момент времени существуют следующие версии форматов файлов: 19990601, 19990610, 19990705, 19990829, 19990919, 19991011, 20000220, 20000704, 20001006, 20001217, 20010304, 20010708, 20010722, 20020209, 20020414, 20020527, 20020825, 20021103, 20030223, 20030525, 20030901, 20040111, 20040710, 20041228, 20050313, 20050820, 20060123, 20060824, 20060906, 20061020, 20070216
- Версии CVS или тестовые версии (не должны использоваться): 20030921, 20031004, 20031019, 20031231, 20050814
- Имейте в виду, что все перечисленные форматы файлов имеют свои особенности, а в данном документе описана лишь последняя версия.
Пример:
v 20040111 1
Линия
[править]Встречается в: sym, sch.
type x1 y1 x2 y2 color width capstyle dashstyle dashlength dashspace
Поле | Тип/единицы | Описание |
type | char | L |
x1 | int/mils | Первая коорината X |
y1 | int/mils | Первая коорината Y |
x2 | int/mils | Вторая коорината X |
y2 | int/mils | Вторая коорината Y |
color | int | Индекс цвета |
width | int/mils | Ширина линии |
capstyle | int | Тип окончания |
dashstyle | int | Тип линии |
dashlength | int | Длина пунктира |
dashspace | int | Длина промежутка пунктира |
- Тип окончания - перечислимый тип:
- END_NONE = 0 (нет окончания)
- END_SQUARE = 1 (прямоугольное окончание)
- END_ROUND = 2 (окружность)
- Тип линии - перечислимый тип:
- TYPE_SOLID = 0 (сплошная линия)
- TYPE_DOTTED = 1 (точки)
- TYPE_DASHED = 2 (пунктир)
- TYPE_CENTER = 3
- TYPE_PHANTOM = 4
- Длина пунктира не используется для линий TYPE_SOLID и TYPE_DOTTED. Параметр в этом случае равен -1.
- Длина промежутка пунктира не используется для линии TYPE_SOLID. Параметр в этом случае равен -1.
Пример:
L 23000 69000 28000 69000 3 40 0 1 -1 75
Изображение
[править]Встречается в: sym, sch.
type x y width height angle ratio mirrored embedded
<имя файла>
[<закодированное изображение>
<конец закодированного изображения>]
Поле | Тип/единицы | Описание |
type | char | G |
x | int/mils | Координата X нижнего левого угла |
y | int/mils | Координата Y нижнего левого угла |
width | int/mils | Ширина изображения |
height | Высота изображения | |
angle | int/градусы | Угол поворота изображения |
ratio | ? | Отношение ширины и высоты (?) |
mirrored | char | Признак зеркального отображения |
embedded | char | Признак встроенного изображения |
<имя файла> | string | Имя файла изображения |
<закодированное изображение> | string | Необязательное закодированное в формате base64 изображение |
<конец закодированного изображение> | string | Конец закодированного изображения, одна строка, содержащая точку. |
- Данный объект описывает изображение. Первая строка содержит параметры, вторая - имя файла с изображением. Если изображение встроенное, то вторая строка игнорируется.
- Угол поворота изображения может принимать следующие значения: 0, 90, 180, 270.
- Признак поворота изображения - перечислимый тип:
- не отображено зеркально - 0
- отображено зеркально - 1
- Признак встроенного изображения:
- нет встроенного изображения - 0
- есть встроенное изображение - 1
- Поля <закодированное изображение> и <конец закодированного изображения> присутствуют в файле, только если используется встроенное изображение.
- <закодированное изображение> - это поле может занимать несколько строк. Изображение преобразовано в последовательный код и преобразовано в формат base64. Благодаря данному кодированию получаемая строка текста содержит только печатаемые символы.
- <конец закодированного изображения> - строка, содержащая единственный символ "точка" - ".", обозначающий конец закодированного изображения.
Пример:
G 16900 35800 1400 2175 0 6.435331e-01 0 0
../bitmaps/logo.jpg
В этом примере описывается объект с нижним левым углом в координатах (16900, 35800). Ширина изображения составляет 1,4 дюйма (35.56 мм), высота - 2,175 дюйма (55,545 мм). Таким образом, отношение сторон равно 0,64353. Изображение повёрнуто на 0 градусов, ни отражено зеркально, ни является встроенным. Путь к файлу изображения расположен во второй строке.
Пример:
G 16900 35800 1400 2175 0 6.435331e-01 0 1
../bitmaps/logo.jpg
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
.
В этом примере описывается объект с нижним левым углом в координатах (16900, 35800). Ширина изображения составляет 1,4 дюйма (35.56 мм), высота - 2,175 дюйма (55,545 мм). Таким образом, отношение сторон равно 0,64353. Изображение повёрнуто на 0 градусов, ни отражено зеркально, является встроенным. Приведённые в примере строки изображения не являются реальными данными, приведены лишь для примера. Строка, содержащая точку, заканчивает изображение.
Прямоугольник
[править]Встречается в: sym, sch.
type x y width height color lwidth capstyle dashtype dashlength dashspace filltype fillwidth angle1 pitch1 angle2 pitch2
Поле | Тип/единицы | Описание |
type | char | B |
x | int/mils | Координата X нижнего левого угла |
y | int/mils | Координата Y нижнего левого угла |
width | int/mils | Ширина прямоугольника |
height | Высота прямоугольника | |
color | int | Индекс цвета прямоугольника |
lwidth | int/mils | толщина линии |
capstyle | int | Тип окончания |
dashstyle | int | Тип линии |
dashlength | int | Длина пунктира |
dashspace | int | Длина промежутка пунктира |
filltype | int | Тип штриховки |
fillwidth | int/mils | Толщина линий штриховки |
angle1 | int/градусы | Угол наклона первой линии штриховки |
pitch1 | int/mils | Шаг первой линии заполнения |
angle2 | int/градусы | Угол наклона второй линии штриховки |
pitch2 | int/mils | Шаг второй линии заполнения |
- Тип окончания - перечислимый тип:
- END_NONE = 0 (нет окончания)
- END_SQUARE = 1 (прямоугольное окончание)
- END_ROUND = 2 (окружность)
- Тип линии - перечислимый тип:
- TYPE_SOLID = 0 (сплошная линия)
- TYPE_DOTTED = 1 (точки)
- TYPE_DASHED = 2 (пунктир)
- TYPE_CENTER = 3
- TYPE_PHANTOM = 4
- Длина пунктира не используется для линий TYPE_SOLID и TYPE_DOTTED. Параметр в этом случае равен -1.
- Длина промежутка пунктира не используется для линии TYPE_SOLID. Параметр в этом случае равен -1.
- Тип штриховки - перечислимый тип:
- FILLING_HOLLOW = 0 - нет заполнения;
- FILLING_FIL = 1 - сполошное заполнение;
- FILLING_MESH = 2 - сетка;
- FILLING_HATCH = 3 - штрих;
- FILLING_VOID = 4 - не используется.
- Если тип заполнения - 0 (FILLTYPE_HOLLOW - нет заполнения), то все параметры заполнения принимают значения -1.
- Если тип заполнения - 1 (FILLTYPE_FILL - сполошное заполнение), то весь прямоугольник закрашивается заданным цветом.
- Если тип заполнения - 3 (FILLTYPE_HATCH - штрих), то используется только первая пара параметров штриховки.
Пример:
B 33000 67300 2000 2000 3 60 0 2 75 50 0 -1 -1 -1 -1 -1
В данном примере координаты нижнего левого угла - (33000, 67300), ширина равна 2000, высота равна 2000, используется цвет номер 3, толщина линии составляет 60 mils (1,524 мм), нет окончаний линий, линия пунктирная, длина пунктира - 75 mils (1,905 мм), промежуток пунктира - 50 mils (1,27 мм), заполнения нет, остальные параметры не установлены.
Окружность
[править]Встречается в: sym, sch.
type x y radius color width capstyle dashtype dashlength dashspace filltype fillwidth angle1 pitch1 angle2 pitch2
Поле | Тип/единицы | Описание |
type | char | V |
x | int/mils | Координата X центра |
y | int/mils | Координата Y центра |
radius | int/mils | Радиус окружности |
color | int | Индекс цвета прямоугольника |
width | int/mils | толщина линии |
capstyle | int | 0 - не используется |
dashstyle | int | Тип линии |
dashlength | int | Длина пунктира |
dashspace | int | Длина промежутка пунктира |
filltype | int | Тип штриховки |
fillwidth | int/mils | Толщина линий штриховки |
angle1 | int/градусы | Угол наклона первой линии штриховки |
pitch1 | int/mils | Шаг первой линии заполнения |
angle2 | int/градусы | Угол наклона второй линии штриховки |
pitch2 | int/mils | Шаг второй линии заполнения |
- Тип линии - перечислимый тип:
- TYPE_SOLID = 0 (сплошная линия)
- TYPE_DOTTED = 1 (точки)
- TYPE_DASHED = 2 (пунктир)
- TYPE_CENTER = 3
- TYPE_PHANTOM = 4
- Длина пунктира не используется для линий TYPE_SOLID и TYPE_DOTTED. Параметр в этом случае равен -1.
- Длина промежутка пунктира не используется для линии TYPE_SOLID. Параметр в этом случае равен -1.
- Тип штриховки - перечислимый тип:
- FILLING_HOLLOW = 0 - нет заполнения;
- FILLING_FIL = 1 - сполошное заполнение;
- FILLING_MESH = 2 - сетка;
- FILLING_HATCH = 3 - штрих;
- FILLING_VOID = 4 - не используется.
- Если тип заполнения - 0 (FILLTYPE_HOLLOW - нет заполнения), то все параметры заполнения принимают значения -1.
- Если тип заполнения - 1 (FILLTYPE_FILL - сполошное заполнение), то весь прямоугольник закрашивается заданным цветом.
- Если используется заполение сеткой (2, FILLTYPE_MESH), то используется обе пары значений параметров штриховки;
- Если тип заполнения - 3 (FILLTYPE_HATCH - штрих), то используется только первая пара параметров штриховки.
Пример:
V 38000 67000 900 3 0 0 2 75 50 2 10 20 30 90 50
В данном примере окружность имеет центр с кооринатами (38000, 67000), радиус 900 mils (88,86 мм), цвет 3, толщина линии 0 (наименьшая), пунктирная линия, длина пунктира 75 mils (1,905 мм), промежуток пунктира 60 mils (1,524 мм), заполение сеткой, толщина линий сетки 10 mils (0,254 мм), первая линия с наклоном 20 градусов промежутком 30 mils (0,762 мм), вторая линия с наклоном 90 градусов и промежутками 50 mils (1,27 мм).