代码拉取完成,页面将自动刷新
#include "map_pgm.h"
//将图片格式的地图读入内存,转为数组
Pgm_map::Pgm_map(const char * filename):isopen(false)
{
using namespace cv;
basemap= imread(filename,0);
if (!( basemap.cols >0 && basemap.rows > 0 ))
{
sizeX=0;
sizeY=0;
}
else
{
isopen= true;
sizeX=basemap.cols;
sizeY=basemap.rows;
}
}
bool Pgm_map::transformMapToGrid()
{
using namespace cv;
if (!isopen)
{
return false;
}
else
{
gridmap2D= new int * [ sizeX ];
for (int x=0;x<sizeX;x++)
{
gridmap2D[x]=new int [sizeY];
}
int index=0;
for (int y=0;y<sizeY;y++)
{
for(int x=0;x<sizeX;x++)
{
if (( basemap.at<unsigned char>(y,x)) > 240)
gridmap2D[x][y]=0;
else
gridmap2D[x][y]=1;
}
}
return true;
}
}
int ** Pgm_map::getGridMap2D()
{
return gridmap2D;
}
const int Pgm_map::getSizeX()
{
return sizeX;
}
const int Pgm_map::getSizeY()
{
return sizeY;
}
Pgm_map::~Pgm_map()
{
if (isopen)
{
for (int x=0;x<sizeX;x++)
{
delete [] gridmap2D[x];
}
delete [] gridmap2D;
}
}
cv::Mat Pgm_map::getImg()
{
return basemap;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。