Tikz:如何在 3D 中查找给定线段上与图像平面中的交点相对应的点?

Tikz:如何在 3D 中查找给定线段上与图像平面中的交点相对应的点?

我想绘制一个像这样的图形,但没有两个灰色立方体:

在此处输入图片描述

但是,我遇到了一个问题,我无法找到方法来获取此线段的“交点”

在此处输入图片描述

另一个在那里

在此处输入图片描述

可以注意到,这两条线段实际上并不相交。只有它们在图像平面(又称图片平面、屏幕空间等)上的投影相交。如果我知道如何获得“视点”,那么我就可以找到具有这种属性的第一条线段上的点,但其他建议也欢迎提出。

以下是部分绘制了所需图形可见线条的 Tikz 代码:

            \begin{tikzpicture}[scale=0.2]
                \coordinate (right) at (5,0,0);
                \coordinate (left) at (-5,0,0);
                \coordinate (up) at (0,5,0);
                \coordinate (down) at (0,-5,0);
                \coordinate (closer) at (0,0,5);
                \coordinate (farther) at (0,0,-5);
                
                % The figure's boundary (its ``shade")
                \draw (-5,-5,5) -- ++ ($2*(up)$) -- ++ (farther) -- ++ (right) -- ++ (farther) -- ++ (right) -- ++ ($2*(down)$) -- ++ (closer) -- ++ (left) -- ++ (closer) -- ++ (left) -- cycle;
                % The groove at the bottom
                \draw (5,-5,0) -- ++ (up) -- ++ (closer) -- ++ (left) -- ++ (down);
            \end{tikzpicture}

及其输出:

在此处输入图片描述

相关内容