如何使用 LaTeX 绘制 3D 扇区?

如何使用 LaTeX 绘制 3D 扇区?

我希望两个部门(一支蓝色铅笔,另一支黑色铅笔)3D 模式,它们在平面上有相同的顶点。黑色铅笔的那个位于平面上,而蓝色的那个位于平面上方的 theta 位置。

我期望的效果就像这里的图片一样。

在此处输入图片描述

如果我也能标出这三个角度就好了。

我真的不知道从哪里开始。我也尝试过搜索,但很遗憾失败了。

答案1

在此处输入图片描述

MWEAsymptote

% s3d.tex:
\documentclass{article}
\usepackage[inline]{asymptote}
\usepackage{lmodern}
\begin{document}
\begin{figure}
\begin{asy}
settings.prc=false;
settings.tex="pdflatex";
settings.render=0;
import solids;
size(300);

currentprojection=orthographic(camera=(18,-90,30),up=Z,target=O,zoom=1);

real R=10;
triple A,B,C,D;

A=R*dir(70, 0); B=R*dir(60, 30);
C=(B.x,B.y,0);  D=(A.x,A.y,0);

triple p,q,r,s;

p=(-0.25R,R,0); q=(1.25R,R,0);
r=(1.25R,-R,0); s=(-0.25R,-R,0);

draw(surface(p--q--r--s--cycle),lightgreen+opacity(0.2));

real penw=0.5bp;
pen lpen=olive+penw;
pen dpen=lightblue+dashed+penw;
pen arcpen=orange+penw;

draw(A--O--B,lpen);
draw(C--O--D,dpen);
draw(B--C--D--A,dpen);

draw(arc(O,A,B,cross(A,B),CCW),arcpen);

// mark angles
real ra,rb,rth;
pen alphaPen=red;
pen betaPen=darkgreen;
pen thetaPen=blue;

ra=0.2; rb=2ra; rth=1.8ra;
draw(arc(O,ra*A,ra*B,cross(A,B),CCW),alphaPen);
draw(arc(O,rb*D,rb*C,cross(D,C),CCW),betaPen);
draw(arc(O,rth*C,rth*B,cross(C,B),CCW),thetaPen);

triple v;
v=0.5ra*(A+B);  label("$\alpha$",v,NE);
v=0.5rb*(D+C);  label("$\beta$",v,2E);
v=0.5rth*(B+C); label("$\theta$",v,NE);

dot(new triple[]{O,A,B,C,D});

defaultpen(fontsize(10pt));

label("$O$",O,W);
label("$A$",A,NE);
label("$B$",B,NE);
label("$C$",C,NE);
label("$D$",D,NE);
\end{asy}
\caption{Sectors in \texttt{3D} with \LaTeX}
\end{figure}
\end{document}
% 
% To process it with `latexmk`, create file `latexmkrc`:
% 
%     sub asy {return system("asy '$_[0]'");}
%     add_cus_dep("asy","eps",0,"asy");
%     add_cus_dep("asy","pdf",0,"asy");
%     add_cus_dep("asy","tex",0,"asy");
% 
% and run `latexmk -pdf s3d.tex`.

相关内容