答案1
以下是一个尝试元帖子使用luamplib
. 用 编译lualatex
。
如果你想要“真正的” 3D,你可以考虑使用渐近线。如果你想尝试 TikZ,那么你可能还应该学习一些这些例子。
您可能需要更改 的值S
来更改高度 - 如果这样做,您需要进行调整r
,以便红色弧线与对角线整齐相交。 请点击上面的链接获取详细参考资料和其他示例。
\RequirePackage{luatex85}
\documentclass[border=5mm]{standalone}
\usepackage{luamplib}
\begin{document}
\mplibtextextlabel{enable}
\begin{mplibcode}
beginfig(1);
path outer, inner;
outer = fullcircle xscaled 144 yscaled 55;
inner = outer scaled 1/2;
pair A,B,C,S;
A = point 14/3 of outer;
B = point 22/3 of outer;
C = point 6/3 of outer;
S = 144 up;
r = 1/4;
drawoptions(withcolor 2/3 red);
draw subpath(+4-r,r) of outer dashed withdots scaled 1/2;
draw subpath(-4-r,r) of outer -- S -- cycle;
drawoptions();
dotlabel.top ("$C$", C) withcolor 1/2 white;
drawoptions(withcolor 2/3 blue);
draw inner dashed withdots scaled 1/2;
draw A--B--C--cycle dashed evenly scaled 1/2;
draw A--S;
draw B--S;
for i=1/4 step 1/4 until 8:
draw point i of inner -- S dashed withdots scaled 1/2;
endfor
drawoptions();
dotlabel.top ("$S$", S);
dotlabel.llft("$A$", A);
dotlabel.lrt ("$B$", B);
endfig;
\end{mplibcode}
\end{document}