Veel

Kood olemasoleva topoloogia funktsiooniklassi nime saamiseks

Kood olemasoleva topoloogia funktsiooniklassi nime saamiseks


Loon ja kinnitan topoloogiat vb.net ja arcobject koodi kaudu. Asjad töötavad hästi, kuna ma saan reegli lisada ja seda kinnitada.

Probleem on siis, kui programm on käivitatud ja topoloogia loodud. Teist korda oma koodi käitades olen kirjutanud, et kui topoloogia on olemas, siis kustutage see ja looge uus topoloogia, kuid märkasin, et topoloogia kustutamine iga kord rikub mälu.

Teiseks lähenemisviisiks on see, et kustutan kõigepealt reegli olemasolevast topoloogiast ja seejärel esitan sellest klassi, mitte topoloogia.

Seejärel lisatakse samale olemasolevale topoloogiale uued reeglid ja esitusklassid. Kuid probleem on see, et ma ei saa olemasolevas topoloogias funktsiumi nime saada. Kuidas saada topoloogias osalenud tunnuse nimi?

Kood on järgmine:

Kui pdataset.type = esridatasettype.featureclass, siis Dim fcnme stringina Dim fcarray as Arraylist = Uus arraylist fcnme = pdataset.name fcarray.add (fcnme) i jaoks täisarvuna = 0 väärtuseni fcarray.count-1 pname = fcarray.item (i ) .tostring Dim gp geoprotsessorina = uus geoprotsessor Dim removefc kui DataManagementTool.RemoveFeatureclassFromtopology = New DataManagementTool.RemoveFeatureclassFromtopology removefc.in_topology = topoloogia nimi removefc.in_featureclassnme = ei midagi lõpp proovida

Otsite vara ITopologyProperties.Classes.

  1. Selle topoloogiale viite saamiseks kasutage seda näidiskoodi.

  2. Hankige oma ITopoloogiast ITopologyProperties.

  3. Salvestage ITopologyProperties. Klassid IEnumFeatureClass.

  4. Soovitud funktsiooniklassi saamiseks kasutage siin näidiskoodi, et IEnumFeatureClass üle lugeda (kuna ühes topoloogias võib olla mitu funktsiooniklassi, saate igaühe nime, tüübi jne)


Vaata videot: Origen y evolución de las redes