gpt4 book ai didi

c++ - 直线x和y n-截点/C++

转载 作者:太空狗 更新时间:2023-10-29 21:29:49 26 4
gpt4 key购买 nike

谁能帮帮我。我了解直线方程以及如何求解纸上的零截距,但我无法将其转换为代码。更具体地说,我需要用两个不同的函数计算一条线截取任何给定 X 或 Y 坐标的点...

double CalcLineYIntercept(LINE *line, double yintercept) { }
double CalcLineXIntercept(LINE *line, double xintercept) { }

因此,CalcLineYIntercept 将返回直线截取 yintercept 的点的 X 坐标(不一定为零)。我在将代数方程式转换为代码时遇到了麻烦(是的,我知道 C++ 是一种代数语言,但代码本身并不能简单地隔离变量)。有没有一种简单的方法可以做到这一点?

非常感谢

最佳答案

double CalcLineYIntercept(LINE *line, double yintercept) 
{
dx = line->x2 - line->x1;
dy = line->y2 - line->y1;

deltay = yintercept - line->y2;
if (dy != 0) {
//dy very close to 0 will be numerically unstable, account for that
intercept = line->x2 + (dx/dy) * deltay;
}
else {
//line is parrallel to x-axis, will never reach yintercept
intercept = NaN;
}
}

反转 x 和 y 得到另一个函数。

关于c++ - 直线x和y n-截点/C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4051515/

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