Elektrik mühendisliği amaçlı basit blok şemaları çizmek için bazı TikZ kodlarını yazdım. Kodum sadece işe yarayacak şekilde yazılmıştır, ancak bence bu çirkin ve kullanımı çok kolay değildir. Ne yapmak istiyorsunuz aşağıdakiTikZ: Kendi blok şema kütüphanesi
simple example for a block diagram
gibi blok diyagramlar çizmek ve bunun için benim TikZ blokları içeren bir "kitaplık" tür istiyorum olduğunu. Bu benim şimdiki TikZ gösterilen şekil üretmek için kod şudur: Birlikte Yalnızca bir BPF bloğunu kullanmak benzer bir şey "bpf" yazmak ya olsaydı büyük bir gelişme olacağını
\begin{tikzpicture}[%
,auto
,node distance=10mm
,>=latex'
,block/.style={text depth=.25ex,draw, fill=anti-flashwhite, rectangle, minimum height=10mm, minimum width=10mm}
,gluon/.style={decorate, draw=black, decoration={complete sines,amplitude=1mm, segment length=6mm}}
,osci/.style={decorate, draw=black, decoration={complete sines,amplitude=2mm, segment length=6mm}}
]
% bpf
\node at (0,0) [block,label={BPF}] (bpf) [anchor=center] {};
\draw[gluon] ([xshift=-4mm, yshift=2mm]bpf.center) -- +(0.8,0) {};
\draw[gluon] ([xshift=-4mm]bpf.center) -- +(0.8,0) {};
\draw[gluon] ([xshift=-4mm, yshift=-2mm]bpf.center) -- +(0.8,0) {};
\draw[transform canvas={yshift=2mm}] ([xshift=1mm,yshift=1mm]bpf.center) -- ([xshift=-1mm,yshift=-1mm]bpf.center) {};
\draw[transform canvas={yshift=-2mm}] ([xshift=1mm,yshift=1mm]bpf.center) -- ([xshift=-1mm,yshift=-1mm]bpf.center) {};
% hpf
\node at (2,0) [block,label={HPF}] (hpf) {};
\draw[gluon] ([xshift=-4mm, yshift=1mm]hpf.center) -- +(0.8,0) {};
\draw[gluon] ([xshift=-4mm, yshift=-1mm]hpf.center) -- +(0.8,0) {};
\draw[transform canvas={yshift=-1mm}] ([xshift=1mm,yshift=1mm]hpf.center) -- ([xshift=-1mm,yshift=-1mm]hpf.center) {};
% lpf
\node at (5,0) [block,label={LPF}] (lpf) {};
\draw[gluon] ([xshift=-4mm, yshift=1mm]lpf.center) -- +(0.8,0) {};
\draw[gluon] ([xshift=-4mm, yshift=-1mm]lpf.center) -- +(0.8,0) {};
\draw[transform canvas={yshift=1mm}] ([xshift=1mm,yshift=1mm]lpf.center) -- ([xshift=-1mm,yshift=-1mm]lpf.center) {};
% mixer
\node[draw,circle,radius=1mm, label={Mixer}] at (3.5,0) (x) {};
\begin{scope}
\clip (3.5,0) circle [radius=2mm];
\draw ([xshift=-5mm,yshift=-5mm]x.center) -- ([xshift=5mm,yshift=5mm]x.center) {};
\draw ([xshift=-5mm,yshift=5mm]x.center) -- ([xshift=5mm,yshift=-5mm]x.center) {};
\end{scope}
% oscillator
\node[draw,circle,inner sep=2.5mm] at (3.5,-2) (osc) {};
\draw[osci] ([xshift=-2mm]osc.center) -- +(0.4,0) {};
% integrator
\node at (7,0) [block,label={Int}] (int) {$\int$};
% arrow stuff
\draw[->] (bpf.east) -- (hpf.west);
\draw[->] (hpf.east) -- (x.west);
\draw[->] (x.east) -- (lpf.west);
\draw[->] (osc.north) -- (x.south);
\draw[->] (lpf.east) -- (int.west);
\end{tikzpicture}
değil, tüm bu 6 satır hangi Bir BPF bloğu yapmak. Bunu nasıl başarabilirim?