历史地理知识|iband头带在哪里买( 二 )


//是这样关闭 数据集 么?
}
 }

 template<typename type, int nBand>
 void CTifFileOp<type, nBand>::openDs(GDALAccess openMode)
{
 if (m_pDataset)//当不为nullptr , 认为是打开的
 {
 return;
 }

GDALAllRegister();
const char *pszFormat = "GTiff";
GDALDriver *poDriver;
poDriver = GetGDALDriverManager()->GetDriverByName(pszFormat);
if (poDriver == nullptr){
return;
}

if (!m_strFile.empty())
{
m_pDataset = ((GDALDataset *)GDALOpen(m_strFile.c_str(), openMode));
//  if (m_pDataset != NULL)
//  {
//  int ibandCounts = m_pDataset->GetRasterCount();
//  ibandCounts |= (long(1)<<0);
//  }

if (GA_Update == openMode)
{
m_bWrite = true;
}
else
m_bWrite = false;
}

// OGRCleanupAll();
}

template<typename type, int nBand>
int CTifFileOp<type, nBand>::ChangeFile(string strPath)
{
m_strFile = strPath;
if (m_pDataset)
{
GDALClose(m_pDataset);
m_pDataset = nullptr;
//是这样关闭 数据集 么?
}
openDs();
return 0;
}


template<typename type, int nBand>
void CTifFileOp<type, nBand>::ReadTiffDataset(type * DataGet, int begRow, int begCol, int numRows, int numCols)const
{
if (!DataGet || !m_pDataset)
{
return;
}

if (begRow < 0 || begCol < 0 || numRows <= 0 || numCols <= 0)
{
return;
}
GDALDataType datatype = m_pDataset->GetRasterBand(nBand)->GetRasterDataType();
//不知道下面读数据的这个类型参数有什么意义
m_pDataset->RasterIO(GF_Read,begCol,begRow,numCols,numRows,DataGet,numCols,numRows,datatype,1,0,0,0,0);
}

template<typename type,int nBand>
void CTifFileOp<type, nBand>::WriteTiffDataset(type * DataGet, int begRow, int begCol, int numRows, int numCols)
{
if (!DataGet || !m_pDataset)
{
return;
}

if (begRow < 0 || begCol < 0 || numRows <= 0 || numCols <= 0)
{
return;
}

if (!CanWrite())
{
GDALClose(m_pDataset);
m_pDataset = nullptr;

openDs(GA_Update);
}
GDALDataType datatype = m_pDataset->GetRasterBand(nBand)->GetRasterDataType();
//不知道下面读数据的这个类型参数有什么意义
m_pDataset->RasterIO(GF_Write, begCol, begRow, numCols, numRows, DataGet, numCols, numRows, datatype, 1, 0, 0, 0, 0);
}
请教在Windows下怎么用C++编程读取TIFF格式文件央广网科技1月20日消息 , 如果你看过电影《盗梦空间》 的话 , 是否被其中的现实梦境间的穿梭转换所深深吸引?日前 , 英国《每日邮报》报道称 , 国外发明出一款名叫Aurora的头部佩戴装置 , 该装置在人熟睡时发出的LED灯和声音可以影响人的梦境 。
报道称 , 此款装置可以监测处在睡梦中的人们的脑电波、眼球和身体动态情况 。 睡觉之前用户可以对装置进行自定义设置 , 它可以给佩戴者提供一个精彩的梦境并且具有“叫醒”功能可以治疗失眠 , 与此同时还可以帮助使用者造梦 。 这款iband+其实是一款智能无线蓝牙EEG头带 , 可以非常准确的感受到用户的脑电波变化 。 它最主要的作用就是可以给用户带来安眠 , 它会利用收集到的数据 , 然后发出音频信号来帮助使用者快速入眠 。

推荐阅读