通过具有不同几何形状的不同光学元件绘制粒子散射的光

通过具有不同几何形状的不同光学元件绘制粒子散射的光

目前正在写博士论文,我想用 Latex 写。所以,对于图形,我想使用 Tikz 来绘制,使我的论文更美观,尺寸更小。如果有人能帮我提供 tikz 代码来画这些图形,我将不胜感激。这些图形说明了粒子计数器中粒子散射的光,这些粒子具有不同的光学几何形状。请帮我画出所有这些图形。提前谢谢 这是具有不同光学几何形状的粒子计数器的粒子散射光的图像

答案1

这或许是一个开始。

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}[ring at/.style={insert path={
    (#1,0) circle[y radius={sqrt(R*R-#1*#1)},x radius={a*sqrt(R*R-#1*#1)}]}},
    cone at/.style={ring at=#1,insert path={(#1,{sqrt(R*R-#1*#1)}) -- (0,0)
        -- (#1,-{sqrt(R*R-#1*#1)})}},
    pics/shell/.style={code={
    \tikzset{shell/.cd,#1}
    \def\pv##1{\pgfkeysvalueof{/tikz/shell/##1}} 
    \pgfmathsetmacro{\Rone}{sqrt(R*R-\pv{x1}*\pv{x1})}
    \pgfmathsetmacro{\Rtwo}{sqrt(R*R-\pv{x2}*\pv{x2})}
    %\pgfmathsetmacro{\AngleA}{acos()}
    \draw [pic actions] (\pv{x1},-\Rone)
    arc[start angle=-90,end angle=90,x radius=a*\Rone,y radius=\Rone]
    arc[start angle={acos(\pv{x1}/R)},end angle={acos(\pv{x2}/R)},radius=R]
    arc[start angle=90,end angle=-90,x radius=a*\Rtwo,y radius=\Rtwo]
    arc[start angle={-acos(\pv{x2}/R)},end angle={-acos(\pv{x1}/R)},radius=R]
    --cycle;
    \draw [pic actions] (\pv{x1},-\Rone)
    arc[start angle=270,end angle=90,x radius=a*\Rone,y radius=\Rone]
    arc[start angle={acos(\pv{x1}/R)},end angle={acos(\pv{x2}/R)},radius=R]
    arc[start angle=90,end angle=270,x radius=a*\Rtwo,y radius=\Rtwo]
    arc[start angle={-acos(\pv{x2}/R)},end angle={-acos(\pv{x1}/R)},radius=R]
    --cycle;
    }},declare function={R=4;a=0.1;},shell/.cd,x1/.initial=1,x2/.initial=2
    ]
  \begin{scope}
   \draw circle[radius=R];
   \draw [cone at=2];
   \pic[pattern=north east lines]{shell={x1=2.75,x2=3}};
  \end{scope}
  \begin{scope}[xshift=9cm]
   \draw circle[radius=R];
   \draw [cone at=-3];
   \draw[rotate=45] [cone at=2];
   \pic[rotate=45,pattern=north east lines]{shell={x1=2.75,x2=3}};
  \end{scope}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容