#include#include #include using namespace std; struct Point { int id; float x,y,z; Point(int _id,float _x,float _y,float _z):id(_id),x(_x),y(_y),z(_z){} }; struct Triangle { Point p1,p2,p3; }; class PointCloud { public: bool readFile(char *filename); //void PointMatch(const PointCloud& pc1,const PointCloud &pc2); vector pData; int r,g,b; }; bool PointCloud::readFile(char *filename) { if(filename==NULL)return false; FILE *fp=fopen(filename,"r"); if (!fp) { printf("Load file %s failedn", filename); return false; } char buffer[100]; int count=0; while(!feof(fp)) { fgets(buffer, 300, fp); float x,y,z; sscanf_s(buffer,"%f%f%f",&x,&y,&z); Point p(count++,x,y,z); pData.push_back(p); } pData.pop_back(); } float calDis(const Point &p1,const Point &p2) { return sqrt((p2.x-p1.x)*(p2.x-p1.x)+(p2.y-p1.y)*(p2.y-p1.y)+(p2.z-p1.z)*(p2.z-p1.z)); } void PointMatch(const PointCloud& pc1,const PointCloud &pc2) { for (int i=0;i 总结 以上就是本文关于c语言同名标靶点自动匹配算法实现实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!



