首页 > 其他分享 >离线地图的开发笔记(一)

离线地图的开发笔记(一)

时间:2023-02-08 12:23:01浏览次数:42  
标签:MyMap1 string 离线 void 地图 nID private 笔记 Text

最近做一个项目,用到离线谷歌地图的开发, 而现在谷歌地图在中国的发展不是很完美,导致项目的定项迟迟不能决定。

后来制作了一个地图插件mymapw.ocx,完美地解决了Winform窗体里非要加载webbrowse写JScript的弊端。

     目前,项目已经实施,特将里面的地图开发部分概要摘录下来,供大家参考:

1.1 加载Mymap.ocx 地图控件到c#的窗体上

二、先增加地图的基本功能操作: 放大、缩小、移动、测量距离、测量面积

 

增加放大、缩小、移动地图的代码

private void tsbMax_Click(object sender, EventArgs e) {   MyMap1.SetMapOperateMode(30);//放大 } private void tsbMin_Click(object sender, EventArgs e) {   MyMap1.SetMapOperateMode(20);//缩小 } private void tsbMove_Click(object sender, EventArgs e) {   MyMap1.SetMapOperateMode(40);//移动 }     1.3 增加测量距离的代码 private void tsbDistance_Click(object sender, EventArgs e) {   MyMap1.SetMapOperateMode(50);//测量距离 }  增加测量面积的代码 private void tsbArea_Click(object sender, EventArgs e) {   MyMap1.SetMapOperateMode(90);//测量面积 }   保存或修改标注点 private void btnPointSave_Click(object sender, EventArgs e) {   string strResult = null;   string strPoiName = txtPoiName.Text;//名称   string strLongitude = txtJD.Text;   //经度   string strLatitude = txtWD.Text;    //纬度   string strCity = ComboCity.Text;    //所属城市   string strMinScale = cmbMin.Text;   //最小显示级别   string strMaxScale = cmbMax.Text;   //最大显示级别   string strFontName = ComboFont.Text;      //宋体   string strFontSize = ComboFontSize.Text ; //字体大小   string strFrontColor = m_Color.ToString();//字体颜色   string strBmpFileName = "3.bmp";          //标记图标所属的文件名   string strBmpIndex = txtBMPindex.Text;    //在图标文件里的索引   string strObjectID = txtInfo.Text;        //气泡里显示的文字   string strID = "";   int nID = 0;   if( m_PointADDorEDITtype == 1)   {//增加新标注       m_PointAddID++;       nID = m_PointAddID;       strID = nID.ToString();       strResult = strResult + strID + "," + strPoiName + "," + strCity + "," + strFontName + "," + strFontSize + ","           + strFrontColor + "," + strMinScale + "," + strMaxScale + "," + strBmpFileName + "," + strBmpIndex + ","           + strLongitude + "," + strLatitude + "," + strObjectID + "," + ";";   }   else if(m_PointADDorEDITtype == 2)   {//修改标注        nID = m_PointEditID;       strID = nID.ToString();       strResult = strResult + strID + "," + strPoiName + "," + strCity + "," + strFontName + "," + strFontSize + ","           + strFrontColor + "," + strMinScale + "," + strMaxScale + "," + strBmpFileName + "," + strBmpIndex + ","           + strLongitude + "," + strLatitude + "," + strObjectID + "," + ";";   }

 

  //''标准的''{"116,lim,青岛市,宋体,12,0,0,500,2.bmp,4,41896957,13454163,,;"}   MyMap1.AddMyPoi(nID, strResult);   MyMap1.DrawMap(); }   在标注点的单击触发事件OnSelectPoi函数里处理自己想要做的事情(例如单击后弹出一个窗体,显示该标注点的一些信息) private void MyMap1_OnSelectPoi(object sender, AxMYMAPLib._DMyMapEvents_OnSelectPoiEvent e) {   int nID = e.nID;   if(!m_bEditPointState)   {     FrmPic form = new FrmPic(nID);     form.ShowDialog();     MyMap1.SetMapOperateMode(40);// '''运动状态   } }   另外,还有添加道路、透明圆形、透明多边形、透明矩形、箭头等函数, 第一次发表文章,先写这么多吧,留着以后再整理。   欢迎有相同需求的童鞋们一起探讨,可以Q我或邮箱联系! 邮箱:[email protected]  

标签:MyMap1,string,离线,void,地图,nID,private,笔记,Text
From: https://www.cnblogs.com/DaFenQi66/p/17101284.html

相关文章

  • 算法学习笔记(15): Trie(字典树)
    Trie树Trie(字典树)是一种用于实现字符串检索的多叉树。Trie的每一个节点都可以通过c转移到下一层的一个节点。我们可以看作可以通过某个字符转移到下一个字符串状态,直......
  • 地图商户信息如何导出到EXCEL
    随着时代的发展,销售模式有了很大的转变。现在销售人员多倾向于通过加微信好友宣传+推销自己的产品。那么,地图商户里的电话信息,如何能快速的采集导出EXCEL里,变成了销售人员......
  • MongoDB学习笔记二(插入、更新)
    1、插入 runCommand insert:后面写集合名称ordered:可选,布尔值。如果true,则当插入文档失败时,返回而不插入inserts数组中列出的任何剩余文档。如果false,则当插入一个文......
  • 学习笔记(ResNet)
    1、介绍ResNet,ResNetV2,ResNeXt模型,权值由ImageNet训练而来。ImageNet数据是CV领域非常出名的数据集,ISLVRC竞赛使用的数据集是轻量版的ImageNet数据集。ISL......
  • pytorch学习笔记2
    pytorch学习笔记2   RNN结构图pytorch保存模型方法Pytorch有两种保存模型的方式,都是通过调用pickle序列化方法实现的。第一种方法只保存模型参数。第二种方法......
  • 读Java实战(第二版)笔记04_用流收集数据
    1. 方便程序员和可读性是头等大事!1.1. 函数式API设计更易复合和重用2. 归约和汇总为一个值2.1. counting()2.1.1. 计数2.2. maxBy2.2.1. 查找流中的最大值2......
  • jenkins学习笔记之一:流水线基础语法
    一、Pipeline概念1node/agent(节点)节点是一个机器,可以是Jenkins的master节点也可以是slave节点。通过node指定当前job运行的机器(这个是脚本式语法)。参数:.any在任......
  • 小苗与大树的精选谈话笔记
    价值50元一节的看图学职场文化表达技巧课,我的课不贵,也就两包烟,50块钱!!!本来今天都没什么想法写文章,在这里我要感谢我可爱的同事,没有你,我今天的素材都没有,我都不知道要写啥,你......
  • Decoupling Zero-Shot Semantic Segmentation论文阅读笔记
    摘要现有的方法将零样本语义分割(Zero-shotsemanticsegmentation,ZS3)视为逐像素的zs分类,并且使用仅用文本预训练的模型来完成已知类到未知类的知识迁移,而文本图像预训练模......
  • 《分布式技术原理与算法解析》学习笔记Day04
    分布式选举算法为什么需要分布式选举?分布式意味着我们的应用部署在一个集群中,集群包含多个节点或者服务器,对于一个集群来说,多个节点是怎么协同工作的呢?我们需要有一个主......