提问人:Brendan Sadaka 提问时间:8/11/2023 最后编辑:jonrsharpeBrendan Sadaka 更新时间:8/14/2023 访问量:55
求多边形内角与圆周长之间的距离
Find distance between inside corner of polygon and perimeter of circle
问:
我正在尝试计算图像中示例中红线的长度。我掌握的信息是:
- 多边形所有点的坐标
- 圆的半径
- 每个角的角度
我想放置一个具有给定半径的圆,尽可能靠近多边形的角,这意味着圆和角坐标之间的外切线是圆靠边的位置 - 如提供的图像所示。
除了圆的半径之外,我不知道如何计算那一点额外的空间,以防止圆与边缘相交。
答:
0赞
ControlAltDel
8/11/2023
#1
好的,这是你要做的:
找到在圆接近的拐角处形成的角度。您可以在多边形中的特定线段上使用 arctan(arctan2) 来执行此操作。从角度 2 中减去角度 1,然后除以 2,您就得到了接近角。
现在做tan(接近角 - 更小的角度),这将给你斜率。
沿接近角的距离将是半径/斜率。
这应该有效
1赞
Brendan Sadaka
8/14/2023
#2
下图显示了我为弄清楚它所做的工作。 我意识到在顶点、圆的中心和圆与多边形一侧接触的点之间总会形成一个直角三角形。
我知道圆接近的角度,也知道圆的半径,所以我既有边长,也有角度可以工作。
圆心到顶点的距离可以使用余弦定律来计算。
评论
1赞
Darryl Noakes
8/15/2023
是的,那是因为边必须与圆相切,并且切线始终垂直于半径。
评论