• 判断多边形是否为环或者是眼睛的方法


    Private Sub UIButtonControl2_Click()

    Dim app As IApplication
    Set app = Application

    Dim pMxDocument As IMxDocument
    Set pMxDocument = Application.Document

    Dim pMap As IMap
    Set pMap = pMxDocument.FocusMap

    Dim pFeatureLayer As IFeatureLayer
    Set pFeatureLayer = pMap.Layer(0)

    Dim pFeatureCursor As IFeatureCursor
    Set pFeatureCursor = pFeatureLayer.FeatureClass.Search(Nothing, False)

    Dim pFeature As IFeature
    Set pFeature = pFeatureCursor.NextFeature

    Dim pPolygon As IPolygon
    Dim geocollection As IGeometryCollection
    Dim pRing As IRing
    Dim inringcount As Integer

    While Not pFeature Is Nothing
    Set pPolygon = pFeature.Shape
    Set geocollection = pPolygon

      If geocollection.GeometryCount > 1 Then
      inringcount = inringcount + 1
      pMap.SelectFeature pFeatureLayer, pFeature
      End If

     ' If pPolygon.ExteriorRingCount > 1 Then
      'pMap.SelectFeature pFeatureLayer, pFeature
     ' End If
     
     ' If pPolygon.ExteriorRingCount = 1 Then
     ' Set pPointCollection = pPolygon
     ' Set pRing = pPointCollection
     ' inringcount = pPolygon.InteriorRingCount(pRing)
     ' If inringcount > 0 Then
     ' pMap.SelectFeature pFeatureLayer, pFeature
     ' End If
     ' End If

    Set pFeature = pFeatureCursor.NextFeature
    Wend

    Dim pActiveview As iactiveview
    Set pActiveview = pMap
    pActiveview.Refresh
    MsgBox "一共有" & inringcount & "个不规则多边形"

    End Sub
  • 相关阅读:
    偶的机机升级了
    质疑 Sina.com 的金牌榜[图文]
    一道JAVA作业题
    北京出差总结
    我拿什么奉献给你
    CSDN无限极树PHP+MySQL版
    极大强连通分量的Tarjan算法
    NOI2001 炮兵阵地详解
    单调队列及其应用
    some english website
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/1629166.html
Copyright © 2020-2023  润新知