\definecolor{cellred}{rgb} {0.98,0.17,0.15}
\definecolor{cellblue}{rgb} {0.17,0.60,0.99}
- \def\inner{10}
- \def\innerw{5}
- \pgfmathsetmacro{\innera}{\inner+\innerw}
- \pgfmathsetmacro{\innerb}{\inner-\innerw}
- \def\innerp{15}
- \pgfmathsetmacro{\innerc}{90-\innerp}
- \pgfmathsetmacro{\innerd}{270-\innerp}
- \pgfmathsetmacro{\innere}{90+\innerp}
-
- \def\outer{20}
- \def\outerw{5}
- \pgfmathsetmacro{\outera}{\outer+\outerw}
- \pgfmathsetmacro{\outerb}{\outer-\outerw}
- \def\outerp{10}
- \pgfmathsetmacro{\outerc}{180-\outerp}
- \pgfmathsetmacro{\outerd}{360-\outerp}
- \pgfmathsetmacro{\outere}{180+\outerp}
+ \def\levelone{10}
+ \def\leveltwo{16}
+ \def\levelthree{23}
+ \def\thickness{18}
- % #1: color
- % #2: r
- % #3: rd
- % #4: a1
- % #5: a2
- % #6: ad
- % #7 : text 1
- % #8 : text 2
- % #9 : text color
- \newcommand{\bigarrow}[9]{
- \fill[x=1mm, y=1mm, color=#1] (#5:#2) -- (#5-#6:#2-#3) arc[start angle=#5-#6, end angle=#4+#6, radius=#2-#3] -- (#4:#2) -- (#4+#6:#2+#3) arc[start angle=#4+#6, end angle=#5-#6, radius=#2+#3];
+ \tikzexternalenable
+ \begin{tikzpicture}[x=1mm, y=1mm]
+ \small
+ %Physical world
+ \fill[color=black!10] (0,0) -- (45:25) arc[start angle=45, end angle=-45, radius=25] -- cycle;
+ \fill[color=black!10] (0,0) -- (135:25) arc[start angle=135, end angle=225, radius=25] -- cycle;
- \draw [x=1mm, y=1mm, decorate, decoration={text along path, text={|\color{#9}|#7},text align=center, raise=-0.5ex}] (#5:#2) arc[start angle=#5, end angle=#4, radius=#2];
- \draw [x=1mm, y=1mm, decorate, decoration={text along path, text={|\color{#9}|#8},text align=center, raise=-0.5ex}] (#4:#2) arc[start angle=#4, end angle=#5, radius=#2];
- }
- \newcommand{\bigtoparrow}[9]{
- \fill[x=1mm, y=1mm, color=#1] (#5:#2-#3) arc[start angle=#5, end angle=#4, radius=#2-#3] -- (#4+#6:#2+#3) arc[start angle=#4+#6, end angle=#5-#6, radius=#2+#3];
+ %Thoughts
+ \path[decorate, decoration={text along path, text={|\color{black}|Thoughts},text align=center, raise=-0.5ex}] (135:\leveltwo) arc[start angle=135, end angle=45, radius=\leveltwo];
- \draw [x=1mm, y=1mm, decorate, decoration={text along path, text={|\color{#9}|#7},text align=center, raise=-0.5ex}] (#5:#2) arc[start angle=#5, end angle=#4, radius=#2];
- \draw [x=1mm, y=1mm, decorate, decoration={text along path, text={|\color{#9}|#8},text align=center, raise=-0.5ex}] (#4:#2) arc[start angle=#4, end angle=#5, radius=#2];
- }
- \newcommand{\bigbottomarrow}[9]{
- \fill[x=1mm, y=1mm, color=#1] (#5-#6:#2-#3) arc[start angle=#5-#6, end angle=#4+#6, radius=#2-#3] -- (#4:#2+#3) arc[start angle=#4, end angle=#5, radius=#2+#3];
+ %Computing
+ \path[decorate, decoration={text along path, text={|\color{black}|Computing},text align=center, raise=-0.5ex}] (225:\leveltwo) arc[start angle=225, end angle=315, radius=\leveltwo];
- \draw [x=1mm, y=1mm, decorate, decoration={text along path, text={|\color{#9}|#7},text align=center, raise=-0.5ex}] (#5:#2) arc[start angle=#5, end angle=#4, radius=#2];
- \draw [x=1mm, y=1mm, decorate, decoration={text along path, text={|\color{#9}|#8},text align=center, raise=-0.5ex}] (#4:#2) arc[start angle=#4, end angle=#5, radius=#2];
- }
+ %Physical
+ \path[decorate, decoration={text along path, text={|\color{black}|Physical},text align=center, raise=-0.5ex}] (225:\leveltwo) arc[start angle=225, end angle=135, radius=\leveltwo];
- \tikzexternalenable
- \begin{tikzpicture}
- \small
- %\node[x=1mm, y=1mm, anchor=center, minimum width=84mm,minimum height=12mm, inner sep=0,fill=black!10, outer sep=0]() at (14,0) {};
- \node[x=1mm, y=1mm, anchor=west, text width=1.2cm]() at (30,0) {\textbf{Physical World}};
- \node[x=1mm, y=1mm, anchor=west, text width=1.2cm]() at (30,10) {\textbf{Mind}};
- \node[x=1mm, y=1mm, anchor=west, text width=1.2cm]() at (30,-10) {\textbf{Computation}};
+ %World
+ \path[decorate, decoration={text along path, text={|\color{black}|World},text align=center, raise=-0.5ex}] (45:\leveltwo) arc[start angle=45, end angle=-45, radius=\leveltwo];
+
+ %User
+ \draw[{Triangle Cap[bend]}-{Triangle Cap[bend]}, color=cellred, line width=\thickness] (180:\levelone) arc[start angle=180, end angle=0, radius=\levelone];
+ \path[decorate, decoration={text along path, text={|\color{white}|User},text align=center, raise=-0.5ex}] (180:\levelone) arc[start angle=180, end angle=0, radius=\levelone];
- \fill[x=1mm, y=1mm, color=black!10] (0,0) -- (45:30) arc[start angle=45, end angle=-45, radius=30] -- cycle;
- \fill[x=1mm, y=1mm, color=black!10] (0,0) -- (135:30) arc[start angle=135, end angle=225, radius=30] -- cycle;
+ %System
+ \draw[{Triangle Cap[bend]}-{Triangle Cap[bend]}, color=cellblue, line width=\thickness] (180:\levelone) arc[start angle=180, end angle=360, radius=\levelone];
+ \path[decorate, decoration={text along path, text={|\color{white}|System},text align=center, raise=-0.5ex}] (180:\levelone) arc[start angle=180, end angle=360, radius=\levelone];
- %\bigbottomarrow{cellblue}{12}{4}{180}{360}{30}{}{System}{white}
- %\bigbottomarrow{cellred}{12}{4}{0}{180}{30}{User}{}{white}
- %\bigtoparrow{black!30}{20}{4}{-90}{90}{30}{Haptic rendering pipeline}{}{white}
- %\bigtoparrow{black!60}{20}{4}{90}{270}{30}{Input pipeline}{}{white}
+ %Input pipeline
+ \draw[{Triangle Cap[bend]}-{Triangle Cap[bend]}, color=black!40, line width=\thickness] (90:\levelthree) arc[start angle=90, end angle=-90, radius=\levelthree];
+ \path[decorate, decoration={text along path, text={|\color{white}|Input pipeline},text align=center, raise=-0.5ex}] (90:\levelthree) arc[start angle=90, end angle=-90, radius=\levelthree];
- \bigarrow{cellblue}{10}{4}{180}{360}{20}{}{System}{white}
- \bigarrow{cellred}{10}{4}{0}{180}{20}{User}{}{white}
- \bigarrow{black!40}{18}{4}{-90}{90}{20}{Input pipeline}{}{white}
- \bigarrow{black!60}{18}{4}{90}{270}{20}{Haptic rendering pipeline}{}{white}
+ %Haptic pipeline
+ \draw[{Triangle Cap[bend]}-{Triangle Cap[bend]}, color=black!60, line width=\thickness] (270:\levelthree) arc[start angle=270, end angle=90, radius=\levelthree];
+ \path[decorate, decoration={text along path, text={|\color{white}|Haptic rendering pipeline},text align=center, raise=-0.5ex}] (270:\levelthree) arc[start angle=270, end angle=90, radius=\levelthree];
\end{tikzpicture}
- \tikzexternaldisable
+ %\tikzexternaldisable
\caption[Full pipeline.]{Full pipeline.}
\label{fig:all}
\end{figure}