zoukankan      html  css  js  c++  java
  • 判断多边形是否为环或者是眼睛的方法

    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
  • 相关阅读:
    [Codeforces809D] Hitchhiking in the Baltic States
    [Codeforces1148H] Holy Diver
    [PKUWC2018]猎人杀
    [Codeforces566C] Logistical Questions
    越野赛车问题
    Suffix Array
    第05组(65) 需求分析报告
    第05组(65) 团队展示
    第三次作业
    结对编程作业
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/1629166.html
Copyright © 2011-2022 走看看