Point* Cluster::FindClosestPoint(std::vector<Point*>* points){ std::vector<Point*>::iterator iter; double dist; Point* closest; iter=points->begin(); Point *p = (Point*)*iter; double minDist = Calc2DDistance(p); closest = p; for (iter=points->begin(); iter<points->end();iter++) { p = (Point*)*iter; dist = Calc2DDistance(p); if (dist < minDist) { closest = p; minDist = dist; } } return p; }
point* clusterfnc::FindClosestpoint(clusterdat* c1, point** pnts,int count){ double dist = 999999; double tempdist = 0; point* closest = 0; int index = 0; for (index=0; index<count; index++) { if (!(pnts[index]==0)) { tempdist = Calc2DDistance(c1,pnts[index]); if (tempdist<dist) { closest = pnts[index]; dist = tempdist; } } } return closest; }