这就是我所寻找的,但似乎在任何地方都找不到它。
我找到了一种方法来制作盒子,但似乎无法容纳 4 个节点。
这样的万用表没有命令吗?
我们可以用 4 个节点做一个吗?
\documentclass[tikz,border=10pt]{standalone}
\usepackage{circuitikz}
\standaloneenv{circuitikz}
\begin{document}
\begin{circuitikz}[american, cute inductors]
\draw
%%-----V in-----%%
(0,0) node[anchor = east] {C} coordinate (C)
(0,2) node[anchor = east] {B} coordinate (B)
(0,4) node[anchor = east] {A} coordinate (A)
(A) to [short] ++(2,0)
(B) to [short] ++(6,0)
(C) to [short] ++(2,0)
(1.5,0) to[short,*-] ++(0,1.2)
to[short] ++(1,0)
to [short] ++(0,-.2) node (rectangle) [draw, rectangle,anchor=north west] {HI \quad A \quad LO};
;
\end{circuitikz}
\end{document}
我可以制作一个盒子,但我无法按照图中所示在里面写字,也无法按照图纸连接电线。
答案1
这不像内置项目那么方便,但pic
s 相对容易创建,并且可以做得比node
s 更复杂,这可能在这里很有用。(节点可能更可取,但需要您转到较低级别的命令并在 PGF 中指定所有内容。)
代码使用一个name=<name>
密钥来解决pic
s 当前实现中的一个错误。这意味着使用pic
自然(<name>)
语法命名 s 不起作用。(seagull
例如,手册中的示例无法编译。)由于这个问题已经存在一段时间了,因此方便的解决方法是当务之急。
该fit
库用于在构建 6 个内部节点后绘制封闭框。
\documentclass[tikz,border=10pt]{standalone}
\usepackage{circuitikz}
\standaloneenv{circuitikz}
\usetikzlibrary{fit}
\begin{document}
\tikzset{
pics/multimeter/.style={
code={
\tikzset{
multi meter/.cd,
#1,
}
\begin{scope}[]
\coordinate (\multimetername-o) at (0,0);
\foreach \i/\j/\k/\l in {A/o/south/A,V/o/north/V,TL/mA.west/east/HI,BL/mV.west/east/HI,TR/mA.east/west/LO,BR/mV.east/west/LO} \node (\multimetername-m\i) [multi meter/label, anchor=\k] at (\multimetername-\j) {\l};
\foreach \i in {TL.west,TR.east,BL.south,BR.south} \node [circle, fill, inner sep=1.25pt] at (\multimetername-m\i) {};
\node [draw, fit=(\multimetername-mTR) (\multimetername-mBL)] {};
\end{scope}
}
},
multi meter/.search also={/tikz,/circuitikz},
multi meter/.cd,
label/.style={font=\sffamily, align=center, transform shape, pic actions},
name/.store in=\multimetername,
name=multimeter,
}
\begin{circuitikz}[american, cute inductors]
\draw
(0,0) node[anchor = east] {C} coordinate (C)
(0,2) node[anchor = east] {B} coordinate (B)
(0,4) node[anchor = east] {A} coordinate (A)
pic [rotate=-90] at (3,0) {multimeter={name=M}}
(A) to [short] ++(2,0)
(B) to [short] ++(6,0)
(C) to [short] ++(2,0)
(1.5,0) to[short,*-] ++(0,1.2)
to[short] ++(1,0)
-| (M-mTL.west)
(M-mBR.south) to[short] ++(-1.25,0) coordinate (c) to [short,-*] (B -| c)
;
\end{circuitikz}
\end{document}