0
点赞
收藏
分享

微信扫一扫

[C++] 点到直线的最大、最小距离

腾讯优测 2023-12-22 阅读 33


1)求出点到直线的距离,并存入容器dis中,已知直线的系数a,b,c已知:

vector<double>dis;
for(int i =0;i<size;i++)
 {
	double d1 = a * points.at(i).x+b * points.at(i).y+c;
	double d2 = sqrt(a*a+b*b);
	double d = sqrt(d1/d2*d1/d2);
	dis.push_back(d);
 }

注:points是一个存储多个点的容器。

2)求出最大距离和最小距离。

double min,max;
max = min = dis.at(0);
for (int i = 0; i < size; i++)
	{	
		if (max < dis.at(i))
			max = dis.at(i);
		if (min > dis.at(i))
			min = dis.at(i);	
	}


举报

相关推荐

0 条评论