问题标签 [line-intersection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
246 浏览

matlab - 在 Matlab 上找到一个交点

我有两组数据曲线,x1,y1 和 x1,y2。我希望找到这两条曲线之间的交点。但是,我没有 x1,y1 的方程。此外,当使用传统的交点计算功能时,我几乎没有得到任何结果,因为曲线不会“完全”在特定点相交:它们几乎相交!

我想找到,对于可能的最小 x1,在 x1 点这些曲线彼此非常接近(几乎相交)。但是,我不确定如何继续......我确定我需要定义一个边距,但是我如何检查值 y1 和 y2 是否彼此接近并确定每个 x1 ?你有什么主意吗 ?你能想到什么功能?

谢谢,

这是我的两条曲线:曲线几乎相交

在此处输入图像描述

0 投票
1 回答
80 浏览

math - 一维中两条线相交长度的线性表达式

给定第一行 from ato bwherea < b和第二行 from xto ywhere x < y,你如何计算这两者的交点长度?

例子:

结果将是2因为它们是从3到的交集5

是否有包含这 4 个变量的表达式来提取结果?不能保证存在交叉点,也不能保证x > a

我查看了时间跨度相交示例,但它们都有一个if表达式,这在我的情况下是不可能的。

0 投票
1 回答
134 浏览

matlab - 查找不能表示为 y=f(x) 的曲线的交点

我有两对数据集,x1 vs y1 和 x2 vs y2。x1, y1, x2, y2 的数据分布不均,如下图所示:

x1 x2 y1 y2

我的问题是确定两对数据集 x1/y1 和 x2/y2 的交集,如下图所示:

x1/y1 与 x2/y2

我尝试对数据点进行插值以使间距均匀,但由于 x1/y1 的无效区域存在相同 x 值的多个解决方案。

这是 x1/y1 和 x2/y2 关系的放大图,显示数据集中存在无法在任何方向上插值的节点:

放大 x1/y1 和 x2/y2 关系

0 投票
1 回答
763 浏览

python-3.x - 使用 shapely 返回相交的多线串的坐标

我使用以下代码使用 Shapely 的 LineString 函数生成了随机街道:

如果我使用:

street_network = StreetNetwork() street_network.gen_street_coords(10, [-50, 50])

我得到这样的图像:简单

我一直在看以下看起来相似的问题。我现在想遍历我的 street_coords 列表,如果街道与另一条街道交叉,则将街道分成 2 条,但我发现很难找到交叉点的坐标。但是,由于我不熟悉使用 Shapely,我正在努力使用“相交”功能。

0 投票
1 回答
1123 浏览

python - 直线和矩形的交点

我有一个矩形和矩形内的线段,线可以在两边延伸。我知道矩形的四个顶点的坐标以及直线的两个顶点的坐标。

我尝试编写一个函数,该函数将返回线段和矩形的两个交点的坐标。我使用的语言是python。问题是我不确定这条线会与矩形的哪一侧相交。所以它使我的功能变得非常复杂,我不确定我是否已经涵盖了所有案例。

我有算法可以做到这一点吗?

0 投票
0 回答
405 浏览

segment - 具有圆形交点的扫描线算法

我正在尝试为圆交点实现扫描线算法,如果圆的原点之间的欧几里德距离<=两个半径的总和,则在其中发生交点。(不包括圈内圈)

我通过将圆圈定义为具有入口和终点(上最大值和下最大值),将我的问题简化为扫描线算法。当到达最大值时,圆圈的左右最大值都将被添加到状态中。状态按圆圈最大值的 x 坐标排序。这是边界看起来如何的示例

如果它们相交,原始扫描线算法允许您在状态中切换段的索引。但在这种情况下,即使两个圆相交,它们也会在给定点之后回到原来的顺序,因为它们是圆而不是连续的线。

如果交点在圆的两半上,我也可以将交点定义为有效的交点。

我愿意就如何定义算法的交集部分提出建议。或者,如果缺少我没有注意到的东西。

0 投票
1 回答
2722 浏览

opencv - 如何在OpenCV中优先计算射线线段相交?并得到它的交点和与原点的距离?

我有 4 条线段,A、B、C 和 D。每条线表示为两个点。例如。线 A 表示为点 A1 和点 A2。

在此处输入图像描述

我想要的是

  1. 点 X,即 A 线与 B 线的交点
  2. X 和 A1 之间的距离(原点)

测试相交时,A 线光线不应

  1. 与线段 D 相交
  2. 与线段 C 相交

我该怎么做呢?

0 投票
1 回答
253 浏览

javascript - 检查正方形是否与JavaScript中的线相交

给定正方形的位置和尺寸,JavaScript 中测试直线是否穿过矩形的方程式是什么?

到目前为止,我尝试过的是:

这适用于尺寸为:

但如果尺寸是这样的,它就行不通了:

在 JavaScript 中检查线段是否与正方形相交的正确公式是什么?

0 投票
1 回答
153 浏览

javascript - 如何找到两条线的相对线的交点

我试图找到两条线的相反线的交点:

在此处输入图像描述

但是我对找到一条线的对立面感到非常困惑。

这是一个jsfiddle,它的点在 0.0-1.0 之间转换

那么如何找到那个交叉点呢?

0 投票
2 回答
550 浏览

python - 为什么我们需要对这些向量进行均质化?

我一直在寻找找到两条线的交点的解决方案。我知道这可以通过找到他们的矢量产品来完成。

我在这里偶然发现了这个例子:

Numpy 和线的交叉点

我已经浏览了这个例子并在几个场景中使用了它,它似乎工作得很好。但是,有三件事我不太明白:

  1. 为什么向量需要是同质的(我们用一列填充的部分)?
  2. 与非均质解决方案(如果有的话)相比,均质解决方案有何不同?
  3. 为什么我们只检查 Z 轴的平行度而不检查 X 和 Y 轴的平行度?

我觉得我错过了一些非常明显的东西,但我无法理解它是什么。