gpt4 book ai didi

Java - 极坐标。给定一条线段 AB 和一个点 P,找到极线 AB 上最接近点 P 的点

转载 作者:行者123 更新时间:2023-11-30 03:27:32 26 4
gpt4 key购买 nike

我得到一条线段,它有两个端点:(x1,y1) (x2,y2) 和一个随机点:(x3,y3)。

如果我将线段转换为极坐标,我需要能够以编程方式找出线段上最接近点 (x3,y3) 的点。

编辑:我在我的问题中犯了一个错误。问题不在于试图找到三者之间的最近点。问题是……给定一条有起点和终点的直线 AB……找到直线上最接近点 (x3,y3) 的任何点。

最佳答案

我想这已经太晚了,以防万一有人需要它,我只是转换回笛卡尔坐标,这样公式更容易看:

 public static double distance(double r1,double t1,double r2,double t2,double r3,double t3)
{
double x1 = (r1*Math.cos(t1));
double x2 = (r1*Math.cos(t2));
double x3 = (r1*Math.cos(t3));
double y1 = (r1*Math.sin(t1));
double y2 = (r1*Math.sin(t2));
double y3 = (r1*Math.sin(t3));

return Math.abs((x2-x1)*(y1-y3)-(x1-x3)*(y2-y1))/Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
}

关于Java - 极坐标。给定一条线段 AB 和一个点 P,找到极线 AB 上最接近点 P 的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18006011/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com