考虑到它们的功能,如何在JavaScript中找到两条线的交集?

时间:2018-03-19 17:14:18

标签: javascript math geometry

我意识到这更像是一个数学问题,但我没有数学大脑。我特别感兴趣的是在JavaScript中解决这个问题,仅针对这种特殊情况。如果有人可以通过简单的功能为我做这件事,我可以根据需要自己概括解决方案。

我在图表上有两行。一个是线性的,直接从(0,0)到(x,x):

// Line 1
var f1 = function(x) {
    return x;
};

另一条线是弯曲的,可以像这样绘制:

// Line 2
var f2 = function(x) {
    var alpha = 0.3;
    return (1 - alpha) *
        (1.4 *
         1.6 ** alpha) *
        (x ** -alpha);
};

只给出这些函数,我可以编写一个函数来给出这两条线相交的点的坐标吗?

我查看了algebra.js之类的内容,但我自己却未能提出解决方案。

1 个答案:

答案 0 :(得分:2)

衍生过程: enter image description here

所以,对于alpha= a= 0.3我们有:

k= (1-alpha) * 1.4 * 1.6**alpha = 1.12839738

x= k ** (1/(1 + alpha)) = 1.09737595

所需的交点是{x,f(x)} = {1.0974,1.0974}