C語言平面幾何18-三角形的內心和內切圓

三角形的內心,就是其內切圓的圓心。三角形三內角平分線相交於一點,該點即爲內心。

/* 三角形的內心 */
Point Incenter(Triangle t)
{
	Line l1 = AngleBisector(t.A, t.B, t.C);
	Line l2 = AngleBisector(t.B, t.A, t.C);
	int flag;
	return LinesIntersection(l1, l2, &flag);	// flag返回0,兩直線平行
}

/* 三角形的外接圓 */
Circle InCircle(Triangle t)
{
	Line l = LineMake(t.A, t.B);
	Point centre = Incenter(t);
	Circle c;
	c.centre = centre;
	c.radius = DistanceOfPointToLine(centre, l);	// 點到直線的距離
	return c;
}

 

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