Vairāk

Kur es varu iegūt failu UnitedStates.gdb


Es daru šo apmācību http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/How_to_geocode_a_single_address/00010000038r000000/

bet tam nepieciešams šāds fails: UnitedStates.gdb

Es lejupielādēju DataMaps10 no ESRI, bet neredzu nevienu .gdb failu.


Es pieņēmu, ka tas atradīsies tajā pašā vietā, kur lejupielādētās kartes no ESRI.

Tas faktiski atrodas šeit: C: Program Files ArcGIS DeveloperKit10.0 Samples data Usa USA.gdb

Un tas tiek instalēts, instalējot VS2010 dev komplektu.

Žēl, ka es nevaru izveidot GeoProcessor, jo, sekojot šai apmācībai, http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Creating_an_address_locator/0001000004pm000000/

IGeoProcessorResult rezultāts = GP.Execute (createAddressLocator, null); // neizdodas

Pārbaudot ziņojumus, izmantojot GP.getMessages (), iegūst

Neizdevās izpildīt. Parametri nav derīgi. KĻŪDA 000039: šim stilam nav pietiekami daudz atsauces datu tabulu. Neizdevās izpildīt (CreateAddressLocator).

Pēc 100 gadu pavadīšanas pa tālruni man radās iespaids, ka, lai izveidotu AddressLocator, jums vienkārši jāveic šādas darbības

System.Object obj = Activator.CreateInstance (Type.GetTypeFromProgID ("esriLocation.LocatorManager")); ILocatorManager2 locatorManager2 = obj kā ILocatorManager2; ILocatorWorkspace locatorWorkspace = locatorManager2.GetLocatorWorkspaceFromPath (@ "Z:  ESRI  DataMaps10  streetmap_na"); Adrese - dubultie diapazoni "); locator = locatorWorkspace.GetLocator (" Street_Addresses_US ");

Ar šo koda lokatoru, šķiet, ir derīgs objekts, tomēr es vēl neesmu saņēmis to darīt kaut ko noderīgu, vismaz tas neizraisīja COM izņēmumu.


Tas ir tas, ko jūs darāt

1) lejupielādējiet 3 ISO kartes no klientu aprūpes vietnes. Pārliecinieties, vai esat atspiests pareizajā direktorijā.

2) Jums ir nedaudz jāpārveido paraugs, rīkojieties šādi:

un aizstājot šo kodu:

IWorkspaceFactory2 workspaceFactory = obj kā IWorkspaceFactory2; IWorkspace darbvieta = workspaceFactory.OpenFromFile (@ "C:  UnitedStates.gdb", 0); // ŠIS IEMESLO VISU TROBU // Iegūstiet vietni II un adreses II adreses kandidātus2 obj = Activator.CreateInstance (Type.GetTypeFromProgID ("esriLocation.LocatorManager")); ILocatorManager locatorManager = obj kā ILocatorManager2; ILocatorWorkspace locatorWorkspace = locatorManager.GetLocatorWorkspace (darbvieta); ILocator locator = locatorWorkspace.GetLocator ("USLocator"); Ar šo kodu System.Object obj = Activator.CreateInstance (Type.GetTypeFromProgID ("esriLocation.LocatorManager")); ILocatorManager2 locatorManager2 = obj kā ILocatorManager2; ILocatorWorkspace locatorWorkspace = locatorManager2.GetLocatorWorkspaceFromPath (@ "Z:  ESRI  DataMaps10.doNotUse  streetmap_na  data"); ILocator locator = locatorWorkspace.GetLocator ("Ielas_adreses_US"); // PAZIŅOJUMS: pat ja faila nosaukums ir Street_Addresses_US.loc, mēs * joprojām * atveram tikai Street_Addresses_US

Un ignorējiet visu šo krāpšanos par lokatora izveidi.

Ja jūs to lasāt nākotnē un jums tas šķiet noderīgi, es labāk saņemšu balsis, jo man vajadzēja 5 dienas, lai iegūtu šo informāciju. :)