首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >计算不准确的三角形顶点位置对三角形边长的潜在影响

计算不准确的三角形顶点位置对三角形边长的潜在影响
EN

Stack Overflow用户
提问于 2010-04-10 07:01:46
回答 1查看 157关注 0票数 4

我不确定如何解决以下问题:

我有一个三角形,三个已知的顶点位置A,B,C中的每一个都是不准确的,这意味着它们都可以偏离到特定的已知半径rA,rB,rC到任意方向。

给定这样一个三角形,我想计算三角形的两个特定边长的差(例如边a和边b的长度之间的差)在最坏的情况下可能会发生多大的变化。这个问题有什么很好的数学解决方案吗?

我想到的天真的方法是计算所有的360^3角度组合,并测量每种情况的边缘差异,这是一个相当高的开销。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-04-10 10:24:45

下图说明了该解决方案:

MinMaxEdgeDiff.png http://www.freeimagehosting.net/uploads/b0f0f84635.png

需要注意的几点:

  1. 线段AC1和BC1表示|BC| - |AC|的最大可能值,而线AC2和BC2表示可能的最小值。在C1,与圆的切线必须与AC1和BC1的角度一分为二;C2也是如此。
  2. AC1(当通过虚线延伸时)和AC2都通过A。同样,BC1和BC2通过B。任何偏离中心的情况下,直线都将变得最长或最短。
  3. 最大和最小的区别是:

d1 = |BC1| - |AC1| = (|B->C1| + _rB_) - (|A->C1| - _rA_) = |B->C1| - |A->C1| + (_rA_ + _rB_) d2 = |BC2| -| |AC2| = (|B->C2| - _rB_) - (|A->C2| + _rA_) = |B->C2| - |A->C2| - (_rA_ + _rB_)

因此,最大和最小差异之间的差异是:

d1 - d2 = (|B->C1| - |A->C1|) - (|B->C2| - |A->C2|) + 2*(_rA_ + _rB_)

最后一点提示,可以通过从中心A和B求解,然后添加半径rA和rB来找到解决方案。因此,可以通过仅改变C的边界圆周围的单个角度来迭代地发现C1和C2的位置(并且分开,因为它们彼此独立)。

我怀疑有一个分析的解决方案。这是一个有趣的问题,但还不足以让我去挑战这个特殊的任务。抱歉的。;-)

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2612568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文