|
| 1 | +\documentclass{standalone} |
| 2 | +\usepackage{preset} |
| 3 | +\begin{document} |
| 4 | +\begin{tikzpicture}[background rectangle/.style={fill=white},show background rectangle,x=15mm,y=15mm] |
| 5 | + \NewDocumentCommand\unit{mm}{\begin{scope}[shift={#1}] |
| 6 | + \draw(0,0)rectangle(1,1); |
| 7 | + \draw(0,.25)--+(1,0); |
| 8 | + \draw(0,.5)--+(1,0); |
| 9 | + \node at(.75,.75){#2}; |
| 10 | + \begin{scope}[shift={(.18,.6)},scale=.3] |
| 11 | + \draw(0,0)rectangle(1,1); |
| 12 | + \draw(0,.25)--+(1,0); |
| 13 | + \draw(0,.5)--+(1,0); |
| 14 | + \end{scope} |
| 15 | + \end{scope}} |
| 16 | + \unit{(0,0)}{A}; |
| 17 | + \unit{(0,-2)}{B}; |
| 18 | + \unit{(-1,-4)}{D}; |
| 19 | + \unit{(1,-4)}{E}; |
| 20 | + \unit{(2.5,0)}{F}; |
| 21 | + \unit{(2.5,-2)}{C}; |
| 22 | + \draw[-{Triangle[open,length=4mm,width=4mm]}](.5,-1)--+(0,1); |
| 23 | + \draw[{Straight Barb[length=4mm,width=4mm]}-{Diamond[length=6mm,width=4mm]}](-.2,-3)node[above left]{*}--+(.4,1)node[below right]{1}; |
| 24 | + \draw[{Diamond[open,length=6mm,width=4mm]}-{Straight Barb[length=4mm,width=4mm]}](1.2,-3)node[above right]{1}--+(-.4,1)node[below left]{*}; |
| 25 | + \draw(1,-1.5)node[above right]{1}--(2.5,-1.5)node[above left]{*}; |
| 26 | + \draw[dashed,-{Straight Barb[length=4mm,width=4mm]}](3,-1)--+(0,1); |
| 27 | + \draw[dashed,-{Triangle[open,length=4mm,width=4mm]}](3.5,.5)--+(1,0); |
| 28 | + \begin{scope}[shift={(4.5,-.15)}] |
| 29 | + \draw(0,0)rectangle(1,1.3); |
| 30 | + \draw(0,.25)--+(1,0); |
| 31 | + \draw(0,.5)--+(1,0); |
| 32 | + \node at(.75,.75){G}; |
| 33 | + \begin{scope}[shift={(.18,.6)},scale=.3] |
| 34 | + \draw(0,0)rectangle(1,1); |
| 35 | + \draw(0,.25)--+(1,0); |
| 36 | + \draw(0,.5)--+(1,0); |
| 37 | + \draw(.5,.5)--+(0,.5); |
| 38 | + \draw(.3,.65)--++(-.1,.1)--++(.1,.1); |
| 39 | + \draw(.7,.65)--++(.1,.1)--++(-.1,.1); |
| 40 | + \end{scope} |
| 41 | + \node at(.5,1.1){<<接口>>}; |
| 42 | + \end{scope} |
| 43 | +\end{tikzpicture} |
| 44 | +\end{document} |
0 commit comments