现在的位置: 首页 > 综合 > 正文

两直线求交点

2012年02月12日 ⁄ 综合 ⁄ 共 310字 ⁄ 字号 评论关闭

计算出两直线的一般式参数,分别为a1x + b1 y + c1 = 0和 a2x + b2y + c2 = 0,则其交点为

 

 

int
Calc_Two_Line_Point( double a1, double b1, double c1, double a2, double b2, double c2, OUT double *x, OUT double *y )
{
	double xx, yy;
	double e;

	e = ( a1 * b2 - a2 * b1 );
	if( equ( e, 0 ) )
	{
		return 0;
	}

	yy = ( a2 * c1 - a1 * c2 ) / e;

	if( equ( a2, 0 ) )
	{
		xx = ( -1 * b1 * yy - c1 ) / a1;
	}
	else
	{
		xx = ( -1 * b2 * yy - c2 ) / a2;
	}

	*x = xx;
	*y = yy;

	return 1;
}

抱歉!评论已关闭.