MapX加载地图和创建图层

一.MapX加载地图

     说明:file参数指向的地图(.gst文件)的绝对路径,比如本人地图所在路径为:D:\Program Files\MapInfo\MapX 5.0\Maps\CHINA.GST,则file参数应为"D:\\Program Files\\MapInfo\\MapX 5.0\\Maps\\CHINA.GST"。(注意vc中为双斜杠)

  
  
  
  
  1. int  CLmtestView::LoadGeoData(CString file)  
  2. {  
  3.     if (!m_map.Create(NULL,WS_VISIBLE,CRect(50,50,400,400),this, IDC_MAP))  
  4.     {  
  5.         //创建失败  
  6.         return -1;  
  7.     }  
  8.     m_map.SetGeoSet(file);  
  9.     m_map.SetTitleText("中国地图");  
  10.     m_map.SetCurrentTool(miPanTool);  
  11.     return 0;  

二.MapX创建图层

     说明:layer参数为指向要创建图层的对象, str参数指定图层名称,id参数指定该图层在地图中的图层顺序。

  
  
  
  
  1. //创建图层  
  2.  void   CLmtestView::CreateLayer(CMapXLayer* layer, CString str, int id )  
  3.  {  
  4.      CString geo=m_map.GetGeoSet();  
  5.      if(geo.IsEmpty())  
  6.      {  
  7.          AfxMessageBox(_T("未指定地图集,请先指定地图集"));  
  8.          return;  
  9.      }  
  10.      try 
  11.      {  
  12.          m_map.GetLayers().CreateLayer(_T(str), NULL, id);  
  13.          *layer = m_map.GetLayers().Item(_T(str));  
  14.      }  
  15.      catch(COleDispatchException *e)  
  16.      {  
  17.          e->ReportError();  
  18.          e->Delete();  
  19.      }  
  20.      catch(COleException *e)  
  21.      {  
  22.          e->ReportError();  
  23.          e->Delete();  
  24.      }  
  25.  
  26.  }  

 

本文出自 “技术创造人生” 博客,转载请与作者联系!

你可能感兴趣的:(职场,休闲,创建图层,MapX加载地图)