TeX erweitert
This commit is contained in:
99
TeX/Xor.tex
99
TeX/Xor.tex
@@ -54,6 +54,30 @@
|
||||
major step/.initial=1,
|
||||
major line width/.initial=1pt,
|
||||
}
|
||||
|
||||
\tikzset{
|
||||
declare function={% in case of CVS which switches the arguments of atan2
|
||||
atan3(\a,\b)=ifthenelse(atan2(0,1)==90, atan2(\a,\b), atan2(\b,\a));
|
||||
},
|
||||
kinky cross radius/.initial=+.125cm,
|
||||
@kinky cross/.initial=+,
|
||||
kinky crosses/.is choice,
|
||||
kinky crosses/left/.style={@kinky cross=-},
|
||||
kinky crosses/right/.style={@kinky cross=+},
|
||||
kinky cross/.style args={(#1)--(#2)}{
|
||||
to path={
|
||||
let \p{@kc@}=($(\tikztotarget)-(\tikztostart)$),
|
||||
\n{@kc@}={atan3(\p{@kc@})+180} in
|
||||
-- ($(intersection of \tikztostart--{\tikztotarget} and #1--#2)!%
|
||||
\pgfkeysvalueof{/tikz/kinky cross radius}!(\tikztostart)$)
|
||||
arc [ radius =\pgfkeysvalueof{/tikz/kinky cross radius},
|
||||
start angle=\n{@kc@},
|
||||
delta angle=\pgfkeysvalueof{/tikz/@kinky cross}180 ]
|
||||
-- (\tikztotarget)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
\makeatother
|
||||
%!tikz preamble end
|
||||
|
||||
@@ -64,33 +88,60 @@
|
||||
|
||||
\tikzstyle{branch}=[fill,shape=circle,minimum size=3pt,inner sep=0pt]
|
||||
|
||||
%\draw (0,0) to[grid with coordinates] (10,5);
|
||||
\draw (0,0) to[grid with coordinates] (10,5);
|
||||
|
||||
% Koordinaten für Kreuzpunkte
|
||||
\coordinate (A) at (0.95,2.75);
|
||||
\fill (A) circle (1pt);
|
||||
\fill (A) circle (1pt);% node{A};
|
||||
\coordinate (B) at (0.95,0.5);
|
||||
\fill (B) circle (1pt);
|
||||
|
||||
\coordinate (C) at (0.55,2.75);
|
||||
\fill (C) circle (1pt);
|
||||
%temp
|
||||
\fill (C) circle (1pt) node{\tiny{C}};
|
||||
|
||||
\coordinate (D) at (2.5,1.4);
|
||||
%temp
|
||||
%\fill (D) circle (1pt) node{\tiny{D}};
|
||||
|
||||
|
||||
\coordinate (E) at (0.75,0.5);
|
||||
\fill (E) circle (1pt);
|
||||
\fill (E) circle (1pt) node[above]{\tiny{E}};
|
||||
|
||||
\coordinate (F) at (2.5,1.8);
|
||||
|
||||
|
||||
%temp
|
||||
\fill (F) circle (1pt) node{\tiny{F}};
|
||||
|
||||
\coordinate (G) at (4.2,2.58);
|
||||
|
||||
%temp
|
||||
%\fill (G) circle (1pt) node{G};
|
||||
|
||||
|
||||
\coordinate (H) at (4.2,0.666);
|
||||
|
||||
%temp
|
||||
%\fill (H) circle (1pt) node{H};
|
||||
|
||||
|
||||
\coordinate (I) at (6,1.6);
|
||||
|
||||
%temp
|
||||
\fill (I) circle (1pt) node{I};
|
||||
|
||||
\coordinate (J) at (0.75,1.8);
|
||||
|
||||
\fill (J) circle (1pt) node[above]{\tiny{J}};
|
||||
% Eingangsvariablen
|
||||
\node (x2) at (0.2,0.5) {b};
|
||||
\node (x1) at (0.2,2.75) {a};
|
||||
|
||||
% Ausgangsvariable
|
||||
\node (y) at (5,0.5) {out};
|
||||
\node (y) at (6.35, 1.62) {out};
|
||||
|
||||
% Gatter
|
||||
\node[nand gate] at (1.5,0.5) (n1) {};
|
||||
\node[nand gate] at (1.5,0.5) (n1) {\tiny{N1}};
|
||||
\node[nand gate] at (1.5,2.75) (n2) {};
|
||||
\node[nand gate] at (3.45,2.58) (n4) {};
|
||||
\node[nand gate] at (3.45,0.666) (n3) {};
|
||||
@@ -108,15 +159,31 @@
|
||||
\draw(n2.output) -- (n4.input 1);
|
||||
\draw(C) |- (D);
|
||||
\draw(D) |- (n3.input 1);
|
||||
\draw(E) |- (F);
|
||||
\draw(F) |- (n4.input 2);
|
||||
\draw(n4.output) -- (n5.input 1);
|
||||
% \draw(n1.output) -- (A);
|
||||
% \draw(A) |- (n2.input 2);
|
||||
% \draw(A) |- (n2.input 1);
|
||||
% \draw(n2.output) -- (y);
|
||||
% \draw(n1.output) to [short,l=\footnotesize{nandout}, -] (A);
|
||||
|
||||
%\draw(E) |- (F);
|
||||
%\draw(F) |- (n4.input 2);
|
||||
\draw(n4.output) -- (G);
|
||||
\draw(G) |- (n5.input 1);
|
||||
\draw(n3.output) -- (H);
|
||||
\draw(H) |- (n5.input 2);
|
||||
\draw(n5.output) -- (I);
|
||||
|
||||
|
||||
%\node at (ORa.in 2)
|
||||
%[
|
||||
% below,
|
||||
% jump crossing,
|
||||
% rotate=-90,
|
||||
% scale=1.3
|
||||
%](X){\tiny{X}};
|
||||
|
||||
|
||||
% \draw(n1.output) to [short,l=\footnotesize{nandout}, -] (A);
|
||||
% \draw(1,-1) to[short] (1,1) (0,0) to[crossing] (2,0);
|
||||
|
||||
% \draw(C) |- (D) (E) to[crossing] (J);
|
||||
|
||||
% \draw (E) to [kinky cross=(C)--(D), kinky crosses=right](J); % /
|
||||
|
||||
\end{tikzpicture}
|
||||
%!tikz source end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user