summaryrefslogtreecommitdiff
path: root/graphics/pgf/contrib/tikzcodeblocks/examples
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /graphics/pgf/contrib/tikzcodeblocks/examples
Initial commit
Diffstat (limited to 'graphics/pgf/contrib/tikzcodeblocks/examples')
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-einruecken.tikz8
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-english.tikz10
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-hello-world.tikz7
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-openroberta-umgebung.tikz13
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-openroberta-zacken.tikz7
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-start-roberta.tikz24
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-start.tikz49
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-verschachtelt-zacken.tikz8
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/bsp-verzweigung.tikz13
-rw-r--r--graphics/pgf/contrib/tikzcodeblocks/examples/smarthome.tikz101
10 files changed, 240 insertions, 0 deletions
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-einruecken.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-einruecken.tikz
new file mode 100644
index 0000000000..0bfb2f5fbd
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-einruecken.tikz
@@ -0,0 +1,8 @@
+\begin{tikzpicture}[codeblocks]
+\einruecken{
+ \node[grundlage,pinlow](grund){dauerhaft};
+}
+\node[logik,unter={grund}{1}{0}](wenn1){wenn \tikz\node[platzhalter,boden,keinezacken]{\dropdown{modus}}; \dropdown{=} \intbox{1} };
+
+%\draw[->] (grund.south west) |- (wenn1.west);
+\end{tikzpicture} \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-english.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-english.tikz
new file mode 100644
index 0000000000..c6222274f8
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-english.tikz
@@ -0,0 +1,10 @@
+\begin{otherlanguage}{english}
+\begin{tikzpicture}[codeblocks]
+\moveindent{
+ \node[start,pinlow](one){start};
+ }
+ \ifthenelseblocks[under={one}{1}{0}]{A=B}{\node{A++};}{\node{B-{}-};}{two}
+ \loopblocks[under={two}{0}{0}]{for}{A!=B}{\node{A-{}-};}{three}
+ \node[under={three}{0}{0},aktion,pinhigh]{\intbox{3}+\intbox[puzzlepiece]{5}};
+\end{tikzpicture}
+\end{otherlanguage} \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-hello-world.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-hello-world.tikz
new file mode 100644
index 0000000000..894cd029f7
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-hello-world.tikz
@@ -0,0 +1,7 @@
+\documentclass{standalone}
+\usepackage{tikzcodeblocks}
+\begin{document}
+ \begin{tikzpicture}[codeblocks]
+ \node[mathe]{Hello World;};
+ \end{tikzpicture}
+\end{document} \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-openroberta-umgebung.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-openroberta-umgebung.tikz
new file mode 100644
index 0000000000..a2f4ea13e1
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-openroberta-umgebung.tikz
@@ -0,0 +1,13 @@
+\begin{tikzpicture}[codeblocks,openroberta]
+\wenndann{\tikz\node[mathe,keinezacken]{A==B};}{
+ \node[aktion] (two) {mache das };
+ \node[mathe, unter={two}{0}{0}] (three) {und das };}
+{one}
+\node[mathe,unter={one}{0}{0}] (four) {später das }; % TODO: Ungenau. Warum nicht -1?
+\node[kontrolle,unter={four}{0}{0}] (five) {und danach das };
+
+\begin{pgfonlayer}{background}
+\node[logik, fit=(one) (two) (three)] {};
+\end{pgfonlayer}
+
+\end{tikzpicture} \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-openroberta-zacken.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-openroberta-zacken.tikz
new file mode 100644
index 0000000000..9921c5b576
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-openroberta-zacken.tikz
@@ -0,0 +1,7 @@
+\begin{tikzpicture}[codeblocks]
+\wenndann
+ {\tikz\node[mathe,keinezacken]{\intbox{2} \dropdown{<} \intbox{5}};}
+ {\node[bild]{zeige Bild \\\bild[0.4]{\fullled}};}
+ {one}
+\node[aktion,draw,unter={one}{0}{0}] (two) {spreche \stringbox{Hallo}};
+\end{tikzpicture} \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-start-roberta.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-start-roberta.tikz
new file mode 100644
index 0000000000..cd90a0c2f3
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-start-roberta.tikz
@@ -0,0 +1,24 @@
+\begin{tikzpicture}[codeblocks,openroberta,scale=.90]
+
+\node[start,pinlow](start){start};
+\schleife[unter={start}{0}{0}]{wiederhole}{\intbox{4} mal}{\node[aktion]{setzte LED-Farbe auf \dropdown{Violett}};}{schl1}
+\wenndann[unter={schl1}{0}{0}]{\dropdown{wahr}}{\node[bild]{erstelle Bild: \bild[0.3]{\emptyled}};}{verz1}
+\node[variablen,unter={verz1}{0}{0}](plz1){ändere \dropdown{Platzhalter} auf \tikz\node[mathe,boden,keinezacken,puzzleteil]{\intbox{15}\dropdown{$\div$}\intbox{3}};};
+\node[aktion,unter={plz1}{0}{0}](bild1){Zeige LEDs:\\
+ \bild{
+ \X \X \X \X \X \\
+ \0 \X \X \X \0 \\
+ \0 \0 \X \0 \0 \\
+ \0 \X \X \X \0 \\
+ \X \X \X \X \X \\
+ }
+};
+
+\wenndannsonst[unter={bild1}{0}{0}]
+{\intbox{5}\dropdown{<}\intbox{5}}
+{\node[sensor]{setze \intbox{5}V an Ausgang \stringbox{powerOut}};}
+{\node[aktion,draw,](akt1){spiele Note \dropdown{C} für \dropdown{1/4}\,Takt};
+ \node[aktion,draw,pinhigh,unter={akt1}{0}{0}](akt2){spiele Note \dropdown{D} für \dropdown{1/4}\,Takt};}
+{wds1}
+
+\end{tikzpicture}
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-start.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-start.tikz
new file mode 100644
index 0000000000..b3fe6ae050
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-start.tikz
@@ -0,0 +1,49 @@
+\begin{tikzpicture}[codeblocks,scale=.90]
+\node[grundlage] (start) {dauerhaft};
+ \node[schleife,unter={start}{1}{3}] (schleife1) {\intbox{4} mal wiederholen mache};
+ \node[grundlage,unter={schleife1}{1}{0.5}]
+(musik1) {setze LED-Farbe auf \dropdown{Violett}};
+ \node[musik, unter={musik1}{0}{1}]
+(musik2) {Spiele Note \dropdown{C} für \dropdown{1/16} Takt};
+ \node[logik, unter={musik2}{-1}{4.5}]
+(logik1) {wenn \boolbox{\dropdown{wahr}}};
+ \node[bild, unter={logik1}{1}{1}] (bild) {
+ erstelle Bild:\\
+ \bild{\emptyled}
+ };
+
+ \node[platzhalter, unter={bild}{-1}{3}] (platz1) {ändere \dropdown{Platzhalter} auf
+ \tikz[boden]\node[mathe]{\intbox{15}\dropdown{$\div$}\intbox{3}};
+ };
+ \node[grundlage,umgebung, unter={platz1}{0}{1}] (bildmalen){
+ Zeige LEDs:
+ \bild[0.3]{
+ \X \X \X \X \X \\
+ \0 \X \X \X \0 \\
+ \0 \0 \X \0 \0 \\
+ \0 \X \X \X \0 \\
+ \X \X \X \X \X \\
+ }
+ };
+\node[logik, unter={bildmalen}{0}{3}](log3wenndann) {Wenn \dropdown{5} \dropdown{<} \intbox{5} dann mache};
+ \node[motor, unter={log3wenndann}{1}{1}] (motorlogik1) {setze \intbox{5}V an Ausgang \stringbox{powerOut}};
+\node[logik, unter={motorlogik1}{-1}{0}] (log3sonst) {ansonsten mache};
+ \node[musik, unter={log3sonst}{1}{1}] (musiklogik2) {spiele Note \dropdown{C} für \dropdown{1/4} Takt};
+
+% Umgebungen setzen
+\begin{pgfonlayer}{background}
+ \node[grundlage,umgebung,fit= (start) (musiklogik2) (motorlogik1) (platz1)]{};
+ \node[schleife, umgebung, fit = (schleife1) (musik1)(musik2)] (schleife1fit) {};
+ \node[logik,umgebung, fit=(bild) (logik1)] (log1fit){};
+
+
+ \node[logik,umgebung,fit=(log3wenndann)(motorlogik1)(log3sonst)(musiklogik2)]{};
+
+ \node[umgebung, logik, fit=(log3wenndann) (motorlogik1)](log11){};
+ \node[umgebung, logik, fit=(log3sonst) (musiklogik2)](log22){};
+\end{pgfonlayer}
+
+% Puzzlenippel setzen
+%\setzenippel{start,schleife1,musik1,logik1,platz1,schleife1fit,log1fit,bildmalen,log3wenndann, log3sonst}
+
+\end{tikzpicture} \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-verschachtelt-zacken.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-verschachtelt-zacken.tikz
new file mode 100644
index 0000000000..3f80434de5
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-verschachtelt-zacken.tikz
@@ -0,0 +1,8 @@
+\begin{tikzpicture}[codeblocks,minimum width=1.2cm]
+\einruecken{\node[kontrolle](eins){A\\ B};
+ \einruecken{\node[logik,unter={eins}{1}{0}](zwei){C\\ D};
+ \einruecken{\node[mathe,unter={zwei}{1}{0}](drei){E\\ F};}
+ \node[aktion,unter={drei}{1}{0}](vier){G\\ H};
+ }
+}
+\end{tikzpicture} \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-verzweigung.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-verzweigung.tikz
new file mode 100644
index 0000000000..88014282cc
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/bsp-verzweigung.tikz
@@ -0,0 +1,13 @@
+\begin{tikzpicture}[codeblocks]
+\wenndannsonst[draw]
+ {\dropdown{A}~\dropdown{<}\,\intbox{5}} %wenn
+ { \node[aktion](akt1){i=i++};
+ \node[farbe,unter={akt1}{0}{0}](akt2){j=j++};} %dann
+ { \node[aktion,](akt1){erstelle Bild:\\
+ \bild[0.4]{\fullled}
+ };
+ \node[farbe,unter={akt1}{0}{0}](akt2){j=j--};
+ } % sonst-ende
+ {eins}; % eigener Name
+\node[aktion,unter={eins}{0}{0}]{weiter mit anderen sachen};
+\end{tikzpicture} \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikzcodeblocks/examples/smarthome.tikz b/graphics/pgf/contrib/tikzcodeblocks/examples/smarthome.tikz
new file mode 100644
index 0000000000..d3e8c4c3c6
--- /dev/null
+++ b/graphics/pgf/contrib/tikzcodeblocks/examples/smarthome.tikz
@@ -0,0 +1,101 @@
+\begin{tikzpicture}[codeblocks]
+\einruecken{\node[grundlage,pinlow] (start){beim Start};}
+ \node[platzhalter,unter={start}{1}{0}] (plz1){ändere \dropdown{modus} auf \intbox{1}};
+ \node[konsole,unter={plz1}{0}{0}] (ser1) {serial \\redirect to\\ \hspace{5em} TX \dropdown{C17}\\\hspace{5em} RX \dropdown{C16}\\ at baud rate \dropdown{9600}~};
+\end{tikzpicture}
+
+\begin{tikzpicture}[codeblocks]
+\wenndann[eingabe]
+ {Knopf \dropdown{A} gedrückt}
+ {
+ \node[konsole] (ser1) {serial write line \stringbox{test\_line}};
+ \node[steuerung, unter={ser1}{0}{0}] (wait1){Warte $\mu$ \intbox{300000}};
+ }
+ {buttonA}
+\end{tikzpicture}
+
+
+\begin{tikzpicture}[codeblocks]
+
+\schleife[konsole]{\usb{}}{serial on data recived \usb{} \dropdown{\#}}{
+ \node[platzhalter, unter={start}{1}{0}] (plz1) {ändere \dropdown{befehl} auf \tikz\node[konsole,boden,keinezacken,puzzleteil,]{\usb{} serial read until \dropdown{\#}};};
+ \wenndann[unter={plz1}{0}{0}]{\tikz\node[pins,boden,keinezacken,puzzleteil]{\dropdown{befehl}}; \dropdown{=} \stringbox{aus}}{
+ \node[pins] (pin1) {schreibe analogen Pin \dropdown{P2} auf \intbox{0}};
+ \node[pins,unter={pin1}{0}{0}] (pin2) {ändere \dropdown{modus} auf \intbox{0}};
+ }{wenn1}
+ \wenndann[unter={wenn1}{0}{0}]{\tikz\node[pins,boden,keinezacken,puzzleteil]{\dropdown{befehl}}; \dropdown{=} \stringbox{ein}}{
+ \node[pins] (pin2) {ändere \dropdown{modus} auf \intbox{1}};
+ }{wenn2}
+ \wenndann[unter={wenn2}{0}{0}]{\tikz\node[pins,boden,keinezacken,puzzleteil]{\dropdown{befehl}}; \dropdown{=} \stringbox{solar}}{
+ \node[pins] (pin3) {schreibe analogen Pin \dropdown{P2} auf \intbox{1023}};
+ \node[pins,unter={pin3}{0}{0}] (pin2) {ändere \dropdown{solar} auf \intbox{1}};
+ }{wenn3}
+ \wenndann[unter={wenn3}{0}{0}]{\tikz\node[pins,boden,keinezacken,puzzleteil]{\dropdown{befehl}}; \dropdown{=} \stringbox{solar\_aus}}{
+ \node[pins] (pin4) {schreibe analogen Pin \dropdown{P2} auf \intbox{0}};
+ }{wenn4}
+}%ende Schleifenrumpf
+{start}
+\end{tikzpicture}
+
+
+\begin{tikzpicture}[codeblocks,scale=0.72]
+\schleife[grundlage,keinezacken]{dauerhaft}{}{
+ \wenndannsonst[robertashape]{\tikz\node[platzhalter,boden,keinezacken,puzzleteil]{\dropdown{modus}}; \dropdown{=} \intbox{1}} %wenn außen
+ {
+ \wenndann{\tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$\leq$}\intbox{50}}
+ {\node[pins](pin1){schreibe analogen Ping \dropdown{P1} auf \intbox{1023}};
+ \node[grundlage,unter={pin1}{0}{0}](bild1){zeige LEDs\\\bild{\emptyled}};
+ }{wenn1}
+
+ \wenndann[unter={wenn1}{0}{0}]{\tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$>$}\intbox{50} \dropdown{und} \tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$\leq$}\intbox{100}}{
+ \node[pins](pin2){schreibe analogen Ping \dropdown{P1} auf \intbox{800}};
+ \node[grundlage,unter={pin2}{0}{0}](bild2){zeige LEDs\\
+ \bild{\0 \0 \0 \0 \0 \\
+ \0 \0 \0 \0 \0 \\
+ \0 \0 \0 \0 \0 \\
+ \0 \X \0 \0 \0 \\
+ \X \X \0 \0 \0 \\
+ }};}{wenn2}
+
+ \wenndann[unter={wenn2}{0}{0}]{\tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$>$}\intbox{100} \dropdown{und} \tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$\leq$}\intbox{150}}{\node[pins](pin3){schreibe analogen Ping \dropdown{P1} auf \intbox{600}};
+ \node[grundlage,unter={pin3}{0}{0}](bild3){zeige LEDs\\
+ \bild{
+ \0 \0 \0 \0 \0 \\
+ \0 \0 \0 \0 \0 \\
+ \0 \0 \X \0 \0 \\
+ \0 \X \X \0 \0 \\
+ \X \X \X \0 \0 \\
+ }};}{wenn3}
+
+ \wenndann[unter={wenn3}{0}{0}]{\tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$>$}\intbox{150} \dropdown{und} \tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$\leq$}\intbox{200}}{\node[pins](pin4){schreibe analogen Ping \dropdown{P1} auf \intbox{200}};
+ \node[grundlage,unter={pin4}{0}{0}](bild4){zeige LEDs\\
+ \bild{
+ \0 \0 \0 \0 \0 \\
+ \0 \0 \0 \X \0 \\
+ \0 \0 \X \X \0 \\
+ \0 \X \X \X \0 \\
+ \X \X \X \X \0 \\
+ }};}{wenn4}
+
+ \wenndann[unter={wenn3}{0}{0}]{\tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$>$}\intbox{200} \dropdown{und} \tikz\node[eingabe,boden,keinezacken,puzzleteil]{Lichtstärke}; \dropdown{$\leq$}\intbox{255}}{\node[pins](pin5){schreibe analogen Ping \dropdown{P1} auf \intbox{0}};
+ \node[grundlage,unter={pin5}{0}{0}](bild5){zeige LEDs\\
+ \bild{
+ \0 \0 \0 \0 \X \\
+ \0 \0 \0 \X \X \\
+ \0 \0 \X \X \X \\
+ \0 \X \X \X \X \\
+ \X \X \X \X \X \\
+ }};}{wenn5}
+ }%dann außen
+ {\node[pins](pin6){schreibe analogen Ping \dropdown{P1} auf \intbox{0}};
+ \node[grundlage,unter={pin6}{0}{0}](bild5){zeige LEDs\\
+ \bild{
+ \X \0 \0 \0 \X \\
+ \0 \X \0 \X \0 \\
+ \0 \0 \X \0 \0 \\
+ \0 \X \0 \X \0 \\
+ \X \0 \0 \0 \X \\
+ }};}% sonst außen
+ {wenn}
+}{schleife1}
+\end{tikzpicture}