如果我知道这样的顶点(红色):
Drawing Lines is Hard
Line Joins
我如何才能从已知顶点的上方确定这些未知顶点以下的顶点,这些顶点将线作为斜接彼此连接?
最佳答案
首先,请查看此Q/A。
您的任务是相同的,只是简单一点,因为所有段的线宽都相同。
基本上,您需要计算D点的坐标
A,B,C和线宽d的坐标是已知的。
1)使用Law of Cosines计算角度α,如下所示
How to calculate an angle from three points?
2)然后,您可以找到向量u和v的长度L:
L =|u| =|v| = d / sin α;
3)计算向量u和v的向量分量:
ux = L * (Ax – Bx) / |AB|;
uy = L * (Ay – By) / |AB|;
| AB | -从点A和点B的坐标可以轻松找到向量AB的长度。
vx = L * (Cx – Bx) / |BC|;
vy = L * (Cy – By) / |BC|;
4)最后找到点D的坐标:
Dx = Bx + ux + vx;
Dy = By + uy + vy;
5)对您的所有线点都这样做。