三角形的內心,就是其內切圓的圓心。三角形三內角平分線相交於一點,該點即爲內心。
/* 三角形的內心 */
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;
}