麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

VC++开发GIS系统(243)基本GIS系统中注释单元的结构体

前文已经实现了点、线、面(区)的相关功能,下面的工作便是GIS系统另外一个基本要素:注释。

图中红色的标注就是GIS地图中典型的注释。为了实现这个功能,首先,我们要在程序中定义一个用于描述注释元素的结构体,本文中尝试对注释要素做以下的定义。

//注释属性
typedef struct
{
    int labelId;
    int labelHeight;   //字体高度
    int labelWidth;    //字体宽度
    int labelAngle;    //字体角度
    int textAngle;     //文本角度
    COLORREF textColor;//字体颜色
    int  textOff;      //字体间距
    CString textFont;  //字体类型
    int fontWeight;    //字体磅数
    CString textStr;   //字符串
}malaLabelPro;

注释在本GIS系统中,被当作一个点元素。所以和点、线、面结构体不同,注释只定义了属性结构体,并没有定义坐标结构。其中相关属性说明如下:

  • @labelId 注释ID
  • @labelHeight 注释字体高度
  • @labelWidth 注释字体宽度
  • @labelAngle 注释字体的倾斜角度
  • @textAngle 注释字符串角度
  • @textColor 注释字体颜色
  • @textOff 注释字体间距
  • @textFont 注释字体类型
  • @fontWeight 注释字体磅数
  • @textStr 注释字符串内容

这样再通过坐标xy就可以详细定义一个注释类型了。

详细代码可以参考:GitHub

相关阅读

麻辣GIS-Sailor

作者:

GIS爱好者,学GIS,更爱玩GIS。

声明

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

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

手机阅读
公众号关注
知识星球
手机阅读
麻辣GIS微信公众号关注
最新GIS干货
关注麻辣GIS知识星球
私享圈子

留言板(小编看到第一时间回复)