我目前遇到一些小问题,因为我需要找到与我的最小距离相对应的坐标。 例如,我有一个人和三个潜在的站。我需要找到它们之间的距离,然后取最小距离,然后我必须采取与该最小距离相关的坐标。 我发送给你的循环只是为了我的程序的那一部分。
for (newCoordinate = newPoints.begin(); newCoordinate != newPoints.end(); newCoordinate++)// here are my three potential stations
{
distanceBetweenBusCoordinateAndNewPoint = sqrt(pow((busRequest->x - newCoordinate->x), 2) + (pow((busRequest->y - newCoordinate->y), 2)));// find min
distances.push_back(distanceBetweenBusCoordinateAndNewPoint);//add to the vector
}
newdis = min_element(distances.begin(), distances.end());// find the min of min
谢谢你的帮助!
答案 0 :(得分:0)
我会将此视为在std::vector
中找到最小值。
一个变量包含最小距离;初始化为最大值。
两个Point
变量定义与最小距离相关的直线。
这是一个算法:
Calculate distance.
if distance < minimum distance
set Point1 and Point2 to the ordinates used in the distance calculation.
set minimum distance to the calculated distance.
在循环结束时,变量Point1
和Point2
将是与minimum distance
相关联的坐标。