我正在建立一个简单的三维模型来绘制三维长方体。在这个模型中,没有特殊的循环情况,比如a在a前面,B前面,C前面,或者a的一部分在B前面,但是B的一部分在a前面。
现在给定两个在3D中不相交的多边形,两个都是可见的(或部分可见的),通过观察方向是Oz。确定哪一个在前面?
显然,我不能用明兹或马克斯。下面是一个反例:
algorithm - 给定2个3D的非交叉多边形(均由视线Oz可见),确定哪个在前面-LMLPHP

最佳答案

可能在您的情况下,定义如下:
包含给定面的平面定义了两个半空间。另一张脸是在前面,如果它的四个点都在同一个半平面的眼睛。
请注意,没有简单/明显的标准,除非您的模型具有非常特殊/强的属性。

关于algorithm - 给定2个3D的非交叉多边形(均由视线Oz可见),确定哪个在前面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55346065/

10-10 16:55