golang实现已知三角形三点坐标,求三角形面积

Posted zheng123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang实现已知三角形三点坐标,求三角形面积相关的知识,希望对你有一定的参考价值。

代码如下:

func GetTriangleAreaByVector(x vector.Vector3,y vector.Vector3,z vector.Vector3) float64 {
    //根据三角形三个点坐标求面积
    //先算三角形三个边的长度
    a := vector.GetDistance(x,y)
    b := vector.GetDistance(x,z)
    c := vector.GetDistance(y,z)
    s := (a + b + c) / 2
    area := math.Sqrt(s*(s-a)*(s-b)*(s - c))
    return area
}

//求两点间距离
func GetDistance(a Vector3,b Vector3) float64{
if a==b {
return 0
}else {
return math.Sqrt(math.Pow(a.X - b.X, 2) + math.Pow(a.Y - b.Y, 2) + math.Pow(a.Z - b.Z, 2))
}
}

type Vector3 struct {
X float64 `json:"x"`
Y float64 `json:"y"`
Z float64 `json:"z"`
}
 

此函数的传入参数是三角形三个点的坐标。输出三角形面积

 
















以上是关于golang实现已知三角形三点坐标,求三角形面积的主要内容,如果未能解决你的问题,请参考以下文章

已知多面体(全是三角形)的顶点坐标,如何判断空间一点是不是在多面体内?

Maximal Area Quadrilateral CodeForces - 340B || 三点坐标求三角形面积

C#编程 已知三个点求组成三角形的周长和面积

C#编程 已知三个点求组成三角形的周长和面积

已知三点坐标,怎么求内切圆的圆心

已知三点如何求圆心坐标和半径