答案1
您可以将其与Skillmon 的回答。
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{arrows.meta,bending}
\begin{document}
\begin{tikzpicture}
\draw (0:4) arc(0:180:4) node[midway,above]{WALL} -- (180:0.5) node[midway,above]{$\Omega_{13}$}
arc (180:0:0.5)
node[midway,above]{$\Omega_{11}$}-- cycle node[midway,above]{$\Omega_{34}$};
\draw (0,0) -- (35:4);
\draw[-{Latex[bend]}] (1.5,0) arc(0:35:1.5) node[near end,right]{$\theta$};
\draw[-Latex] (0,0) -- (70:3) node[near end,right]{$\Omega$};
\begin{scope}[yshift=-2pt,red]
\draw (0:4) arc(0:-180:4) node[midway,below]{WATER}
-- (-180:0.5) node[midway,below]{$\Omega_{23}$}
arc(-180:0:0.5)
node[midway,below]{$\Omega_{21}$} -- cycle node[midway,below]{$\Omega_{24}$};
\draw (0,0) -- (-35:4);
\draw[-{Latex[bend]}] (3,0) arc(0:-35:3) node[midway,right]{$\varphi$};
\foreach \X in {1.75,2.25,2.75}
{\draw[-Latex] (1,-\X) -- (-1,-\X);}
\end{scope}
\end{tikzpicture}
\end{document}
答案2
为了帮助你开始,我画了一个 PokeBall:
编辑:修复一些问题,一些计算是错误的(至少基于变量的名称)。
\documentclass[tikz,border=3.14]{standalone}
\pgfkeys
{%
/tikz/kim/.cd
,gap/.initial=.02cm
,radius/.initial=1cm
,inner/.initial=.2cm
}
\newcommand*\kimvalue[1]{\pgfkeysvalueof{/tikz/kim/#1}}
\begin{document}
\begin{tikzpicture}
\pgfmathsetmacro\kimAngleI{asin(\kimvalue{gap}/\kimvalue{inner})}
\pgfmathsetmacro\kimAngleO{asin(\kimvalue{gap}/\kimvalue{radius})}
\draw[red]
({180+\kimAngleO}:\kimvalue{radius})
arc
[%
start angle={-180+\kimAngleO},
end angle={-\kimAngleO},
radius=\kimvalue{radius}
]
-- ({-\kimAngleI}:\kimvalue{inner})
arc
[%
start angle={-\kimAngleI},
end angle={-180+\kimAngleI},
radius=\kimvalue{inner}
]
-- cycle
;
\draw
({180-\kimAngleO}:\kimvalue{radius})
arc
[%
start angle=180-\kimAngleO,
end angle=\kimAngleO,
radius=\kimvalue{radius}
]
-- ({\kimAngleI}:\kimvalue{inner})
arc
[%
start angle=\kimAngleI,
end angle=180-\kimAngleI,
radius=\kimvalue{inner}
]
-- cycle
;
\end{tikzpicture}
\end{document}