麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

VC++开发GIS系统(271)删除注释之函数定义

本文介绍GIS系统中的删除注释的功能,并实现一个用于删除注释的底层IO函数。

删除注释IO函数定义

在_malaIO.h中的注释文件读写类 CLabelIO 中定义用于删除注释的函数,声明如下:

public:
  long labelDelete(malaLabelPro &labelPro, CString &fileName);//删除注释
  • @ labelPro 被删除注释的属性
  • @ fileName 注释文件的完整路径

删除注释IO函数实现

在_malaIO.cpp中实现上述的函数定义,代码如下:

//删除注释实现
long CLabelIO::labelDelete(malaLabelPro &labelPro, CString &fileName)
{
  long ID = labelPro.labelId;
  readLabels(fileName);

  vector<malaLabelFile>tempLabels;

  int Size = mLabel.size();
  for (int i = 0; i < Size; i++)
  {
    if (mLabel[i].mLabelPro.labelId != ID)
    {
      tempLabels.push_back(mLabel[i]);
    }
  }
  mLabel.clear();
  mLabel = tempLabels;
  saveLabels(fileName);
  tempLabels.clear();
  return ID;
}

实现原理是遍历注释文件中的所有注释,ID相同即删除。

详细代码可以参考:GitHub

麻辣GIS-Sailor
作者:
GIS爱好者,学GIS,更爱玩GIS。
微博关注
手机阅读
赞赏支持
手机阅读
微信捐助麻辣GIS
微信打赏
支付宝捐助麻辣GIS
支付宝打赏

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

3.如果本文对您有所帮助,请您对我们团队进行 打赏捐助让我们在传播3S的路上可以走得更远,不胜感激。PS:如果你是学生党,请优先把经费用于购买学习资料 以及 与小哥哥/小姐姐约会上:-)

如您有疑问,可在文末留言,或到QQ群中提问。

本站QQ群(一):291616564 加入QQ群

本站QQ群(二):166408035 加入QQ群

本站QQ群(三):627853279 加入QQ群

本站QQ群(四):436386604 加入QQ群

本站QQ群(五):606176554 加入QQ群

本站QQ群(六):946178380 加入QQ群

本站QQ群(七):861271808 加入QQ群

微信公众号:malagis,扫描右边二维码直接关注。

发表评论