您好,欢迎光临本网站![请登录][注册会员]  
文件名称: 多块三维点云打开
  所属分类: C/C++
  开发工具:
  文件大小: 5mb
  下载次数: 0
  上传时间: 2012-04-20
  提 供 者: ppotte******
 详细说明: while(!feof(fp)) { //检索文件开头 mbb.m_PointsList.clear(); fscanf(fp,"%d",&mbb;.m_row); if(mbb.m_row==0) continue;//继续到while语句执行,没有就遇到EOF。 fscanf(fp,"%d",&mbb;.m_column); for(i=0;i<3;i++) { fscanf(fp,"%lf",mbb.m_dTrans+i);//以浮点型lf读入 } for(i=0;i<9;i++) { fscanf(fp,"%lf",mbb.m_dLrMatrix+i); } for(i=0;i<16;i++) { fscanf(fp,"%lf",mbb.m_dGrMatrix+i); } bHaveRGB = IsHaveRGBptx(fp); bool flag = true; Volume = mbb.m_column * mbb.m_row; ptSum = ptSum + Volume; for(i=0;i < Volume;i++) { fscanf(fp,"%lf",&tx;); fscanf(fp,"%lf",&ty;); fscanf(fp,"%lf",&tz;); fscanf(fp,"%lf",&tgray;); if(bHaveRGB) { fscanf(fp,"%lf",&tR;); fscanf(fp,"%lf",&tG;); fscanf(fp,"%lf",&tB;); } else { tR=tgray; tG=tgray; tB=tgray; } if(!(tx==0.0 && ty==0.0 && tz==0.0 && tgray==0.500000)) { double temp_vector[4]={tx,ty,tz,1};//点云的每个点向量 CMatrix temp_matrix1=CMatrix(1,4,temp_vector),temp_matrix; CMatrix dGr_matrix=CMatrix(4,4,mbb.m_dGrMatrix); temp_matrix=temp_matrix1*dGr_matrix; double*pt=temp_matrix.GetData(); ptxObj.dX=pt[0]; ptxObj.dY=pt[1]; ptxObj.dZ=pt[2]; ptxObj.gray=tgray; ptxObj.R=tR; ptxObj.G=tG; ptxObj.B=tB; if (flag) { x_min=temp_matrix.GetElement(0,0); x_max=temp_matrix.GetElement(0,0); y_min=temp_matrix.GetElement(0,1); y_max=temp_matrix.GetElement(0,1); z_min=temp_matrix.GetElement(0,2); z_max=temp_matrix.GetElement(0,2); flag=false; } x_min = temp_matrix.GetElement(0,0) <= x_min ? temp_matrix.GetElement(0,0) : x_min ; y_min = temp_matrix.GetElement(0,1) <= y_min ? temp_matrix.GetElement(0,1) : y_min ; z_min = temp_matrix.GetElement(0,2) <= z_min ? temp_matrix.GetElement(0,2) : z_min ; x_max = temp_matrix.GetElement(0,0) >= x_max ? temp_matrix.GetElement(0,0) : x_max ; y_max = temp_matrix.GetElement(0,1) >= y_max ? temp_matrix.GetElement(0,1) : y_max ; z_max = temp_matrix.GetElement(0,2) >= z_max ? temp_matrix.GetElement(0,2) : z_max ; mbb.m_PointsList.push_back(ptxObj); ValidPointsNum++; } } int num=mbb.m_PointsList.size(); Blocknum++; mbb.DX1=x_min;mbb.DY1=y_min;mbb.DZ1=z_min; mbb.DX=x_max;mbb.DY=y_max;mbb.DZ=z_max; mbb.MBV_ID=Blocknum; mbbList.m_ptxBlockList.push_back(mbb); // mbbList.m_ptxMBBList.push_back(mbb);*/ //break; } fclose(fp); IsHaveData=true; x_center=(mbb.DX1+mbb.DX)/2.0; y_center=(mbb.DY+mbb.DY1)/2.0; z_center=(mbb.DZ+mbb.DZ1)/2.0; x_size=(mbb.DX-mbb.DX1)/2.0; y_size=(mbb.DY1-mbb.DY)/2.0; z_size=(mbb.DZ1-mbb.DZ)/2.0; //Display(); //OnDestroy() ; } ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 输入关键字,在本站1000多万海量源码库中尽情搜索: