当前位置:编程学习 > C#/ASP.NET >>

已知三角形三边长度及两点坐标,求第三点坐标

直角三角型abc,角abc=90度, 已知三角形三边长度,A点坐标A(Ax,Ay),C点坐标C(Cx,Cy),求第B点坐标.
上传不了图,手拼了一个,见谅。

如图:

             C(Cx,Cy)
               | 
             / |
            /  |
           /   |
          ------  B(Bx,By)
  A(Ax,Ay) --------------------编程问答-------------------- 这是初中平面几何家庭作业么~~

--------------------编程问答-------------------- 都知道两个点,以及那个角是直角了。。。算都不用算啊。。。。
b的坐标不就是Cx,Ay么。。。。 --------------------编程问答-------------------- 很明显BY=AY BX=AX+长度,难道不是? --------------------编程问答--------------------

1   Math.Pow(Bx-Ax,2)+Math.Pow(By-Ay,2)=Math.Pow(AB,2)
2   Math.Pow(Bx-Cx,2)+Math.Pow(By-Cy,2)=Math.Pow(BC,2)
--------------------编程问答--------------------
引用 2 楼 starfd 的回复:
都知道两个点,以及那个角是直角了。。。算都不用算啊。。。。
b的坐标不就是Cx,Ay么。。。。


同学 你要考虑坐标系旋转的问题
如果直角三角形的话 直接设点坐标
然后用勾股定理两边平方和等于斜边平方算

如果不是直角三角形的话
你需要用两个已知的点和变算出向量夹角
然后再用其他的普通三角形的公式算另外的点
具体公式维基百科上查吧 呵呵 --------------------编程问答--------------------
引用 3 楼 xianfajushi 的回复:
很明显BY=AY BX=AX+长度,难道不是?


明显不是 你在平面坐标系里面画个旋转过的直角三角形
就不满足你的情况喽~~~~~~ --------------------编程问答--------------------
引用 5 楼 lhx527099095 的回复:
Quote: 引用 2 楼 starfd 的回复:

都知道两个点,以及那个角是直角了。。。算都不用算啊。。。。
b的坐标不就是Cx,Ay么。。。。


同学 你要考虑坐标系旋转的问题
如果直角三角形的话 直接设点坐标
然后用勾股定理两边平方和等于斜边平方算

如果不是直角三角形的话
你需要用两个已知的点和变算出向量夹角
然后再用其他的普通三角形的公式算另外的点
具体公式维基百科上查吧 呵呵


我回完贴就发现这问题了。。。具体楼主画的太标准了,就是xy轴重合。。。。 --------------------编程问答--------------------
引用 6 楼 lhx527099095 的回复:
Quote: 引用 3 楼 xianfajushi 的回复:

很明显BY=AY BX=AX+长度,难道不是?


明显不是 你在平面坐标系里面画个旋转过的直角三角形
就不满足你的情况喽~~~~~~



根据欧几里得距离公式

1   Math.Pow(Bx-Ax,2)+Math.Pow(By-Ay,2)=Math.Pow(AB,2)
2   Math.Pow(Bx-Cx,2)+Math.Pow(By-Cy,2)=Math.Pow(BC,2)

求1、2
--------------------编程问答-------------------- 根据楼主描述条件和画可以直接计算不用角度函数计算而且并没说其他条件和问题。 --------------------编程问答--------------------
引用 8 楼 hwenycocodq520 的回复:
Quote: 引用 6 楼 lhx527099095 的回复:

Quote: 引用 3 楼 xianfajushi 的回复:

很明显BY=AY BX=AX+长度,难道不是?


明显不是 你在平面坐标系里面画个旋转过的直角三角形
就不满足你的情况喽~~~~~~



根据欧几里得距离公式

1   Math.Pow(Bx-Ax,2)+Math.Pow(By-Ay,2)=Math.Pow(AB,2)
2   Math.Pow(Bx-Cx,2)+Math.Pow(By-Cy,2)=Math.Pow(BC,2)

求1、2


这个要怎么解? --------------------编程问答-------------------- --------------------编程问答-------------------- 你这是来考我们初中毕业了没么? --------------------编程问答--------------------
引用 10 楼 dhxyxiaofeng 的回复:
Quote: 引用 8 楼 hwenycocodq520 的回复:

Quote: 引用 6 楼 lhx527099095 的回复:

Quote: 引用 3 楼 xianfajushi 的回复:

很明显BY=AY BX=AX+长度,难道不是?


明显不是 你在平面坐标系里面画个旋转过的直角三角形
就不满足你的情况喽~~~~~~



根据欧几里得距离公式

1   Math.Pow(Bx-Ax,2)+Math.Pow(By-Ay,2)=Math.Pow(AB,2)
2   Math.Pow(Bx-Cx,2)+Math.Pow(By-Cy,2)=Math.Pow(BC,2)

求1、2


这个要怎么解?

撸主,你不会初中没读过吧。
B的坐标集合就是以AC中点为圆心二分之一AC为半径的圆。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,