【发布时间】:2019-06-06 04:13:52
【问题描述】:
网络上的一切都太复杂了。
所以,我有一个由三个点组成的数组定义的三角形和一个由 2 个点定义的线段。点 = 3 个浮点数。我想知道它们是否相交。交叉点也会有所帮助,但作用不大。
每种情况下都有 5 个坐标(15 个浮点数)。我只需要 python 代码或数学公式,希望有一些初学者的信息。
请,关于 python:用这样的东西开始代码:
plane = [[float(input('plane coord1 x:'), float(input('plane coord1 y:'), float(input('plane coord1 z:')], [float(input('plane coord2 x:'), float(input('plane coord2 y:'), float(input('plane coord2 z:')], [float(input('plane coord3 x:'), float(input('plane coord3 y:'), float(input('plane coord3 z:')]]
line = [[float(input('line coord1 x:'), float(input('line coord1 y:'), float(input('line coord1 z:')], [float(input('line coord2 x:'), float(input('line coord2 y:'), float(input('line coord2 z:')]]
或者这个:
plane = [[x1,y1,z1], [x2,y2,z2], [x3,y3,z3]]
line = [[X1,Y1,Z1], [X2,Y2,Z2]]
【问题讨论】:
-
您可以计算线平面交点,然后查看该点是否包含在您的线段和三角形中。
-
如何计算?如何查看它是否被三角形包含?非常感谢,但我完全是菜鸟。
-
如何计算?如何查看它是否被三角形包含?非常感谢,但我完全是菜鸟
-
关于交点:我发现了这个:youtu.be/qVvvy5hsQwk 另外,您可以通过查看它是否同时属于从x,y和z的三角形正交投影来检查它是否属于三角形(但我还是不知道怎么弄)
-
另外,mathutils.geometry 能够找到交点。也许,不是最好的解决方案,但仍然......
标签: python 3d line polygon segment