当前位置: 首页>>代码示例>>C++>>正文


C++ Array2D::saveGDAL方法代码示例

本文整理汇总了C++中Array2D::saveGDAL方法的典型用法代码示例。如果您正苦于以下问题:C++ Array2D::saveGDAL方法的具体用法?C++ Array2D::saveGDAL怎么用?C++ Array2D::saveGDAL使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Array2D的用法示例。


在下文中一共展示了Array2D::saveGDAL方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: PerformAlgorithm

int PerformAlgorithm(char alg, std::string filename, std::string output_name, std::string analysis){
  Timer overall,algtimer;

  overall.start();

  Array2D<elev_t> elevations(filename,false);
  
  switch(alg){
    case '1':
      algtimer.start();
      original_priority_flood(elevations);
      algtimer.stop();

      elevations.saveGDAL(output_name,analysis);
      overall.stop();

      cout<<"t Run-time = "<<algtimer.accumulated()<<" s"<<endl;
      cout<<"t Wall-time = "<<overall.accumulated()<<" s"<<endl;
      return 0;


    case '2':
      algtimer.start();
      improved_priority_flood(elevations);
      algtimer.stop();

      elevations.saveGDAL(output_name,analysis);
      overall.stop();

      cout<<"t Run-time = "<<algtimer.accumulated()<<" s"<<endl;
      cout<<"t Wall-time = "<<overall.accumulated()<<" s"<<endl;
      return 0;


    case '3':
      algtimer.start();
      priority_flood_epsilon(elevations);
      algtimer.stop();

      elevations.saveGDAL(output_name,analysis);
      overall.stop();

      cout<<"t Run-time = "<<algtimer.accumulated()<<" s"<<endl;
      cout<<"t Wall-time = "<<overall.accumulated()<<" s"<<endl;
      return 0;


    case '4': {
      Array2D<d8_flowdir_t>  flowdirs;
      algtimer.start();
      priority_flood_flowdirs(elevations,flowdirs);
      algtimer.stop();

      flowdirs.saveGDAL(output_name,analysis);
      overall.stop();

      cout<<"t Run-time = "<<algtimer.accumulated()<<" s"<<endl;
      cout<<"t Wall-time = "<<overall.accumulated()<<" s"<<endl;
      return 0;
    }


    case '5': {
      Array2D<int32_t> pit_mask;
      algtimer.start();
      priority_flood_watersheds(elevations,pit_mask,false);
      algtimer.stop();

      pit_mask.saveGDAL(output_name,analysis);
      overall.stop();

      cout<<"t Run-time = "<<algtimer.accumulated()<<" s"<<endl;
      cout<<"t Wall-time = "<<overall.accumulated()<<" s"<<endl;
      return 0;
    }

    case '6':
      algtimer.start();
      Zhou2016(elevations);
      algtimer.stop();

      elevations.saveGDAL(output_name,analysis);
      overall.stop();

      cout<<"t Run-time = "<<algtimer.accumulated()<<" s"<<endl;
      cout<<"t Wall-time = "<<overall.accumulated()<<" s"<<endl;
      return 0;


    default:
      cerr<<"Unrecognised algorithm choice!"<<endl;
      return -1;
  }
}
开发者ID:r-barnes,项目名称:Barnes2013-Depressions,代码行数:94,代码来源:main.cpp


注:本文中的Array2D::saveGDAL方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。