zoukankan      html  css  js  c++  java
  • Arcengine动态创建mxd文档

    AoInitialize aoi = new AoInitializeClass();                //也可以设置其他许可类型
                    esriLicenseProductCode productCode = esriLicenseProductCode.esriLicenseProductCodeEngine;
                    if (aoi.IsProductCodeAvailable(productCode) == esriLicenseStatus.esriLicenseAvailable)
                    {
                        aoi.Initialize(productCode);
                    }
                    ESRI.ArcGIS.esriSystem.IAoInitialize m_AoInitialize = new ESRI.ArcGIS.esriSystem.AoInitialize();
                    m_AoInitialize.Initialize(ESRI.ArcGIS.esriSystem.esriLicenseProductCode.esriLicenseProductCodeArcInfo);
                    IPropertySet pProSet = new PropertySetClass();
                    IWorkspaceFactory pWorkSpFac = new SdeWorkspaceFactoryClass();
                    IFeatureWorkspace pFeaWorkSp = null;
                    IFeatureClass FeaCls = null;
                    pProSet = sdeconn.SdeConn();
                    if (pProSet != null)
                    {
                        pFeaWorkSp = (IFeatureWorkspace)(pWorkSpFac.Open(pProSet, 0));//打开要素空间
                        FeaCls = pFeaWorkSp.OpenFeatureClass(feaName);//取得要素集
                     }
                    转换ILayer
                IFeatureLayer featureLyr =new FeatureLayerClass();
                 featurelyr.FeatureClass=FeaCls ;
                public static IMapControlDefault m_pMapCtrl = new MapControlClass();
                m_pMapCtrl.AddLayer(featurelyr as ILayer,0);
              保存文件
              IMxdContents pMxdC; pMxdC = axMapControl1.Map as IMxdContents ;                                 
    ‍          IMapDocument pMapDocument = new MapDocumentClass ();
    ‍          pMapDocument.New ("@d:\aa3.mxd");
    ‍          IActiveView pActiveView = axMapControl1.Map as IActiveView ;
    ‍          pMapDocument.ReplaceContents (pMxdC);
              pMapDocument.Save (true,true);

    _______________________________________________________________________

         int imgindex = filepath.LastIndexOf('\\');
               string imgpath = filepath.Substring(0, imgindex);
               string imgname = filepath.Substring(imgindex + 1);

               IWorkspaceFactory workspaceFactory = new RasterWorkspaceFactoryClass();
               IRasterWorkspace rasterWorkspace = (IRasterWorkspace)(workspaceFactory.OpenFromFile(imgpath, 0));
               IRasterDataset rasterDataset = rasterWorkspace.OpenRasterDataset(imgname);

               // Create a raster for viewing
               ESRI.ArcGIS.Carto.IRasterLayer rasterLayer = new ESRI.ArcGIS.Carto.RasterLayerClass();
               rasterLayer.CreateFromDataset(rasterDataset);

               IMapControlDefault m_pMapCtrl = new MapControlClass();
               m_pMapCtrl.AddLayer(rasterLayer as ILayer,0);
             
                //保存mxd文件
              IMxdContents pMxdC = (IMxdContents)m_pMapCtrl.Map;
              IMapDocument pMapDocument = new MapDocumentClass();
              pMapDocument.New(@"d:\temp.mxd");
              IActiveView pActiveView = m_pMapCtrl.Map as IActiveView;
              pMapDocument.ReplaceContents(pMxdC);
              pMapDocument.Save(true, true);

  • 相关阅读:
    C#数组学习
    关于servlet中要写初始化逻辑应该重载有参还是无参的init
    servlet初识servletConfig
    servlet通过响应头Content-Disposition实现文件下载效果
    response中setCharacterEncoding和setContentType的区别
    通过refresh响应头,定时刷新或隔n秒跳转页面
    通过location响应头实现重定向
    三层交换原理
    什么是CLOS架构?
    Cat8 八类网线是什么?与Cat5、Cat6、Cat7网线的区别?
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/2093224.html
Copyright © 2011-2022 走看看