【问题标题】:How can I solve for the points of an arbitrary trapezoid inscribed inside of a triangle?如何求解三角形内接任意梯形的点?
【发布时间】:2013-09-17 16:41:24
【问题描述】:

给定以下坐标点:

编写算法(以伪代码形式)求解x1x2x3x4

这是我目前所拥有的:

 var y1, y2, y3, y4 = 50, 50, 75, 75;

 var offset1 = tan(60) * y1;

 var offset2 = tan(60) * (y2 - y1);

 var x1 = 200 + offset1;

 var x3 = 200 + offset1 + offset2;

【问题讨论】:

  • 编辑您的帖子并展示您迄今为止所做的尝试会很有帮助。
  • 尝试使用相似三角形:en.wikipedia.org/wiki/…

标签: algorithm coordinates coordinate-systems


【解决方案1】:

考虑直角三角形{ (200,0) (350,300) (350,0) }(见下图)。

由于共享(Xb, Yb)角的大小三角形相似,所以红色边(X,Y)-(Xb,Y)的长度与(Xb,Y)-(Xb,Yb)的长度之比与(Xa,Ya)-(Xb,Ya)与@的长度之比相同987654327@.

由于(X,Y)-(Xb,Y)是你唯一的未知数,你可以通过解方程找出答案

Xb-X   Xb-Xa
---- = -----
Yb-Y   Yb-Ya

因此,

         (Xb-Xa)*(Yb-Y)
X = Xb - --------------
              Yb-Ya

【讨论】:

  • 视觉辅助帮助很大。你是怎么画这个图的?
【解决方案2】:

您知道三角形所有三条线(边)的方程式。 (可以通过顶点推导出来)

只需插入 y 的值并获取 x 坐标。

编辑:如果你知道直线上的两个点 (x1,y1) 和 (x2,y2),那么直线的方程是:

y2-y1   y - y1
----- = ------
x2-x1   x - x1

【讨论】:

  • 是的,我想这就是我想要弄清楚的;如何通过三角形的顶点导出x坐标。
猜你喜欢
  • 2011-07-27
  • 2012-02-29
  • 1970-01-01
  • 2010-12-21
  • 2013-09-22
  • 2019-09-08
  • 1970-01-01
  • 1970-01-01
  • 2011-11-15
相关资源
最近更新 更多