⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 eagle.def

📁 老外的PCB设计软件,是免费的.可以上网更新.
💻 DEF
📖 第 1 页 / 共 3 页
字号:
Draw       = "DA %d,%d;\n"

[TEWIP281]

Type     = PenPlotter
Long     = "tewidata P 281 plotter"
Init     = "H\n"
Reset    = "HF0\n"
Width    = 16
Height   = 11
ResX     = 254
ResY     = 254
PenSelect  = "F%u\n"
PenUp      = "H"
PenDown    = "I"
Move       = "%d/%dK\n"
Draw       = "%d/%dK\n"
PenCircleRxn = "O%d,180,540\n" ; Rxn = Radius X (long, negative)

[SE281]

@TEWIP281
Long     = "Goerz Servogor SE 281 plotter"

[RY10MZ]

Type     = PenPlotter
Long     = "Rikadenki RY-10 MZ plotter"
Init     = ""
Reset    = "H\n"
Width    = 16
Height   = 11
ResX     = 254
ResY     = 254
PenSelect  = "K%u\n"
PenSpeed   = "T%1.0f\n"
Move       = "M%d,%d\n"
Draw       = "D%d,%d\n"
PenCircleCxCyRxRy = "W%d,%d C%d,180,360\n"

[HIDMP]

Type     = PenPlotter
Long     = "Houston Instrument DMP plotter"
Init     = ";:H A EC1 \n"
Reset    = "P0 @\n"
Width    = 16
Height   = 11
ResX     = 1000
ResY     = 1000
PenSelect  = "P%u\n"
PenSpeed   = "V%1.0f\n"
Move       = "U %d,%d\n"
Draw       = "D %d,%d\n"
PenCircleCxCyRxRy = "CA %d,%d 360\n"

[EPS]

Type     = Generic
Long     = "Encapsulated PostScript"
ResX     = 254000  ; this gives us editor coordinates!
ResY     = 254000
Width    = 100.00  ; virtually infinite
Height   = 100.00
ArcCxCyRWSaEaC = "%d %d %d %d %1.2f %1.2f %d a\n" ; (CenterX, CenterY, Radius, Width, StartAngle, EndAngle, LineCap)
Bar      = "%d %d %d %d %.1f b\n"        ; (x1, y1, x2, y2, Angle)
Circle   = "%d %d %d %d c\n"             ; (x, y, Radius, Width)
Line     = "%d %d %d %d %d l\n"          ; (x1, y1, x2, y2, Width)
Octagon  = "%d %d %d %d %.1f o\n"        ; (x, y, dx, dy, Angle)
Pie      = "%d %d %d p\n"                ; (x, y, d)
Hole     = "%d %d %d h\n"                ; (x, y, d)

Header1  = "%%!PS-Adobe-3.0 EPSF-3.0\n"     \
           "%%%%Title: EAGLE Drawing %s\n"  \
           "%%%%Creator: EAGLE\n"           \
           "%%%%Pages: %d\n"                \
           "%%%%BoundingBox: 0 0 %d %d\n"   \
           "%%%%EndComments\n"              \
           "\n"\
           "%% Coordinate transfer:\n"\
           "\n"\
           "/EU { 254 div 0.072 mul } def\n"\
           "/inch { 72 mul } def\n"\
           "\n"\
           "%% Linestyle:\n"\
           "\n"\
           "1 setlinecap\n"\
           "1 setlinejoin\n"\
           "\n"\
           "%% Drawing functions:\n"\
           "\n"\
           "/l {  %% draw a line\n"\
           "   /lw exch def\n"\
           "   /y2 exch def\n"\
           "   /x2 exch def\n"\
           "   /y1 exch def\n"\
           "   /x1 exch def\n"\
           "   newpath\n"\
           "   x1 EU y1 EU moveto\n"\
           "   x2 EU y2 EU lineto\n"\
           "   lw EU setlinewidth\n"\
           "   stroke\n"\
           "   } def\n"\
           "\n"\
           "/h {  %% draw a hole\n"\
           "   /d  exch def\n"\
           "   /y  exch def\n"\
           "   /x  exch def\n"\
           "   d 0 gt {\n"\
           "     newpath\n"\
           "     x EU y EU d 2 div EU 0 360 arc\n"\
           "     currentgray dup\n"\
           "     1 exch sub setgray\n"\
           "     fill\n"\
           "     setgray\n"\
           "     } if\n"\
           "   } def\n"\
           "\n"\
           "/b {  %% draw a bar\n"\
           "   /an exch def\n"\
           "   /y2 exch def\n"\
           "   /x2 exch def\n"\
           "   /y1 exch def\n"\
           "   /x1 exch def\n"\
           "   /w2 x2 x1 sub 2 div EU def\n"\
           "   /h2 y2 y1 sub 2 div EU def\n"\
           "   gsave\n"\
           "   x1 x2 add 2 div EU y1 y2 add 2 div EU translate\n"\
           "   an rotate\n"\
           "   newpath\n"\
           "   w2     h2     moveto\n"\
           "   w2 neg h2     lineto\n"\
           "   w2 neg h2 neg lineto\n"\
           "   w2     h2 neg lineto\n"\
           "   closepath\n"\
           "   fill\n"\
           "   grestore\n"\
           "   } def\n"\
           "\n"\
           "/c {  %% draw a circle\n"\
           "   /lw exch def\n"\
           "   /rd exch def\n"\
           "   /y  exch def\n"\
           "   /x  exch def\n"\
           "   newpath\n"\
           "   lw EU setlinewidth\n"\
           "   x EU y EU rd EU 0 360 arc\n"\
           "   stroke\n"\
           "   } def\n"\
           "\n"\
           "/a {  %% draw an arc\n"\
           "   /lc exch def\n"\
           "   /ae exch def\n"\
           "   /as exch def\n"\
           "   /lw exch def\n"\
           "   /rd exch def\n"\
           "   /y  exch def\n"\
           "   /x  exch def\n"\
           "   lw rd 2 mul gt {\n"\
           "     /rd rd lw 2 div add 2 div def\n"\
           "     /lw rd 2 mul def\n"\
           "     } if\n"\
           "   currentlinecap currentlinejoin\n"\
           "   lc setlinecap 0 setlinejoin\n"\
           "   newpath\n"\
           "   lw EU setlinewidth\n"\
           "   x EU y EU rd EU as ae arc\n"\
           "   stroke\n"\
           "   setlinejoin setlinecap\n"\
           "   } def\n"\
           "\n"\
           "/p {  %% draw a pie\n"\
           "   /d exch def\n"\
           "   /y exch def\n"\
           "   /x exch def\n"\
           "   newpath\n"\
           "   x EU y EU d 2 div EU 0 360 arc\n"\
           "   fill\n"\
           "   } def\n"\
           "\n"\
           "/edge { 0.20710678119 mul } def\n"\
           "\n"\
           "/o {  %% draw an octagon\n"\
           "   /an exch def\n"\
           "   /dy exch def\n"\
           "   /dx exch def\n"\
           "   /y  exch def\n"\
           "   /x  exch def\n"\
           "   gsave\n"\
           "   x EU y EU translate\n"\
           "   an dx dy lt { 90 add /dx dy /dy dx def def } if rotate\n"\
           "   newpath\n"\
           "      0 dx 2 div sub EU                    0 dy edge  add EU moveto\n"\
           "      0 dx dy sub 2 div sub dy edge sub EU 0 dy 2 div add EU lineto\n"\
           "      0 dx dy sub 2 div add dy edge add EU 0 dy 2 div add EU lineto\n"\
           "      0 dx 2 div add EU                    0 dy edge  add EU lineto\n"\
           "      0 dx 2 div add EU                    0 dy edge  sub EU lineto\n"\
           "      0 dx dy sub 2 div add dy edge add EU 0 dy 2 div sub EU lineto\n"\
           "      0 dx dy sub 2 div sub dy edge sub EU 0 dy 2 div sub EU lineto\n"\
           "      0 dx 2 div sub EU                    0 dy edge  sub EU lineto\n"\
           "   closepath\n"\
           "   fill\n"\
           "   grestore\n"\
           "   } def\n"\
           "\n"
           ;(Name, NrPages, (x2 - x1) * 0.072 * ScaleFactor, (y2 - y1) * 0.072 * ScaleFactor)

[PS]

@EPS
Long     = "PostScript (printable)"
Width    =  7.75
Height   = 11.00

Header2  = "%% the real drawing size:\n"\
           "\n"\
           "/MinDrawX %6d EU def\n"\
           "/MinDrawY %6d EU def\n"\
           "/MaxDrawX %6d EU def\n"\
           "/MaxDrawY %6d EU def\n"\
           "\n"\
           "%% the usable page size:\n"\
           "\n"\
           "/LeftMargin 0.25 inch def  %% change these if drawing gets clipped!\n"\
           "/BotMargin  0.25 inch def\n"\
           "/PageWidth  %7.4f inch def\n"\
           "/PageHeight %7.4f inch def\n"\
           "\n"\
           "%% are we going to rotate?:\n"\
           "\n"\
           "/RotateDrawing %d 0 ne def\n"\
           "\n"
           ;(x1, y1, x2, y2, Width, Height, DoRotate)

Header3  = "%% Media size functions:\n"\
           "\n"\
           "/AbortMessage {  %% Show a message in a box and stop printing\n"\
           "   /h 100 def\n"\
           "   /Courier findfont 12 scalefont setfont\n"\
           "   mediawidth pagemargin sub h 1 setpage\n"\
           "   newpath\n"\
           "   0 0 moveto\n"\
           "   0 h rlineto\n"\
           "   mediawidth pagemargin sub 0 rlineto\n"\
           "   0 h neg rlineto\n"\
           "   closepath\n"\
           "   5 setlinewidth\n"\
           "   stroke\n"\
           "   newpath 50 60 moveto (ERROR: Jobsize exceeds physical printing area!) show\n"\
           "   newpath 50 40 moveto (       Job has been aborted!) show\n"\
           "   showpage\n"\
           "   stop\n"\
           "   } def\n"\
           "\n"\
           "/SelectPage {  %% Select the page identified by Row and Column\n"\
           "   /Column exch def\n"\
           "   /Row    exch def\n"\
           "\n"\
           "   %% the actually exposed area (if the machine knows these parameters!):\n"\
           "\n"\
           "   /DrawX MaxDrawX MinDrawX sub def\n"\
           "   /DrawY MaxDrawY MinDrawY sub def\n"\
           "   statusdict /setpage known\n"\
           "   statusdict /mediawidth known and\n"\
           "   statusdict /medialength known and\n"\
           "   statusdict /pagemargin known and {\n"\
           "      %% this is for machines that can tell the media size:\n"\
           "      statusdict begin\n"\
           "         /MediaW mediawidth pagemargin sub def\n"\
           "         DrawX DrawY ge {\n"\
           "            DrawX MediaW le DrawY medialength le and {\n"\
           "               MediaW DrawY 1 setpage\n"\
           "               MediaW DrawX sub 2 div 0 translate\n"\
           "               }{\n"\
           "            DrawY MediaW le DrawX medialength le and {\n"\
           "               MediaW DrawX 0 setpage\n"\
           "               0 MediaW DrawY sub 2 div translate\n"\
           "               }{\n"\
           "               AbortMessage\n"\
           "               } ifelse\n"\
           "               } ifelse\n"\
           "            }{\n"\
           "            DrawY MediaW le DrawX medialength le and {\n"\
           "               MediaW DrawX 0 setpage\n"\
           "               0 MediaW DrawY sub 2 div translate\n"\
           "               }{\n"\
           "            DrawX MediaW le DrawY medialength le and {\n"\
           "               MediaW DrawY 1 setpage\n"\
           "               MediaW DrawX sub 2 div 0 translate\n"\
           "               }{\n"\
           "               AbortMessage\n"\
           "               } ifelse\n"\
           "               } ifelse\n"\
           "            } ifelse\n"\
           "         end\n"\
           "      }{\n"\
           "      %% this is for machines that can NOT tell the media size:\n"\
           "      %% (Ghostscript doesn't like this!)\n"\
           "      /Product product length string def\n"\
           "      /i 0 def\n"\
           "      product { dup 97 lt { 32 add } if Product exch i exch put /i i 1 add def } forall \n"\
           "      Product (ghostscript) search dup /IsGhostscript exch def\n"\
           "      { pop pop } if\n"\
           "      pop\n"\
           "      IsGhostscript not {\n"\
           "         statusdict /setpage known {\n"\
           "            statusdict begin\n"\
           "               RotateDrawing {\n"\
           "                  LeftMargin PageHeight add BotMargin DrawY add\n"\
           "                  }{\n"\
           "                  BotMargin DrawY add LeftMargin DrawX add \n"\
           "                  } ifelse\n"\
           "               0 setpage\n"\
           "               end\n"\
           "            } if\n"\
           "         } if\n"\
           "      %% set clipping boundary:\n"\
           "      newpath\n"\
           "      LeftMargin BotMargin moveto\n"\
           "      0 PageHeight rlineto\n"\
           "      PageWidth  0 rlineto\n"\
           "      0 PageHeight neg rlineto\n"\
           "      closepath\n"\
           "      clip\n"\
           "      %% set the origin:\n"\
           "      LeftMargin BotMargin translate\n"\
           "      RotateDrawing {\n"\
           "         0 PageHeight translate\n"\
           "         -90 rotate\n"\
           "         PageHeight Column mul neg PageWidth Row mul neg translate\n"\
           "         }{\n"\
           "         PageWidth Column mul neg PageHeight Row mul neg translate\n"\
           "         } ifelse\n"\
           "      } ifelse\n"\
           "   %% move the lower left corner of the drawing to the origin:\n"\
           "   MinDrawX neg MinDrawY neg translate\n"\
           "   \n"\
           "   %% Linestyle:\n"\
           "   \n"\
           "   1 setlinecap\n"\
           "   1 setlinejoin\n"\
           "   \n"\
           "   } def\n"\
           "\n"\
           "%% TheDrawing\n"

StartPage= "\ngsave %d %d SelectPage\n" ;(Row, Column)
EndPage  = "showpage grestore\n"

[PS_INVERTED]

@PS
Long     = "PostScript (printable, inverted)"

Header3  = "%% Media size functions:\n"\
           "\n"\
           "/AbortMessage {  %% Show a message in a box and stop printing\n"\
           "   /h 100 def\n"\
           "   /Courier findfont 12 scalefont setfont\n"\
           "   mediawidth pagemargin sub h 1 setpage\n"\
           "   newpath\n"\
           "   0 0 moveto\n"\
           "   0 h rlineto\n"\
           "   mediawidth pagemargin sub 0 rlineto\n"\
           "   0 h neg rlineto\n"\
           "   closepath\n"\
           "   5 setlinewidth\n"\
           "   stroke\n"\
           "   newpath 50 60 moveto (ERROR: Jobsize exceeds physical printing area!) show\n"\
           "   newpath 50 40 moveto (       Job has been aborted!) show\n"\
           "   showpage\n"\
           "   stop\n"\
           "   } def\n"\
           "\n"\
           "/SelectPage {  %% Select the page identified by Row and Column\n"\
           "   /Column exch def\n"\
           "   /Row    exch def\n"\
           "\n"\
           "   %% the actually exposed area (if the machine knows these parameters!):\n"\
           "\n"\
           "   /DrawX MaxDrawX MinDrawX sub def\n"\
           "   /DrawY MaxDrawY MinDrawY sub def\n"\
           "   statusdict /setpage known\n"\
           "   statusdict /mediawidth known and\n"\
           "   statusdict /medialength known and\n"\
           "   statusdict /pagemargin known and {\n"\
           "      %% this is for machines that can tell the media size:\n"\
           "      statusdict begin\n"\
           "         /MediaW mediawidth pagemargin sub def\n"\
           "         DrawX DrawY ge {\n"\
           "            DrawX MediaW le DrawY medialength le and {\n"\
           "               MediaW DrawY 1 setpage\n"\
           "               MediaW DrawX sub 2 div 0 translate\n"\
           "               }{\n"\
           "            DrawY MediaW le DrawX medialength le and {\n"\
           "               MediaW DrawX 0 setpage\n"\
           "               0 MediaW DrawY sub 2 div translate\n"\
           "               }{\n"\
           "               AbortMessage\n"\
           "               } ifelse\n"\
           "               } ifelse\n"\
           "            }{\n"\
           "            DrawY MediaW le DrawX medialength le and {\n"\
           "               MediaW DrawX 0 setpage\n"\

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -