summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/circuitikz
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-02-24 14:23:07 +0000
committerKarl Berry <karl@freefriends.org>2020-02-24 14:23:07 +0000
commit6f61bcc81c9a4f6081084ac212a497e35cd50692 (patch)
treee5cb6dc44cb2bfa39dc5602837225906e29a1f5e /Master/texmf-dist/doc/latex/circuitikz
parentef9ef1814cdd4608fd5602d2f3b9095fd2ff7e95 (diff)
circuitikz (23feb20)
git-svn-id: svn://tug.org/texlive/trunk@53883 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/circuitikz')
-rw-r--r--Master/texmf-dist/doc/latex/circuitikz/changelog.tex22
-rw-r--r--Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdfbin897426 -> 908573 bytes
-rw-r--r--Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex64
3 files changed, 82 insertions, 4 deletions
diff --git a/Master/texmf-dist/doc/latex/circuitikz/changelog.tex b/Master/texmf-dist/doc/latex/circuitikz/changelog.tex
index 8c56ba379dd..af37be95ead 100644
--- a/Master/texmf-dist/doc/latex/circuitikz/changelog.tex
+++ b/Master/texmf-dist/doc/latex/circuitikz/changelog.tex
@@ -6,6 +6,28 @@ full list of changes.
\begin{itemize}
\tightlist
\item
+ Version 1.0.1 (2020-02-22)
+\end{itemize}
+
+Minor fixes and addition to 1.0, in time to catch the freeze for TL2020.
+
+\begin{itemize}
+\item
+ add v1.0 version snapshots
+\item
+ added crossed generic impedance (suggested by Radványi Patrik Tamás)
+\item
+ added open barrier bipole (suggested by Radványi Patrik Tamás)
+\item
+ added two flags to flip the direction of light's arrows on LED and
+ photodiode (suggested by karlkappe on GitHub)
+\item
+ added a special key to help with precision loss in case of fractional
+ scaling (thanks to AndreaDiPietro92 on GitHub for noticing and
+ reporting, and to Schrödinger's cat for finding a fix)
+\item
+ fixed a nasty bug for the flat file generation for ConTeXt
+\item
Version 1.0 (2020-02-04)
\end{itemize}
diff --git a/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf b/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf
index 88c21dac4ac..ded6de75ca5 100644
--- a/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf
+++ b/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex b/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex
index fc156f1fc2b..1475ffc16f0 100644
--- a/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex
+++ b/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex
@@ -248,6 +248,33 @@ Correcting this will need a big rewrite of the path routines, and although the a
This same issue create a lot of problem of compatibility between \Circuitikz{} and the new \texttt{pic} Ti\emph{k}Z feature, so basically don't put components into \texttt{pic}s.
+\subsection{Scale factors inaccuracies}\label{sec:usefpu}
+
+Sometimes, when using fractional scaling factors and big values for the coordinates, the basic layer inaccuracies from \TeX{} can bite you, producing results like the following one:
+
+\begin{LTXexample}[varwidth=true]
+\begin{circuitikz}[scale=1.2, transform shape,
+ ]
+ \draw (60,1) to [battery2, v_=$V_{cc}$, name=B] ++(0,2);
+ \node[draw,red,circle,inner sep=4pt] at(B.left) {};
+ \node[draw,red,circle,inner sep=4pt] at(B.right) {};
+\end{circuitikz}
+\end{LTXexample}
+
+A general solution for this problem is difficult to find; probably the best approach is to use a \verb|scalebox| command to scale the circuit instead of relying on internal scaling.
+
+Nevertheless, \href{https://tex.stackexchange.com/a/529159/38080}{Schrödinger's cat} found a solution which has been ported to \Circuitikz: you can use the key \texttt{use fpu reciprocal} which will patch a standard low-level math routine with a more precise one.
+
+\begin{LTXexample}[varwidth=true]
+\begin{circuitikz}[scale=1.2, transform shape,
+ use fpu reciprocal,
+ ]
+\draw (60,1) to [battery2, v_=$V_{cc}$] ++(0,2);
+\end{circuitikz}
+\end{LTXexample}
+
+They \texttt{use fpu reciprocal} key seems to have no side effects, but given that it is patching an internal interface of \TikZ{} it can break any time, so it is advisable to use it only if and when needed.
+
\subsection{Incompabilities between version}
Here, we will provide a list of incompabilitys between different version of circuitikz. We will try to hold this list short, but sometimes it is easier to break with old syntax than including a lot of switches and compatibility layers.
@@ -266,14 +293,15 @@ You can check the used version at your local installation using the macro \verb!
If you have older projects that show compatibility problems, you have two options:
\begin{itemize}
\item you can use an older version locally using the git-version and picking the correct commit from the repository (branch gh-pages) or the main GitHub site directly;
- \item if you are using \LaTeX, the distribution has embedded several important old versions: \texttt{0.4}, \texttt{0.6}, \texttt{0.7}, \texttt{0.8.3}, \texttt{0.9.3} and \texttt{0.9.6}. To switch to use them, you simply change your \verb|\usepackage| invocation like
+ \item if you are using \LaTeX, the distribution has embedded several important old versions: \texttt{0.4}, \texttt{0.6}, \texttt{0.7}, \texttt{0.8.3}, \texttt{0.9.3}, \texttt{0.9.6} and \texttt{1.0}.
+ To switch to use them, you simply change your \verb|\usepackage| invocation like
\begin{lstlisting}
- \usepackage[]{circuitik-0.8.3} % or circuitikz-0.4, 0.6...
+ \usepackage[]{circuitikz-0.8.3} % or circuitikz-0.4, 0.6...
\end{lstlisting}
You have to take care of the options that may have changed between versions;
- \item if you are using \ConTeXt, only versions \texttt{0.8.3}, \texttt{0.9.3} and \texttt{0.9.6} are packaged for now; if can use it with
+ \item if you are using \ConTeXt, only versions \texttt{0.8.3}, \texttt{0.9.3}, \texttt{0.9.6} and \texttt{1.0} are packaged for now; if can use it with
\begin{lstlisting}
- \usemodule[circuitik-0.8.3]
+ \usemodule[circuitikz-0.8.3]
\end{lstlisting}
\end{itemize}
@@ -1268,6 +1296,7 @@ If you want that the arrows behave like the legacy symbols (which are shapes), \
\circuitdescbip{short}{Short circuit}{}
\circuitdescbip{open}{Open circuit}{}
\circuitdescbip*{generic}{Generic (symmetric) bipole}{}
+ \circuitdescbip*{xgeneric}{Crossed generic (symmetric) bipole}{}
\circuitdescbip*{tgeneric}{Tunable generic bipole}{}
\circuitdescbip*{ageneric}{Generic asymmetric bipole}{}
\circuitdescbip*{memristor}{Memristor}{Mr}
@@ -1551,6 +1580,30 @@ You can change the scale of the diodes by setting the key \texttt{diodes/scale}
\end{circuitikz}
\end{LTXexample}
+You can change the direction of the LEDs and photodiodes' arrows by using the binary keys \texttt{led arrows from cathode} and \texttt{pd arrows to cathode} (the default are \texttt{led arrows from anode} and \texttt{pd arrows to anode}), as you can see in the following example.
+
+\begin{LTXexample}[varwidth=true]
+ \begin{circuitikz}
+ \ctikzset{led arrows from anode} % default
+ \ctikzset{pd arrows to anode} % default
+ \ctikzset{full diodes}
+ \draw (0,0) to[leD] ++(1.5,0) to[pD] ++(1.5,0);
+ \ctikzset{stroke diodes}
+ \draw (0,-1) to[leD] ++(1.5,0) to[pD] ++(1.5,0);
+ \ctikzset{empty diodes}
+ \draw (0,-2) to[leD] ++(1.5,0) to[pD] ++(1.5,0);
+
+ \ctikzset{led arrows from cathode}
+ \ctikzset{pd arrows to cathode}
+ \ctikzset{full diodes}
+ \draw (0,-4) to[leD] ++(1.5,0) to[pD] ++(1.5,0);
+ \ctikzset{stroke diodes}
+ \draw (0,-5) to[leD] ++(1.5,0) to[pD] ++(1.5,0);
+ \ctikzset{empty diodes}
+ \draw (0,-6) to[leD] ++(1.5,0) to[pD] ++(1.5,0);
+ \end{circuitikz}
+\end{LTXexample}
+
\subsection{Sources and generators}
Notice that source and generators are divided in three classes that can be styled independently: traditional battery symbols (class \texttt{batteries}), independent generators (class \texttt{sources}) and dependent generators (class \texttt{csources}). This is because they are often treated differently, and so you can choose to, for example, fill the dependent sources but not the independent ones.
@@ -1922,8 +1975,11 @@ Here you'll find bipoles that are not easily grouped in the categories above.
\circuitdescbip*{afuse}{Asymmetric fuse}{asymmetric fuse}
\circuitdescbip{squid}{Squid}{}
\circuitdescbip{barrier}{Barrier}{}
+ \circuitdescbip{openbarrier}{Open barrier}{}
\end{groupdesc}
+ You can tune how big is the gap in the \texttt{openbarrier} component by setting the key \texttt{bipoles/openbarrier/gap} (default value \texttt{0.5}; \texttt{0} means no gap and \texttt{1} full gap).
+
\begin{groupdesc}
\circuitdescbip*{european gas filled surge arrester}{European gas filled surge arrester}{}
\circuitdescbip*{american gas filled surge arrester}{American gas filled surge arrester}{}