Javascript 从较小的矩形构造矩形

Javascript 从较小的矩形构造矩形,javascript,math,screen,coordinates,rectangles,Javascript,Math,Screen,Coordinates,Rectangles,在过去的几个小时里,我一直在尝试从任何角度上的较小矩形构造一个矩形;我想象着这样做 [其中黑线表示构造矩形的轮廓,红线表示构造矩形的三角形。红色矩形也必须是完全直的。] 显然,除非我在渲染时有一个非常小的增量,否则它看起来不是很明确,但最终产品可能看起来像一个预定角度的矩形 屏幕设置为左上角为(0,0),右下角为(1,1)。我该怎么做?不是专门寻找实际代码、伪代码,甚至不是解释,可能是一些数学。。太棒了!提前感谢。这里有一些几何图形供您参考: 如果你的矩形是完全对齐的,你可以只画一个大矩形,你就

在过去的几个小时里,我一直在尝试从任何角度上的较小矩形构造一个矩形;我想象着这样做

[其中黑线表示构造矩形的轮廓,红线表示构造矩形的三角形。红色矩形也必须是完全直的。]

显然,除非我在渲染时有一个非常小的增量,否则它看起来不是很明确,但最终产品可能看起来像一个预定角度的矩形


屏幕设置为左上角为(0,0),右下角为(1,1)。我该怎么做?不是专门寻找实际代码、伪代码,甚至不是解释,可能是一些数学。。太棒了!提前感谢。

这里有一些几何图形供您参考:

如果你的矩形是完全对齐的,你可以只画一个大矩形,你就赢了

如果它在任何角度都被忽略,你可以用简单的方程来表示这些线

y=m*x+c

插入两条边的x和y来计算m和c(实际上这是一个非常简单的过程),或者可以计算m=tan(角度)

然后你可以“只是”沿着y坐标走下去,通过在方程中插入y、c和m值并求解x,在属于矩形的左右线上得到相应的x位置

如果你看你的矩形图片,你可以看到基本上有三个部分:第一部分从底部到左下角。它沿着长边向左移动,并在左侧遇到一条边。之后,沿着两条短边向右走,然后遇到右上角的边,然后向上走到左上角(当然也可以从上往下走)

您需要仔细检查是否已到达左侧或右侧两条线之间的边缘,并在适当时刻切换m和c的值


我认为这将使您接近一个解决方案

您能忍受代码的混乱吗?请用更简单的方式解释,让更多的人理解。当然,我可以试试。嗯,基本上我无法旋转一个矩形,所以我假设我可以从较小的长而薄的矩形中构造一个矩形,以形成所需角度的矩形。为了制作一个定义好的矩形,这样你就看不到较小矩形的边缘了,我要让它们的y尺寸非常小。希望这张图片能有所帮助:它展示了组成它的更大的矩形,如此之大,以至于你可以看到它们的边缘创建了一些奇怪的阶梯矩形。构成它的矩形也不能旋转。看到“javascript”标记,你是在浏览器中这样做的吗?不,我不是。对不起,我的意思是说,基本上,在两条直线上找到一个点,沿着它们的y轴,一直走到不能再高的地方,然后切换到另外两个?在我进行的过程中渲染矩形?是的,听起来你像是理解了我想要表达的方式:)开始工作了。我忘了把这个设为我接受的答案。谢谢