求外接圆心和三角形的两点的第三点
Find third point with circumcenter and two points of a triangle
如何使用 JAVA 计算等腰三角形的第三个点,给定它的两个点和外心。这个会有两种解决方案,如果我从A点和B点得到最短的一个就足够了。
如果AB是等腰三角形(AC=BC)的底,那么解就比较简单了
给定点数A, B, CC
(外心)
圆周半径是
R = Length(CC-A) = Sqrt((CC.X - A.X)^2 + (CC.Y - A.Y)^2)
编辑:更改方向矢量计算以避免歧义:
AB 的中点
M = ((A.X + B.X)/2, (A.Y + B.Y)/2)
从CC到顶点C的方向向量
D = (CC.X - M.X, CC.Y - M.Y)
归一化(单位)方向矢量
uD = (D.X / Length(D), D.Y / Length(D))
顶点C坐标
C = (CC.X + R * uD.X, CC.Y + R * uD.Y)
如何使用 JAVA 计算等腰三角形的第三个点,给定它的两个点和外心。这个会有两种解决方案,如果我从A点和B点得到最短的一个就足够了。
如果AB是等腰三角形(AC=BC)的底,那么解就比较简单了
给定点数A, B, CC
(外心)
圆周半径是
R = Length(CC-A) = Sqrt((CC.X - A.X)^2 + (CC.Y - A.Y)^2)
编辑:更改方向矢量计算以避免歧义:
AB 的中点
M = ((A.X + B.X)/2, (A.Y + B.Y)/2)
从CC到顶点C的方向向量
D = (CC.X - M.X, CC.Y - M.Y)
归一化(单位)方向矢量
uD = (D.X / Length(D), D.Y / Length(D))
顶点C坐标
C = (CC.X + R * uD.X, CC.Y + R * uD.Y)