问题标签 [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 回答
4830 浏览

r - R:查找两个向量的交集

我有两个向量。我需要找到这两者之间的交集,并画出很好的情节。

因此,这是一个非常简单的数据框示例:

现在,我可以绘制它们并手动找到交点,但是你可以让 R 计算这两条线之间的交点吗?

数据可能会发生巨大的跳跃,线条可以从非常台阶变为几乎水平。

0 投票
1 回答
571 浏览

opencv - 检测网络摄像头馈送opencv中2行之间的交点

我正在尝试检测网络摄像头提要中两条线之间的交点。这是我已经拥有的屏幕截图 在此处输入图像描述

我试图找到我的红线和绿线之间的交点。

这是我已经拥有的代码

谢谢大家的关注,期待大家的回复

更新:感谢 Sebastian Schmitz,我解决了它。这是我的代码

我将 checkintersection 函数的调用放在 trackobject 函数中,因此我不必将变量 posY 更改为导致许多错误的全局变量。

谢谢大家的回复

0 投票
4 回答
1932 浏览

c++ - 仅使用整数计算两条线的交点

我可以很容易地计算出两条线的交点。如果我从两个顶点开始:

(x1,y1)
(x2,y2)

我可以通过做计​​算斜率(y1-y2)/(x1-x2),然后计算截距

y1 - slope * x1

然后再做一次,所以我必须设置斜率和截距,然后这样做:

x = (intercept2 - intercept1) / (slope1 - slope2)
y = slope1 * x + intercept1
(免责声明:这甚至可能不起作用,但我已经得到了一些非常接近它的东西,它说明了我的一般技术)

这只适用于小数或非整数的数据类型。说顶点是:

(0,1)
(10,2)

计算斜率会导致(1-2)/(0-10),哪个-1/-10不是1/10,哪个是0

如何获得仅使用整数产生有效结果的代码?

编辑:我根本不能使用花车. 没有铸造,什么都没有。此外,值的上限为 65535。而且一切都是无符号的。

0 投票
2 回答
1226 浏览

java - libGdx:Intersector.intersectLines(似乎)返回错误的结果?

我找不到我的错误,所以看起来像 intersecLines() 方法,你可以猜到它检查两条线是否有一个或多个共同点,返回错误的结果。

我在蛇类游戏中使用它,这个方法应该检查这个“蛇路径”的第一个和第二个点之间的线是否相交与蛇组成的其他线之一。

参数为: Vector2 first Point of first line;Vector2 第一行的第二个点;Vector2 第二行的第一个点;Vector2 第二行的第二个点;将设置为相交点的 Vector2。

对于不熟悉GDX的朋友来说,它是一个java跨平台开发的框架,大部分方法都是openGL ES方法的实现。下面是 Intersector 类的 api 参考:http: //libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/math/Intersector.html

0 投票
3 回答
1877 浏览

c - 如何在C中找出两条共面线的交点

我有两条位于同一平面上的 3D 线。line1由点 ( x1, y1, z1) 及其方向向量 ( a1, b1, c1)line2定义,而由点 ( x2, y2, z2) 及其方向向量 ( a2, b2, c2) 定义。那么两条线的参数方程是

如果两个方向向量都是非零的,我们可以通过将上面方程的右侧相等并从三个中的任何两个求解t和来轻松找出相交节点的位置。s但是,有可能a1 b1 c1 a2 b2 c2并非都是非零的,因此我无法以相同的方式求解这些方程。我目前的想法是逐案处理这个问题,比如

但是,总共有这么多的案例,执行会变得混乱。有什么好的方法可以解决这个问题吗?有什么参考吗?非常感谢!

0 投票
0 回答
2812 浏览

algorithm - 快速线段相交

要找到许多线段的所有交点,可以检查 O(n^2) 中的每一对可能的交点。

还有著名的Bentley-Ottmann_algorithm,它使用扫描线方法来更有效地运行。

有没有其他有效的算法来找到所有的交叉点?

充其量,对已知和鲜为人知的算法的调查将非常有用。

0 投票
1 回答
902 浏览

matlab - 如何获得直线矩形相交段?

我想找到代数重建方法的权重矩阵。为此,我必须找到与网格的线交点。我可以找到直线与直线的直接交点,但我必须明智地存储相交的线段网格数。所以假设如果在网格中第一个正方形不与网格相交,那么在权重矩阵的第一个元素上放置零。

这是我为线交点尝试的代码:

我有一条线,由参数定义m, hy = m*x + h这条线穿过网格(即像素)。

对于网格的每个正方形(a, b)(即 square [a, a+1]x[b, b+1]),我想确定给定的线是否穿过这个正方形,如果是,那么正方形中线段的长度是多少,以便我可以构造权重矩阵代数重建方法必不可少。

0 投票
2 回答
1555 浏览

python - 如何拾取在圆内或与圆相交的线段?

我有几组线段AB1, AB2, ... ABn。每个都有(Ax, Ay), (Bx, By)坐标。然后,我有一个中心坐标(Cx,Cy)和r(半径)的圆。

问题: 如何检测哪条线段位于圆上(如图)?图中描述.

我试图用 Python 来表达我的想法:

提前谢谢你的帮助。

0 投票
6 回答
29721 浏览

python - 找到点和线段(不是线)之间的最短距离

我有一组线段(不是线) , (A1, B1), (A2, B2), (A3, B3), 其中A,B是线段的终点。每个AB都有(x,y)坐标。

问题: 我需要知道 和 之间的最短距离point O如图line segments所示,在代码行中实现。我真正能理解的代码要么是伪代码,要么是 Python。

代码:我试图用这段代码解决问题,不幸的是,它不能正常工作。

数字

提前致谢。

0 投票
2 回答
725 浏览

computational-geometry - 寻找直线之间交点的算法

我想找到直线(无限)之间的所有交点。我正在尝试更改适用于线段集的 Bentley-Ottmann 算法,但我不知道如何正确表示无限直线。第一个想法是确定可以模拟每条线的开始和结束的边界点,但我认为这是不正确的解决方案(如何找到“无限”点?)。下一个想法是使用方程来表示直线,但我不知道我是否可以使用 Bentley-Ottmann 算法(如何对线进行排序以及将事件添加到调度中?)。更重要的是,我可能需要使用除法来检测两条线的交点(同时求解一组方程)。我想避免它。

你能给我一些建议吗?

非常感谢