历史地理知识|iband头带在哪里买
iband+头带真的能控制梦吗国外众筹网站:kickstarter 。 现在一个大概200美元(不包括运费和关税)
【历史地理知识|iband头带在哪里买】注:购买需要双币visa信用卡 , 大学生可在浦发银行申请青春校园双币visa信用卡;
可控制梦境的头戴 , 是怎么实现控制梦境的?用 gdal库 。
库参考和下载在这:
下面这个文件瞎写的 , 你可以修改下 。 。 需要加装库 , 头文件和lib
//tif.h
enum
{
TOPX = 0,
CELLX,
XXXX,
TOPY,
XXXXX,
CELLY,
GeoTfInfoArrCount
};
template<typename type, int nBand =1>
class CTifFileOp
{
public:
CTifFileOp(string FilePath=string(""));
virtual ~CTifFileOp();
double get_nodata_value()
{
return m_pDataset->GetRasterBand(nBand)->GetNoDataValue();
}
int GetGeoTransform(double* gt)const;
int ChangeFile(string strPath);
void ReadTiffDataset(type * DataGet, int begRow = 0, int begCol = 0, int numRows = 1, int numCols = 1)const;
void WriteTiffDataset(type * DataGet, int begRow = 0, int begCol = 0, int numRows = 1, int numCols = 1);
void ReadTiffDataset(vector<type> & DataGet, int begRow = 0, int begCol = 0, int numRows = 1, int numCols = 1)const
{
DataGet.clear();
DataGet.resize(numCols*numRows);
ReadTiffDataset(&*DataGet.begin(), begRow, begCol, numRows, numCols);
}
size_t GetColNum()
{
openDs();
return m_pDataset->GetRasterXSize();
}
size_t GetRowNum()
{
openDs();
return m_pDataset->GetRasterYSize();
}
//获取波段数
int GetRasterCount()
{
openDs();
return m_pDataset->GetRasterCount();
}
//获取坐标系信息
const char * GetProjectionRef()
{
openDs();
return m_pDataset->GetProjectionRef();
}
//获取数据类型
GDALDataType GetDataType(int iRaster = nBand)
{
openDs();
return m_pDataset->GetRasterBand(iRaster)->GetRasterDataType();
}
void GetAllData(vector<type> & DataGet)
{
// double geoInfo[GeoTfInfoArrCount] = { 0 };
// GetGeoTransform(geoInfo);
openDs();
ReadTiffDataset(DataGet, 0, 0, GetRowNum(), GetColNum());
}
private:
string m_strFile;
GDALDataset *m_pDataset = nullptr;
bool m_bWrite = false;
private:
void openDs(GDALAccess openMode = GA_ReadOnly);
bool CanWrite()const
{
return m_bWrite;
}
};
template<typename type, int nBand>
int CTifFileOp<type, nBand>::GetGeoTransform(double* gt) const
{
// openDs();
m_pDataset->GetGeoTransform(gt);
return 0;
}
template<typename type, int nBand>
CTifFileOp<type, nBand>::CTifFileOp(string FilePath)
:m_strFile(FilePath), m_pDataset(nullptr)
{
openDs();
}
template<typename type, int nBand>
CTifFileOp<type, nBand>::~CTifFileOp()
{
if (m_pDataset)
{
GDALClose(m_pDataset);
m_pDataset = nullptr;
推荐阅读
- 历史地理知识|徐泾红灯一条街在哪里
- 健康知识|尿酸高哪些豆类不能吃,尿酸高豆类都不能吃吗
- 健康知识|利尿消肿的食物有哪些,吃什么可以利尿消肿
- 健康知识|美白牙齿的产品有哪些,牙齿美白的产品推荐
- 健康知识|保肝降酶药物有哪些,保肝降酶药首选什么药
- 健康知识|猪肝相克的食物有哪些,猪肝和桃子相克吗
- 健康知识|哪些人不适合吃蜂王浆,蜂王浆吃出一身病
- 【养殖方法】皇冠草的养殖方法/皇冠草的养护知识
- 手机知识|迅雷在手机哪个文件夹,安卓手机迅雷下载的文件在哪里
- 手机知识|手机动态壁纸软件哪个好,360°全景动态壁纸软件