C语言平面几何19-三角形的重心和垂心

三角形的重心:三角形三条中线的交点。该交点到顶点的距离是到对边中点距离的2倍。

三角形的垂心:三角形三条高的交点。

/* 三角形的重心 */
Point BaryCenter(Triangle t)
{
	// 三条中线的交点
	Point m = MiddlePoint(t.B, t.C);
	Line l1 = LineMake(t.A, m);
	
	Point n = MiddlePoint(t.A, t.B);
	Line l2 = LineMake(t.C, n);
	
	int flag;
	return LinesIntersection(l1, l2, &flag);
}

/* 三角形的垂心 */
Point OrthoCenter(Triangle t)
{
	Line a = LineMake(t.B, t.C);
	Line b = LineMake(t.A, t.C);
	
	// 垂点
	Point m = VerticalPoint(t.A, a);
	Point n = VerticalPoint(t.B, b);
	
	Line l1 = LineMake(t.A, m);
	Line l2 = LineMake(t.B, n);
	
	int flag;
	return LinesIntersection(l1, l2, &flag);
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章