具体来说,为了使用\tdplotsetcoord
命令定义坐标,然后使用\tdplotdefinepoints(Vx,Vy,Vz)(Ax,Ay,Az)(Bx,By,Bz)
需要在调用命令之前知道三个点的 x,y,z 分量的命令\tdplotdrawpolytopearc
在两个向量之间绘制圆弧。
有人能帮助我修复我的方法或演示另一种有效的方法吗?
% drawing the axes
\draw[very thick,->] (0,0,0) -- (8,0,0) node[anchor=north east, very thick]{$y$ (West)};
\draw[very thick,->] (0,0,0) -- (0,8,0) node[anchor=north west, very thick]{$x$ (South)};
\draw[very thick,->] (0,0,0) -- (0,0,8) node[anchor=south, very thick]{$z$ (Zenith)};
% defining the origin
\coordinate (O) at (0,0,0);
% ploting sun vector and angles
\tdplotsetcoord{P}{8}{40}{60}
% draw a vector from origin to point (P)
\draw[-stealth,thick,color=red] (O) -- (P);
% plotting vector of the sky element
\tdplotsetcoord{Q}{8}{40}{-15}
% draw a vector from origin to point (Q)
\draw[-stealth,thick,color=blue] (O) -- (Q) node[thick,above] {se};
% plotting vector of the collector normal
\tdplotsetcoord{R}{8}{46}{115}
% draw a vector from origin to point (R)
\draw[-stealth,thick,color=nrkgreen] (O) -- (R) node[thick,above] {cn};
\tdplotdefinepoints(O)(P)(R) % problem in code is here!!!
\tdplotdrawpolytopearc[<->]{2}{anchor=north west}{$\theta$}