• 不显示查询问题的解决(太完美了,新建一个图层,表示查询结果)


    在程序里完成,提高效率的方法,在程序面上完成这个任务。,不用把100万的数据加载进来。

    CreateFeatureClass Method (esriGeoDatabase)


    Example    
        

    Creates a new standalone feature class under the workspace.

    Syntax

    Set variable = object.CreateFeatureClass (Name, Fields, CLSID, EXTCLSID, FeatureType, ShapeFieldName, ConfigKeyword )

    The CreateFeatureClass method syntax has the following object qualifier and arguments:

    Part Description
    object An object expression that evaluates to an object in the Applies To list.
    variable A reference to an object that implements IFeatureClass.
    Name Required. A string expression that represents the Name.
    Fields Required. An IFields object.
    CLSID Required. An IUID object.
    EXTCLSID Required. An IUID object.
    FeatureType Required. An esriFeatureType constant whose value represents the FeatureType.
    ShapeFieldName Required. A string expression that represents the ShapeFieldName.

    ConfigKeyword Required. A string expression that represents the ConfigKeyword.

     How to use:
    拷贝代码到你的 VB 或者 VBA 程序里.
    在你的程序里Call下面的函数.
    Public Sub CreateShapefile()

      Const strFolder As String = "D:"Data"
      Const strName As String = "MyShapeFile" ' Dont include .shp extension
      Const strShapeFieldName As String = "Shape"
      
      ' Open the folder to contain the shapefile as a workspace
      Dim pFWS As IFeatureWorkspace
      Dim pWorkspaceFactory As IWorkspaceFactory
      Set pWorkspaceFactory = New ShapefileWorkspaceFactory
      Set pFWS = pWorkspaceFactory.OpenFromFile(strFolder, 0)
      
      ' Set up a simple fields collection
      Dim pFields As IFields
      Dim pFieldsEdit As IFieldsEdit
      Set pFields = New esriCore.Fields
      Set pFieldsEdit = pFields
      
      Dim pField As IField
      Dim pFieldEdit As IFieldEdit
      
      ' Make the shape field
      ' it will need a geometry definition, with a spatial reference
      Set pField = New esriCore.Field
      Set pFieldEdit = pField
      pFieldEdit.Name = strShapeFieldName
      pFieldEdit.Type = esriFieldTypeGeometry
      
      Dim pGeomDef As IGeometryDef
      Dim pGeomDefEdit As IGeometryDefEdit
      Set pGeomDef = New GeometryDef
      Set pGeomDefEdit = pGeomDef
      With pGeomDefEdit
        .GeometryType = esriGeometryPolygon
        Set .SpatialReference = New UnknownCoordinateSystem
      End With
      Set pFieldEdit.GeometryDef = pGeomDef
      pFieldsEdit.AddField pField

      ' Add another miscellaneous text field
      Set pField = New esriCore.Field
      Set pFieldEdit = pField
      With pFieldEdit
          .Length = 30
          .Name = "MiscText"
          .Type = esriFieldTypeString
      End With
      pFieldsEdit.AddField pField
      
      ' Create the shapefile
      ' (some parameters apply to geodatabase options and can be defaulted as Nothing)
      Dim pFeatClass As IFeatureClass
      Set pFeatClass = pFWS.CreateFeatureClass(strName, pFields, Nothing, _
                                               Nothing, esriFTSimple, strShapeFieldName, "")
    End Sub

    在ArcEngine中创建内存图层

    arcEngine9.2中新增了一个新的特征,允许创建内存工作空间。当你需要一个这样的图层时,这个图层的属性数据或者几何数据需要频繁的更新,而又不希望因此而带来效率上的问题,你就可以考虑使用内存图层。
            内存图层的创建分为五步:
          1、设置属性字段
          2、设置空间参考和几何字段
          3、创建内存工作空间
          4、在内存工作空间中创建特征类
          5、创建特征图层,并将上一步创建的特征类设置为这个特征的图层的特征类

    请看以下完整的示例代码

            ///


            /// 在内存中创建图层
            ///

            ///

  • 相关阅读:
    IIS服务器禁止某个IP或IP地址范围访问网站的方法
    删除IIS日志
    Win10关闭自动播放
    风云 我的闪存
    必买:一至五千价位段 4K高分辨率显示器购买推荐
    燃油车中新势力!荣威全新第三代RX5开启预售:12万起
    牙膏厂12代U的参数表
    该怎么选轻薄本看这篇就够了!2022年上半年9款最值得购买的轻薄本推荐
    wpf 透明 UIElement.Opacity Property
    SQL Server 2012 copy database without data
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/1401580.html
Copyright © 2020-2023  润新知