New revised Version

This commit is contained in:
2019-09-13 10:34:15 +02:00
parent ab8f7b0214
commit 8021b5b75b
5 changed files with 39 additions and 503 deletions
-85
View File
@@ -1,85 +0,0 @@
% Tikz File mqtt_pub_sub.tex
\documentclass{standalone}
\usepackage{tikz}
\usepackage{graphicx}
\begin{document}
\begin{tikzpicture}
%\draw[help lines] (-7,-5) grid (7,5);
% Broker
\draw (0,0) circle (2);
\node[] at (0,-1.5) (broker) {\textbf{Broker}};
\node[inner sep=0pt] (broker_pc) at (0,0)
{\includegraphics[width=0.1\textwidth]{images/pc.png}};
% Publisher
\pgfmathsetmacro\xl{-6};
\pgfmathsetmacro\xr{-3};
\pgfmathsetmacro\w{(\xl+\xr)};
\pgfmathsetmacro\y{6};
% Text
\node[] at (\w/2,-\y/2-0.25) (pubs) {\textbf{MQTT Clients}};
% Images
\node[inner sep=0pt] (laptop) at (\w/2,\y/3)
{\includegraphics[width=0.1\textwidth]{images/laptop.png}};
\node[inner sep=0pt] (mcu) at (\w/2,\y/3-\y/3)
{\includegraphics[width=0.1\textwidth]{images/muc.png}};
\node[inner sep=0pt] (pc) at (\w/2,\y/3-\y/3-\y/3)
{\includegraphics[width=0.1\textwidth]{images/pc.png}};
\draw (\xl-0.25, \y/2-0.25) -- (\xl-0.25, -\y/2+0.25); % left
\draw (\xl, \y/2) arc (90:180:0.25); % top left
\draw (\xl, \y/2) -- (\xr, \y/2); % top
\draw (\xr+0.25, \y/2-0.25) arc (0:90:0.25); % top right
\draw (\xr+0.25, \y/2-0.25) -- (\xr+0.25, -\y/2+0.25); % right
\draw (\xr, -\y/2) arc (270:360:0.25); % bottom right
\draw (\xl,-\y/2) -- (\xr,-\y/2); % bottom
\draw (\xl-0.25, -\y/2+0.25) arc (180:270:0.25); % bottom left
% Subscriber
\pgfmathsetmacro\xl{3}
\pgfmathsetmacro\xr{6}
\pgfmathsetmacro\w{(\xl+\xr)};
\pgfmathsetmacro\y{6}
\node[] at (\w/2,-\y/2-0.25) (subs) {\textbf{MQTT Clients}};
% Images
\node[inner sep=0pt] (server) at (\w/2,\y/3-1)
{\includegraphics[width=0.1\textwidth]{images/server.png}};
\node[inner sep=0pt] (sub_mcu) at (\w/2,\y/3-3)
{\includegraphics[width=0.1\textwidth]{images/muc.png}};
\draw (\xl-0.25, \y/2-0.25) -- (\xl-0.25, -\y/2+0.25); % left
\draw (\xl, \y/2) arc (90:180:0.25); % top left
\draw (\xl, \y/2) -- (\xr, \y/2); % top
\draw (\xr+0.25, \y/2-0.25) arc (0:90:0.25); % top right
\draw (\xr+0.25, \y/2-0.25) -- (\xr+0.25, -\y/2+0.25); % right
\draw (\xr, -\y/2) arc (270:360:0.25); % bottom right
\draw (\xl,-\y/2) -- (\xr,-\y/2); % bottom
\draw (\xl-0.25, -\y/2+0.25) arc (180:270:0.25); % bottom left
% arrows
\draw[ultra thick, ->] (mcu) -- (broker_pc);
\draw[ultra thick, ->] (laptop) -- (broker_pc);
\draw[ultra thick, ->] (pc) -- (broker_pc);
\draw[ultra thick, ->] (sub_mcu) -- (broker_pc);
\draw[dashed, ultra thick, <-] (server) -- (broker_pc);
\draw[dashed, ultra thick, ->] (broker_pc.10) to (sub_mcu.north west);
% legend
\draw[dashed, ultra thick, ->] (-4,-4) -- (-1,-4);
\node[] (Sub) at (-2.5,-4.25) {Subscribe};
\draw[ultra thick, ->] (1,-4) -- (4,-4);
\node[] (Pub) at (2.5,-4.25) {Publish};
\end{tikzpicture}
\end{document}
-32
View File
@@ -1,32 +0,0 @@
% Tikz File mqtt_pub_sub.tex
\documentclass{standalone}
\usepackage{tikz}
\usepackage{graphicx}
\begin{document}
\begin{tikzpicture}
%\draw[help lines] (-7,-5) grid (7,5);
\pgfmathsetmacro\pub{-4};
\pgfmathsetmacro\bro{0};
\pgfmathsetmacro\sub{4};
\pgfmathsetmacro\y{4};
\draw[ultra thick] (\pub,\y/2) -- (\pub,\y/-2);
\draw[ultra thick] (\bro,\y/2) -- (\bro,\y/-2);
\draw[ultra thick] (\sub,\y/2) -- (\sub,\y/-2);
\draw[ultra thick, ->] (\sub,1) -- (\bro, 1);
\draw[ultra thick, <-] (\sub,-1) -- (\bro, -1);
\draw[ultra thick, ->] (\pub,0) -- (\bro, 0);
\node at (\pub, \y/2+0.2) {Publisher};
\node at (\bro, \y/2+0.2) {Broker};
\node at (\sub, \y/2+0.2) {Subscriber};
\node at (\sub/2, 1.2) {Subscribe (topic)};
\node at (\pub/2, 0.2) {Publish (topic, info)};
\node at (\sub/2, -0.8) {Publish (topic, info)};
\end{tikzpicture}
\end{document}