当前位置: 代码迷 >> GIS >> 地图x开发中位图在map上显示的有关问题,为什么显示一个黑斑 麻烦各位大牛看一下 多谢了
  详细解决方案

地图x开发中位图在map上显示的有关问题,为什么显示一个黑斑 麻烦各位大牛看一下 多谢了

热度:198   发布时间:2016-05-05 06:13:45.0
mapx开发中位图在地图上显示的问题,为什么显示一个黑斑 麻烦各位大牛看一下 谢谢了
我的代码如下:
    CMapXLayers Layers;
CMapXLayer Layer;
CMapXFeature   ftr; 
CMapXFeatureFactory FeaFac;
Layers=m_CtrlMapX.GetLayers();
BOOL Flag=false;
for (int i=0;i<Layers.GetCount();i++)
{
Layer=Layers.Item(i+1);
if (Layer.GetName()=="linshi")
{
Flag=true;
break;
}
}
if (Flag==false)
{
CMapXLayer Lyr=m_CtrlMapX.GetLayers().CreateLayer("linshi");
m_CtrlMapX.GetLayers().SetAnimationLayer(Lyr);//设置为动态图层

}

CMapXLayers   layers   =   m_CtrlMapX.GetLayers();    
try{   
if   (ftr.CreateDispatch(ftr.GetClsid()))     
{   
ftr   =   m_CtrlMapX.GetFeatureFactory().CreateSymbol();   
CMapXStyle   style   =   ftr.GetStyle();   //获得图元的风格   

//设置图元的风格,显示位图   
style.SetSymbolType(miSymbolTypeBitmap);   
//指定所要显示位图的存放位置   
style.SetSymbolBitmapName("CAR1-32.BMP");   
//指定位图大小   
style.SetSymbolBitmapSize(32);   
//设置为透明   
//style.SetSymbolBitmapTransparent(TRUE);   

//指定需要显示图元的位置(经纬度位置)   
ftr.GetPoint().Set(-100.9926,37.7282);   
layers.Item("linshi").AddFeature(ftr);   
}   
else   
{   
AfxThrowOleException(CO_E_CLASS_CREATE_FAILED);   
}   
}   

catch   (COleDispatchException   *e)   {   
e->ReportError();   
e->Delete();   
}   
catch   (COleException   *e)   {   
e->ReportError();   
e->Delete();   


这是网上的一个做法,别人编译通过了功能也实现了 为什么我的显示一个黑斑呢?请各位大牛看一下
------解决方案--------------------
能够显示一个黑点说明代码是正确的,请你确认CAR1-32.BMP这个文件是否存在或者路径是否正确
------解决方案--------------------
1楼看得很准,呵呵
  相关解决方案