Vairāk

Ielu segmentu ģeokodēšana, pamatojoties uz ArcGIS for Desktop apjomu?

Ielu segmentu ģeokodēšana, pamatojoties uz ArcGIS for Desktop apjomu?


Man ir saraksts ar projektiem, kurus nepieciešams kodēt vai uzzīmēt, izmantojot automatizētu procesu ArcGIS 10.3 darbvirsmai. Tie ir uzskaitīti pēc galvenās ielas, sākuma ielas krustojuma un gala ielas krustojuma. Datu faili ir zemāk norādītajā formātā.

Iela, 1. daļa, 2. N, N, N, St, W, templis, Sv., Arkādija, Sv., Aviation, Boulevard, 93., iela, Century, Boulevard, Le, Conte, Ave, Hillgard, Ave, Levering, Ave, Pershing Drive Westchester Pkwy Imperial Highway

Es izmantoju ielas centra līnijas failu, kas ietver katru ielas segmenta nosaukumu, katra segmenta unikālu ID un katra segmenta sākuma / beigu krustojumus. Ielās ievēro konsekventu virzību. Man ir pieejams arī atsevišķs krustojuma formas fails, kurā ir krustojumi, ar to unikālajiem ID, taču es nespēju saprast, kā tos pareizi integrēt ielas centra līnijas formas failā, kuru var izmantot, lai izveidotu adreses lokatoru vai lineāru atsauci. sistēmā.

Tie ir centrālās līnijas faili, kurus izmantoju; tie ir publiski pieejami Losandželosas pilsētā.

Es nemēģinu kartēt adreses, bet gan izveidot līniju segmentus, kas sākas ar Iela / 1. apjomsun pēc tam izsekojiet pa līniju, kas norādīta Iela līdz tas sasniedz Iela / 2. apjoms.

Šeit ir piemērs līnijas tipam, kuru mēģinu izveidot, izmantojot pirmo piemēru iepriekš izveidotajā kodolblokā:

Līnijas posms sāktos pie W Temple St / N Spring St, un pēc tam turpināsies pa N Spring St līdz W Arcadia St / N Spring St. krustojumam.

Esmu mēģinājis izmantot lineāru atskaites sistēmu, taču notikumu tabulas sākuma / beigu laukiem ir jābūt skaitliskiem, nevis virkņu vērtībām. Adrešu lokatori man radīs tikai punktus, bet vai es varētu izveidot sākuma / beigu punktus un pēc tam likt ArcMap sekot līdzi 1. iela starp sākuma beigu punktiem? Es līdz šim nespēju izdomāt risinājumu šim jautājumam ...

Man ir ierobežota Python pieredze (un manā darba vietā to gandrīz nav), bet es esmu atvērts risinājumam, kas to iekļautu. Tam vajadzētu būt procesam, ko varētu integrēt darbplūsmā un mācīt citiem cilvēkiem / regulāri atjaunināt. Ideālā gadījumā tas būtu integrēts adrešu lokatorā, bet es varētu arī nodrošināt darbplūsmu kā Modelbuilder objektu.


Es to daru, vispirms izveidojot LR maršrutus katrai ielai. Pēc tam es izmantoju maršruta Vietas funkcijas, lai iegūtu krustojuma LR pasākumus, kuros uzskaitīti pasākumi, kas saistīti ar katru maršrutu, kuram pieskaras krustojumi.

Krustojumos ar tikai diviem nosaukumiem tie būs notikumi katram no diviem maršrutiem. Es izveidoju lauku, kas savieno abus ielu nosaukumus, tos ieskauj cirtaini iekavās (t.i., “{N Spring St} {W Temple St}”). nosaukums, kas saistīts ar maršrutu, vienmēr ir pirmās ielas nosaukums un šķērsiela ir otrais ielas nosaukums. Tomēr ceļiem ar trim nosaukumiem krustojumā notikumu skaits jāpaaugstina no 3 notikumiem līdz 6 notikumiem, lai aptvertu visus vārdu pārus, un četriem krustojuma nosaukumiem 4 notikumiem jāpalielinās līdz 12 notikumiem, lai aptvertu visus iespējamos nosaukumu pārus.

Izveidojiet divus laukus, lai cirtaini iekavās turētu ielas apvienošanu ar attiecīgi Extent1 vai Extent2. Pievienojiet segmenta tabulai lauku Maršruta nosaukums un divus mēru laukus. Tagad veiciet divus atsevišķus savienojumus katrā no diviem laukiem, pievienojot vārdu pāru notikumu tabulas nosaukuma pāra savienojumus. Katram ierakstam, kas atrod notikumu, kas pabeidz savienošanu, varat aprēķināt maršruta ID un izmērīt līnijas notikuma beigas.

Šī metode ir ļoti atkarīga no tā, cik labi jūsu dati kontrolē pareizrakstības variācijas starp krustojumiem un segmentu notikumu tabulu. Ja ir laba ielu nosaukumu kontrole, šī metode kļūst efektīvāka, kad segmenta tabula kļūst lielāka. Es arī sadalīju visus nobīdes virzienus un attālumu, kas ietverti laukos Izmērs, atsevišķos laukos un izmantoju tos, lai pievienotu vai atņemtu nobīdi no bāzes krustošanās pasākumiem jaunā nobīdes mērījumu lauku pārī. Visbeidzot, es veicu vārdu pāru kopsavilkumu, lai krustojuma tabulā atrastu visus dublētos pārus, un pārbaudu ierakstus, kas atsaucas uz šiem nosaukumiem, lai pārliecinātos, ka es izmantoju pareizo maršrutu un mēru pareizajam krustojumam (tas palīdz, ja jums ir zināms garums segmentam veikt šo validāciju).

Tikai pēdējais solis vai pareizrakstības variāciju risināšana man prasa daudz laika, jo visas pārējās darbības man ir diezgan daudz uzturējušas iknedēļas skripti.


Skatīties video: Вязание летняя ТУНИКА крючком ВОДОПАД которая стройнит обучающий МАСТЕР КЛАСС для начинающих ЧАСТЬ 1