另一个方案是基于luadraw
(需要自行安装并用lualatex
编译)
\documentclass[12pt]{standalone}
\usepackage[svgnames]{xcolor}
\usepackage[3d]{luadraw}
\usepackage{fouriernc}
\begin{document}
\begin{luadraw}{name=project_line_3D}
local g = graph3d:new{
window3d={-1,3,-2,3,-2,2},
window={-3,3,-3,2},
viewdir={30,60},
size={10,10},
border=true
}
g:Linejoin("round")
g:Linewidth(4)
Hiddenlines = true
Hiddenlinestyle = "dashed"
local A,B,C = M(0,1,0), M(3,2,0), M(2.5,0,1)
local D = dproj3d(C,{B,A-B}) -- 返回C在直线d:{B,A-B}的投影
g:Ddots3d({A,B,C,D})
g:Dscene3d(
g:addAxes(Origin, {arrows=1,arrowscale=0.75,color="blue"})
)
g:Dpolyline3d({{A,B,C,A}, {C,D}})
g:Dangle3d(C,D,A,0.2)
g:Dlabel3d(
"$A$",A,{pos="N"},
"$B$",B,{pos="S"},
"$C$",C,{pos="N"},
"$D$",D,{pos="E"}
)
g:Show()
\end{luadraw}
\end{document}
问 三维坐标系统下作垂线,只找到2维坐标系统下作垂线,简单复制到3维坐标,貌似有问题,是我数学太菜了吗?