gpt4 book ai didi

java - 给定窗框内的两个点(x0,y0 和 x1,y1) - 您将使用什么方法将一条线延伸到窗口的边缘?

转载 作者:行者123 更新时间:2023-11-30 07:10:02 25 4
gpt4 key购买 nike

对于介绍计算机图形论文,我正在努力使用相同的渐变将由两个点定义的线延伸到窗口边缘。这很难解释,因此这张图片可能会有所帮助。

IMG

虚线是未由线(x0,y0 到 x1,y1)定义的部分。

我们尝试了一些方法,使用直线的隐式方程 (ax+bx+c = 0) 并找到与窗框的所有四个边缘的交点。

非常感谢任何帮助!

最佳答案

您的第一项工作是检查 (x0, y0)(x1, y1)是不同的点。

非垂直线的隐式方程实际上是y = mx + c其中梯度 m(y1 - y0) / (x1 - x0) ,和cy上的拦截轴,可以通过应用 c = y1 - mx1 找到或c = y0 - mx0 .

获得 m 的值后和c ,您可以应用直线方程来找到 y给定你的一组 x 的点点(或反之亦然),以便将线绘制到所需的长度。

垂直线的特征是x0等于x1 。在这种情况下,您的绘图只是一条穿过 x 的线。轴位于x0 .

另请注意,该线只会与 2 条边相交(除非该线与其中一条边共线)。

关于java - 给定窗框内的两个点(x0,y0 和 x1,y1) - 您将使用什么方法将一条线延伸到窗口的边缘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39389288/

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