【发布时间】:2022-01-15 11:42:18
【问题描述】:
我有两条近似平行的折线代表铁路轨道,由数百个(可能数千个)x、y、z 坐标组成。两条线相距约 1.435m,但会像铁路一样弯曲和弯曲。
如果我在其中一条折线上选择一个点,如何找到与另一条平行折线垂直的点?
我认为 CAD 程序使用叉积来查找距离/点,并根据鼠标悬停的位置选择要捕捉的线。
我想实现同样的目标,但不要将鼠标悬停在这条线上。
有没有办法简单地计算平行线上最近的线段?或者查看折线的哪一段在选定点通过垂直平面?
循环遍历这些段是不切实际的,因为它们太多了。
在 python 中,输入类似于 rail1 上的点 x、y、z,我希望输出 rail2 上的点 x、y、z。
非常感谢。
【问题讨论】:
-
好吧,你将不得不遍历这些片段。鉴于这一点,您必须在第 1 行中找到匹配的线段,这样您才能分辨出哪个方向是“垂直的”。然后您必须遍历第 2 行的线段,以查看任一侧 1.435m 的点是否在该线段上或该线段的一部分。
-
谢谢。通过指定点,您还将指定第 1 行的线段。实际上,输入将是沿第 1 行的一个点,而不是 x、y、z。例如第 1 行 100m 处的一个点。
-
我想您可以过滤 rail2 的坐标以仅显示 rail2 上指定点附近的坐标,然后循环穿过较少数量的线段。我希望有一个更简单的解决方案。
标签: math vector geometry language-agnostic polyline