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);

  • 相关阅读:
    类的加载过程 以及实例的加载顺序
    设计优化之单例模式
    Java程序性能优化之性能概述
    1-12接口
    1-11多态
    1-9方法的重写(override)
    1-6static关键字
    1-10super和this关键字
    1-8继承extends
    1-7代码块的分类
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/2093224.html
Copyright © 2011-2022 走看看