麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

VC++开发GIS系统(150)输入线之类设计

前文已经实现了新建线文件的相关工作,下面先设计一个输入线文件的类,用于实现输入线的功能。

类的定义

在_malaLines.h中定义下面的类

/*
*输入线
*/
class malalinesdll  CmalaLinesInput : public CmalaMouseAction
{
public:
    CmalaLinesInput(CView* mView, malaScreen *pScreen, CString &fileFullPath);
    ~CmalaLinesInput();
    void LButtonDown(UINT nFlags, malaPoint point);
    void RButtonDown(UINT nFlags, malaPoint point);
    void MouseMove(UINT nFlags, malaPoint point);
    void GetLinePro();//获取线的属性
private:
    bool m_bDraw;
    malaPoint m_PtOrigin; //起点
    malaPoint m_PerPoint; //临时点
    malaLinePro m_LinePro;//线属性
    vector<malaPoint>m_Line;//线

    malaScreen *mScreen;
    CString mPath;//文件路径
};

其中起点和临时点用于绘制橡皮筋线,m_LinePro记录下线的相关属性(在文章《VC++开发GIS系统(145)基本GIS系统中线单元的结构体》中介绍过),m_Line用于记录下所绘制的线,GetLinePro用于弹出对话框设置线的属性,会在后文介绍。

详细代码可以参考:GitHub

麻辣GIS-Sailor

作者:

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

声明

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

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

手机阅读
公众号关注
B站关注
手机阅读
麻辣GIS微信公众号关注
更多GIS干货
麻辣GIS小破B站
一些有趣的技术视频

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