Hallo! Ich habe hier mal einen Generator entworfen: Open in writeLaTeX
\documentclass[margin=5mm,tikz]{standalone} \usepackage[ngerman]{babel} \usetikzlibrary{circuits.ee.IEC} \usepackage{amsmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %Generator \tikzset{circuit declare symbol = generator} \tikzset{set generator graphic ={draw, shape=rectangle, minimum size=5mm,info=center:G}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document} \begin{tikzpicture}[circuit ee IEC, font=\sffamily\footnotesize] \draw (0,0) to [generator={info'={generator}}](2,0); \draw (3,0) to [generator](3,2); \end{tikzpicture} \end{document} Was ich egtl. gerne hätte wäre statt dem G einen Schrägstrich über das Rechteck, bei dem oben links ein Plus und unten rechts Minus steht. Gibt es eine Möglichkeit, das möglichst einfach (und konsistent) umzusetzen? |
Ich habe das jetzt mal so gelöst: Open in writeLaTeX
\documentclass[margin=5mm]{standalone} \usepackage[ngerman]{babel} \usepackage{tikz} \usetikzlibrary{circuits.ee.IEC} \usepackage{amsmath, amssymb} %Schaltzeichen converter %%%%%%%%%%%%%%%%%%%% \def\From{foo} \def\To{bar} \newif\ifchange \tikzoption{change}[true]{\changetrue} \tikzset{circuit declare symbol = converter} \tikzset{set converter graphic = converter IEC graphic} \tikzset{converter IEC graphic/.style= {transform shape, circuit symbol lines, circuit symbol size = width 2.5 height 2.5, draw=none, rounded corners=2.25pt, shape=generic circle IEC, /pgf/generic circle IEC/before background= { %QUERSTRICH \pgfpathmoveto{\pgfpoint{-0.8pt}{-0.8pt}} \pgfpathlineto{\pgfpoint{0.8pt}{0.8pt}} %Rechteck \pgfpathrectangle{\pgfpoint{-1pt}{-1pt}}{\pgfpoint{2.0pt}{2.0pt}} \pgfusepath{stroke} \pgfusepathqstroke %? % BESCHRIFTUNG \pgfgettransform\savedtransform \pgftransformshift{\pgfpoint{0.45pt}{-0.45pt}} \pgftransformresetnontranslations \pgftransformscale{0.075\tikzcircuitssizeunit} \pgftext{\bf{\ifchange{\sffamily{\From}}\else{\sffamily{\To}}\fi}} \pgfsettransform\savedtransform \pgftransformshift{\pgfpoint{-0.45pt}{0.45pt}} \pgftransformresetnontranslations \pgftransformscale{0.075\tikzcircuitssizeunit} \pgftext{\bf{\ifchange{\sffamily{\To}}\else{\sffamily{\From}}\fi}} \pgfsettransform\savedtransform }}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %=========== \begin{document} %=========== \begin{tikzpicture}[circuit ee IEC, huge circuit symbols, font=\sffamily\footnotesize] %AC/DC-Wandler \edef\From{AC} \edef\To{DC} \draw (0,0) to [converter={info'={Gleichrichter}, info={converter}}] (2,0); \draw (0,2) to [converter={info'={Wechselrichter}, info={converter, change}}, change] (2,2); \edef\From{A} \edef\To{D} \draw (3,0) to [converter={info'={AD-Wandler}, info={}}] (5,0); \draw (3,2) to [converter={info'={}, info={change}}, change] (5,2); \edef\From{$\triangle$} \edef\To{$\alpha \beta_x$} \draw (6,0) to [converter={info'={}, info={}}] (8,0); \draw (6,2) to [converter={info'={}, info={change}}, change] (8,2); \end{tikzpicture} %=========== \end{document} %=========== Also als Anmerkung: 1. Es geht bei meinem Problem hier egtl. nur dem Namen nach um "Schaltzeichen". Ich möchte lediglich die Texte, zur Zeit "AC" und "DC" variabel haben, also im tikzpicture mit "converter={AC}{DC}" selbst setzen können. Der momentane Text ("AC" und "DC") steckt halt in einer if-Methode drin (was mit dem Schlüsselwort 'change' den Wechsel AC <---> DC erlaubt), zum anderen sind ein paar pgf-Figuren eingezeichnet, das macht es vermutlich müßig, sich da durchzuwühlen.
(10 Apr '14, 03:11)
cis
2. Aber vom prinzipiellen Problem her, ist es für die Profis hier sicher banal - nur für mich leider nicht :( (das, was ihr oben seht habe ich mir im Grunde zusammengesucht, nur das Rechteck und den Querstrich selber gezeichnet).
(10 Apr '14, 03:11)
cis
|