Viac

Vytvárate čiary z hraníc mnohouholníka s mnohouholníkovými atribútmi pomocou ArcGIS/ArcPy?

Vytvárate čiary z hraníc mnohouholníka s mnohouholníkovými atribútmi pomocou ArcGIS/ArcPy?


Mám tvar súboru polygónov, ktoré sa navzájom dokonale ohraničujú, každý číselným atriubtom. Chcel by som vytvoriť tvarový súbor čiar, kde každý riadok je vytvorený z hranice medzi dvoma polygónmi a tieto čiary majú atribúty oboch polygónov, ktoré ohraničujú.

Ako to urobím pomocou ArcGIS for Desktop?


Môžete to urobiť pomocou nástroja Intersect. Bežne prienik s polygónmi vráti iba prekrývajúcu sa oblasť. Ale ak zmenítetyp_výstupuodVSTUPdoRIADKA, potom môžete získať len kolineárne hranice medzi polygónmi.

Ak je toto náš vstup:

A menímetyp_výstupuparameter:

Ako výstup dostaneme zelené čiary:

Výstup obsahuje dve riadkové funkcie pre každý hraničný segment. Ak to chcete zbaliť na jednu funkciu na segment okraja, budete chcieť spustiť rozpustenie pomocoumulti_partparameter nastavený naSINGLE_PART. Potom spustite priestorové spojenie so svojimi rozpustenými čiarami akofeature_features, pretínajúce sa čiary akojoin_features, tvojmapovanie poľanastavenie s dvoma poľami pre každé vstupné pole (jedno pomocouNAJPRVzlúčiť typ a druhý pomocouPOSLEDNÝtyp zlúčenia) amatch_optionnastavený naARE_IDENTICAL_TO. Vaša tabuľka výstupných atribútov bude vyzerať nasledovne:


Môžete to urobiť s pythonom, ak ste aspoň v ArcGIS 10.1. Ak máte ArcInfo, môžete použiť nástroj Feature to Line. V opačnom prípade môžete použiť tento jednoduchý skript. Tento skript však nepodporuje skutočné krivky. Výsledné čiary, ak sú topologicky správne, by sa mali prekrývať, potom môžete spustiť priesečník tejto čiary fc a nájsť hranice, ktoré sa prekrývajú, tj. Hraničné čiary.

import arcpy import os arcpy.env.overwriteOutput = True def polys_to_lines (fc, new_fc): cesta, názov = os.path.split (new_fc) sm = 'SAME_AS_TEMPLATE' arcpy.CreateFeatureclass_management (cesta, názov, 'POLYLINE', fc, sm, sm, fc) fields = [f.name for f in arcpy.ListFields (new_fc) if f.type not in ('OID', 'Geometry')] # get attributes with arcpy.da.SearchCursor (fc, [ '[email protected]'] + polia) ako riadky: hodnoty = [(r [0] .boundary (),) + n -tica (r [1:]) pre r v riadkoch] # vložte riadky pomocou arcpy.da.InsertCursor (new_fc , ['[email protected]'] + polia) ako irows: pre hodnoty v hodnotách: irows.insertRow (vals) print 'Vytvorené: "{0}"'. Formát (názov) vrátiť new_fc ak __name__ == '__main__': fc = r'C:  TEMP  parcel_test.shp 'new = r'C:  TEMP  parcel_Linetest2.shp' polys_to_lines (fc, nové)

Ako zadať atribút pre polygón pomocou ArcGIS API pre Javascript?

Som nový v programovaní ArcGIS, pokúšam sa zadať atribút pre polygón pomocou skriptu Draw pomocou ArcGIS API pre JavaScript na základe tohto: https://developers.arcgis.com/javascript/3/jssamples/toolbar_draw.html.

Pokúšam sa zadať atribút prostredníctvom vyskakovacieho okna (vyskakovacie okno bolo pre vstup zo základného formulára) pomocou kreslenia udalostí dokončeného na základe tohto: https://developers.arcgis.com/javascript/3/jsapi/draw-amd. html#event-draw-complete, ale zlyhal som, pretože neviem, ako ho používať. Môj kód bol takýto:

Vie mi niekto povedať, ako zadať atribút inou metódou?


Vytvárate čiary z hraníc mnohouholníka s mnohouholníkovými atribútmi pomocou ArcGIS/ArcPy? - Geografické informačné systémy

Nástroj na vodorovné čiary a nástroj na hranicu symbológie mnohouholníka

Andrew Gibbs, Tony Le Donne, John Cortenbach a Camille Borrowdale

Všetky kredity sú udelené pôvodným vývojárom, pokiaľ nie je uvedené inak.

Táto sada nástrojov obsahuje dva kartograficky zamerané nástroje, ktoré je možné použiť na zlepšenie umeleckých vlastností máp vytvorených v programe ArcGIS Pro. Medzi nástroje patrí:

  • Nástroj na vodné čiary, ktorý vytvára vinetu (odvodenú od pobrežnej vinety) na základe vstupov a parametrov používateľov.

- Pobrežné vinety sú grafické znázornenia rozhrania medzi pevninou a vodou. Vinety je možné použiť na zobrazenie zeme spôsobom, ktorý, ako sa zdá, postupne vybledne do vody, predstavuje plytké oblasti pri pobreží, ktoré prechádzajú do prehlbujúcej sa vody s rozširujúcou sa sekvenciou zodpovedajúcich tvarových obrysov.

  • Symbolika hraničnej symboliky mnohouholníka, ktorá upravuje hraničnú symboliku daného mnohouholníka vytvorením širšieho obrysu mnohouholníka vo vnútri alebo mimo samotného tvaru.

-Druhý nástroj týkajúci sa vnútornej/vonkajšej symboliky hraníc mnohouholníka zjednodušuje metodológiu, pomocou ktorej môže používateľ symbolizovať hranicu rozhrania medzi susednými tvarovými súbormi pomocou dvoch oddelených symbolizovaných hraníc.

2.1 Požiadavky na systém a softvér

Kompatibilné operačné systémy

  • Oba nástroje vyžadujú užívateľskú znalosť jednotiek tvarových súborov lineárneho merania (a projekcie). Znalosť jednotiek shapefile pomôže užívateľovi pri určovaní šírky obrysu.

2.3 Inštalácia Panela s nástrojmi

  • Pridajte súbor nástrojov do svojho projektu ArcGIS Pro kliknutím pravým tlačidlom myši na & ldquoToolboxes & rdquo v okne katalógu. Vyberte & ldquoAdd Toolbox. & Rdquo V nasledujúcom dialógovom okne prejdite na miesto stiahnutého súboru nástrojov, kliknite naň a kliknite na & ldquook & rdquo

2.4 Odinštalovanie Panela s nástrojmi

  • Odstráňte súbor nástrojov z vášho projektu ArcGIS Pro kliknutím pravým tlačidlom myši na príslušný panel nástrojov v rozbaľovacej ponuke & ldquoToolboxes & rdquo. Kliknite na & ldquoOdstrániť & rdquo

Nástroj používaný v ArcGIS Pro, ktorý vytvára viacnásobné obrysy vyrovnávacej pamäte okolo polygónu tvarového súboru pomocou parametrov definovaných užívateľom. Tento nástroj pomáha pri kartografickom procese vytvárania tematických máp.

3.2 Použitie nástroja na vodné linky

1. Pracovný priestor: Užívateľom definovaný súbor tvarov

2. Trieda výstupných funkcií: Užívateľom definovaný pracovný priestor cieľového výstupu

3. Vzdialenosť vyrovnávacej pamäte: Vstup používateľa, množstvo závisí od geografickej veľkosti tvarového súboru

4. Jednotky: Vstup užívateľa, v závislosti od shapefile

5. Vnútri alebo zvonku: Vstup užívateľa, v závislosti od symbolizácie požadovanej užívateľom.

Nasledujúce nadpisy a pododdiely sa týkajú základu Pythonu v samotnom nástroji:

import arcpy # zahrňte knižnicu ArcGIS

import sys # obsahuje systémovú knižnicu na prístup k počtu parametrov

Funkcia vodného ponoru uvedená nižšie je definovaná spolu s parametrami počiatočnej vzdialenosti vyrovnávacej pamäte zadanej používateľom a požadovaného počtu vyrovnávacích pamätí. Výstup vytvorí sériu vyrovnávacích pamätí, či už vo vnútri alebo mimo samotného mnohouholníka, ktoré sa exponenciálne zvyšujú s každým nasledujúcim nárazníkom. Aby sme to dosiahli, musíme odfiltrovať každý kanál na obrázku pomocou ArcGIS Pro Toolbox.

* Mini funkcia na odoslanie tlačových správ na správny výstup

* - Správa - reťazec, ktorý sa má vytlačiť

* - Správa v okne Wing Debug I/O alebo ArcGIS Pro

if (len (sys.argv) & gt 1): # ak beží v nástroji, vytlačte ho do ArcGIS

else: # else vytlačiť na ladenie I/O

* Kompletná analýza vyrovnávacej pamäte s použitím parametrov definovaných používateľom, ktorá vytvorí viac vyrovnávacích pamätí, zlúči vyrovnávacie pamäte a vymaže jednotlivé vyrovnávacie pamäte.

* - PolygonClassification - Špecifikuje, či je vstupná vrstva funkcií pevnina alebo voda, takže vodná vrstva sa zobrazí na správnej strane

* - InitialBufferDistance - Nastaví vzdialenosť k počiatočnému vytvorenému bufferu, čo je tiež minimálna vzdialenosť nasledujúcich bufferov

* - NumberOfBuffers - Nastavuje celkový počet vyrovnávacích pamätí, ktoré sa majú vytvoriť a potom zlúčiť

* - OutlineExpansionFactor - hodnota, ktorá zvyšuje vzdialenosť medzi nárazníkmi oproti iteráciám vytvárania vyrovnávacích pamätí, počnúc počiatočnou vzdialenosťou vyrovnávacej pamäte a zvyšovaním

* - Nový tvarový súbor vrstvy funkcií, ktorý predstavuje vodnú výstelku vstupnej vrstvy funkcií.

def vignette (PolygonClassification, InitialBufferDistance, NumberOfBuffers):

# To nám umožňuje opakovane spúšťať skript bez mazania interdimátnych súborov

# Vytvorte vyhľadávací kurzor na základe súboru tvarov

# Vytvára medzipamäte mimo vrstvu vstupných funkcií pre pobrežné vodné linky

if (PolygonClassification == & quotLand & quot):

pre x v rozsahu (0, NumberOfBuffers):

# vzorec na výpočet intervalov medzi riadkami. je záporné pre vyrovnávaciu pamäť oblúka vo vnútri mnohouholníka

vzdialenosť = (InitialBufferDistance*math.exp (OutlineExpansionFactor*count)) - InitialBufferDistance

# rovnaký vzorec ako vyššie, ale pozitívny na pridanie do tabuľky atribútov.

distancePos = (InitialBufferDistance*math.exp (OutlineExpansionFactor*count)) - InitialBufferDistance

# Vytvorí vyrovnávaciu pamäť pomocou parametrov InitialBufferDistance, NumberOfBuffers a OutlineExpansionFactor a vrstvy vstupných funkcií

arcpy.Buffer_analysis (InputFeatureLayer, & quotBuffer_ & quot + OutputFeatureName + str (count) + & quot.shp & quot; vzdialenosť, & quotOUTSIDE_ONLY & quot ;, & quot; ROUND & quot; & & quot; & quot;)

# Vytvorí nové pole so vzdialenosťou vyrovnávacej pamäte a vypočíta hodnotu

arcpy.AddField_management (& quotBuffer_ & quot; OutputFeatureName+str (count)+& quot.shp & quot; & quotbufferDist & quot; & quotFLOAT & quot;)

arcpy.CalculateField_management (& quotBuffer_ & quot;+OutputFeatureName+str (count)+& quot.shp & quot; & quotbufferDist & quot; distancePos & & quot; PYTHON_9,3 & quot;)

# Vytvára medzipamäte vo vstupnej vrstve funkcií pre vodné vodné laloky

elif (PolygonClassification == & "Voda"):

pre x v rozsahu (0, NumberOfBuffers):

# vzorec na výpočet intervalov medzi riadkami. je záporné pre oblúkové tlmenie vo vnútri mnohouholníka

vzdialenosť = -(InitialBufferDistance*math.exp (OutlineExpansionFactor*count)) + InitialBufferDistance

# rovnaký vzorec ako vyššie, ale pozitívny na pridanie do tabuľky atribútov.

distancePos = (InitialBufferDistance*math.exp (OutlineExpansionFactor*count)) + InitialBufferDistance

# Vytvorí vyrovnávaciu pamäť pomocou parametrov InitialBufferDistance, NumberOfBuffers a OutlineExpansionFactor a vrstvy vstupných funkcií

arcpy.Buffer_analysis (InputFeatureLayer, & quotBuffer_ & quot; OutputFeatureName + str (count) + & quot.shp & quot; vzdialenosť, & quotOUTSIDE_ONLY & quot ;, & quot; ROUND & quot; & & quot; & quot;)

# Vytvorí nové pole so vzdialenosťou vyrovnávacej pamäte a vypočíta hodnotu

arcpy.AddField_management (& quotBuffer_ & quot; OutputFeatureName+str (count)+& quot.shp & quot; & quotbufferDist & quot; & quotFLOAT & quot;)

arcpy.CalculateField_management (& quotBuffer_ & quot;+OutputFeatureName+str (count)+& quot.shp & quot; & quotbufferDist & quot; distancePos & & quot; PYTHON_9,3 & quot;)

# Nastavte predvolené parametre a potom ich získajte zo zoznamu argumentov, ak v programe ArcMap bežíme ako nástroj.

InitialBufferDistance = 700 # v metroch

if (len (sys.argv) & gt1): # ak beží v nástroji, získajte parametre z oblúka

InputFeatureLayer = arcpy.GetParameterAsText (0) # trieda vstupných funkcií

OutputWorkspace = arcpy.GetParameterAsText (1) # pracovný adresár

OutputFeatureName = arcpy.GetParameterAsText (2) # reťazec pre názov výstupného súboru

PolygonClassification = arcpy.GetParameterAsText (3)#string 'land ' or 'water '

InitialBufferDistance = arcpy.GetParameter (4) #long int pre prírastky

NumberOfBuffers = arcpy.GetParameter (5) #long int na exponenciálne zvýšenie počtu NumberOfBuffers

OutlineExpansionFactor = arcpy.GetParameter (6) #double

# Vytlačte parametre pre ladenie

MyPrint (& quotInputFeatureLayer: & quot + InputFeatureLayer)

MyPrint (& quotOutputWorkspace: & quot + OutputWorkspace)

MyPrint (& quotOutputFeatureName: & quot + OutputFeatureName)

MyPrint (& quotPolygonClassification: & quot + PolygonClassification)

MyPrint (& quotInitialBufferDistance: & quot + formát (InitialBufferDistance))

MyPrint (& quotNumberOfBuffers: & quot + formát (NumberOfBuffers))

MyPrint (& quotOutlineExpansionFactor: & quot + formát (OutlineExpansionFactor))

# To nám umožňuje opakovane spúšťať skript bez odstraňovania prechodných súborov

# krok spracovania tlače na obrazovku

MyPrint (& quot; Spustenie vinetovej funkcie: Vytváranie vyrovnávacích pamätí na základe PolygonClassification, InitialBufferDistance, OutlineExpansionFactor a NumberOfBuffers. & Quot)

# spustí funkciu vinetácie

Vignette (PolygonClassification, InitialBufferDistance, NumberOfBuffers)

# krok spracovania tlače na obrazovku

# krok spracovania tlače na obrazovku

# Vytvorí prázdny zoznam na načítanie jednotlivých súborov vyrovnávacej pamäte

# pripojí jednotlivé súbory vyrovnávacej pamäte do zoznamu FClassesList

# zlúči všetky prvky zoznamu FClassesList do jedného súboru

# krok spracovania tlače na obrazovku

MyPrint (& quot; Zlúčenie vyrovnávacích pamätí bolo dokončené. & Quot)

# krok spracovania tlače na obrazovku

MyPrint (& quot; Vymazanie jednotlivých tried funkcií vyrovnávacej pamäte. & Quot)

# Odstráni jednotlivé vyrovnávacie pamäte použité v nástroji pre vinetovanie

pre funkciu v FClassesList:

# krok spracovania tlače na obrazovku

MyPrint (& quot; Vymazanie jednotlivých tried funkcií vyrovnávacej pamäte hotové. & Quot)

# krok spracovania tlače na obrazovku

MyPrint (& quot; Dokončené vytváranie vodovodných potrubí! & Quot)

4.0 Symbologický nástroj mnohouholníkovej hranice

Nástroj Symbológia hraníc mnohouholníka umožňuje používateľovi zmeniť obrys hranice mnohouholníka na vnútornej alebo vonkajšej strane hranice mnohouholníka.

1. Vstupné vlastnosti: Užívateľom definovaný súbor tvarov

2. Trieda výstupných funkcií: Užívateľom definovaný pracovný priestor cieľového výstupu

3. Vzdialenosť vyrovnávacej pamäte: Množstvo vstupov používateľa sa bude líšiť v závislosti od geografického rozsahu tvarového súboru

4. Jednotky: Vstup užívateľa, v závislosti od shapefile

5. Vnútri alebo zvonku: Vstup používateľa závisí od symbolizácie požadovanej používateľom.

Nasledujúce nadpisy a pododdiely sa týkajú základu Pythonu v samotnom nástroji:

import arcpy # zahrňte knižnicu ArcGIS

import sys # obsahuje systémovú knižnicu na prístup k počtu parametrov

if (len (sys.argv) & gt 1): # ak beží v nástroji, vytlačte ho do ArcGIS

else: # else vytlačiť na ladenie I/O

# Nastavte predvolené parametre a potom získajte parametre z argumentu

# list, ak v programe ArcMap bežíme ako nástroj.

Skript #Python na rýchle vytvorenie vnútorného obrysu mnohouholníka v ArcGIS Pro.

#Nastavte na použitie v súprave nástrojov Arc.

InputPath = & quotC: temp lower48.shp & quot # definuje cestu vstupného súboru

OutputPath = & quotC: temp lower48inside.shp & quot # názov výstupného súboru

BufferDistance = vstupné množstvo medzipamäte s vzdialenosťou „20 míľ“ #pohyblivého bodu

if (len (sys.argv) & gt1): # ak beží v nástroji, získajte parametre z ArcGIS Pro

InputPath = arcpy.GetParameterAsText (0)

OutputPath = arcpy.GetParameterAsText (1)

BufferDistance = arcpy.GetParameterAsText (2)

Choice = arcpy.GetParameterAsText (3)

# Vytlačte parametre pre ladenie

MyPrint (& quotInputPath: & quot +InputPath)

MyPrint (& quotOutputPath: & quot +OutputPath)

arcpy.AddMessage (& quot; Vytváranie symboliky hraníc mnohouholníka na základe vstupov používateľov. & quot)

(Poznámky) Prvý riadok vyššie uvedeného kódu zaisťuje, že skript sa môže opakovane spúšťať bez prepisovania medziľahlých súborov. Nasledujúci riadok je založený na tom, či sa používateľ rozhodne nakresliť hranicu zvnútra, a ak áno, vytlačí sa správa označujúca začiatok spracovania, potom nasledujúci riadok vytvorí vyrovnávaciu pamäť na základe tvarového súboru určeného používateľom a následne nakreslí ťah. vnútri hranice. Nakoniec sa vytlačí správa, ktorá používateľa upozorní po dokončení ukladania do vyrovnávacej pamäte.

vytlačiť (& quot; Začína sa spracovanie. & quot)

#Úplná analýza pomocou parametrov definovaných používateľom

arcpy.analysis.Buffer (InputPath, OutputPath, & quot- & quot; BufferDistance; & quotOUTSIDE_ONLY & quot; & quot; ROUND & & quot; & quotNONE & quot; None, & &PLANAR & quot;)

arcpy.AddMessage (& quot; Dokončený vnútorný hraničný obrys. & quot)

vytlačiť (& quot; Začína sa spracovanie. & quot)

#Úplná analýza pomocou parametrov definovaných používateľom

arcpy.analysis.Buffer (InputPath, OutputPath, BufferDistance, & quotOUTSIDE_ONLY & quot; & quot; ROUND & quot; & & quotNONE & quot; None, & &PLANAR & quot;)

arcpy.AddMessage (& quot; Dokončený vonkajší hraničný obrys. & quot)

(Poznámky) Začiatok tohto bloku kódu je príkaz & lsquoelse if & rsquo, ktorý vyzve kód na pokračovanie, ak používateľ zvolí možnosť & lsquooutside & rsquo zdvih. Potom sa vytvorí vyrovnávacia pamäť rovnako ako v predchádzajúcom kóde & lsquoinside & rsquo, ale ťah sa nakreslí zvonku. Nakoniec sa vytlačí správa, ktorá používateľa upozorní na ukončenie vyrovnávacej pamäte.

5.0 Riešenie problémov a kontaktné informácie

Ak máte s touto sadou nástrojov nejaké problémy alebo obavy, neváhajte kontaktovať nasledujúce:


Určenie smeru polygónov pomocou QGIS?

Je možné v QGIS získať smer najdlhšej strany obdĺžnika?

Viem, ako zistiť smer čiarovej vrstvy. Potrebujem však vedieť smer mnohouholníka. Dalo by sa začať v strede mnohouholníka a nájsť najkratšiu cestu k hranici pomocou čiary a vziať smer tejto čiary, ale neviem, ako by sa táto čiara nakreslila automaticky pre 30 000 polygónov.

3 odpovede

V QGIS 3.16+ je nová funkcia: main_angle (), ktorá uľahčuje prácu.

Odpovedal pred 1 mesiacom Francesco Catani s 2 hlasmi za

Ak na svojej vrstve spustíte algoritmus „Orientovaný minimálny ohraničovací rámček“, vo vašej vrstve sa zobrazí nové pole uhla, ktoré udáva uhol tohto minimálneho ohraničujúceho poľa. Myslím, že to je to, čo potrebuješ.

Odpovedal pred 1 mesiacom ndawson so 4 hlasmi za

Mám spôsob, ktorý by mohol fungovať iba pomocou vektorových operácií a výrazov QGIS. Zistí uhol najdlhšieho segmentu mnohouholníkových prvkov.

  • Skonvertujte N polygónových prvkov na N lineárnych prvkov
  • Rozložte N lineárnych prvkov na M jednoduchých úsečiek
  • Jednoduché segmenty riadkov M majú premennú ID z mnohouholníkov. Vyberte segmenty riadkov s dĺžkou, ktorá sa nerovná maximálnej dĺžke zoskupenej podľa tohto ID, a odstráňte. Z každého mnohouholníka tak zostane len najdlhší jednoduchý segment čiary.
  • Pridajte atribút uhol k zostávajúcim jednoduchým segmentom čiar pomocou funkcie atan2.
  • Pripojte vrstvu polygónu k vrstve segmentu čiary v atribúte ID.

Váš polygón má teraz spojený atribút „uhol“, čo je uhol najdlhšej strany (v radiánoch).

To je algoritmus. Implementácia je nasledovná:

Na prvé dva kroky budete potrebovať „mnohouholníky k čiaram“ z panela s nástrojmi QGIS a potom „rozložiť riadky“ zo súboru nástrojov.

Ak chcete získať najdlhšie jednoduché segmenty riadkov zoskupené podľa premennej "id", urobte príkaz "Vybrať podľa výrazu" a použite: $ dĺžka! = Maximum ($ dĺžka, "id") - premenná vášho ID môže mať iný názov, musí byť jedinečný. na mnohouholník. Uplatnite to a mali by ste mať vybratú väčšinu jednoduchých segmentov čiar. Zapnite úpravy pre túto vrstvu a tieto funkcie vypnite.

Stĺpec uhla vytvorte pridaním nového atribútu s názvom „uhol“ a jeho aktualizáciou podľa nasledujúceho vzorca:

Potom vypnite úpravy pre túto rozloženú vrstvu a uložte.

Nakoniec pomocou vlastností mnohouholníkovej vrstvy vytvorte Spojenie z mnohouholníkov k segmentom čiar zodpovedajúcim atribútu id.

Teraz sa pozrite na tabuľku atribútov vašich polygónov a mala by mať uhol najdlhšieho segmentu čiary od vrstvy spojeného segmentu čiary.

Toto nie je dynamické, takže ak zmeníte polygóny, nebudú sa aktualizovať správne, budete musieť začať odznova. Mám podozrenie, že tento pracovný postup by mohol byť zabalený do vývojového diagramu.


Python - získavanie atribútov z riadka obsiahnutého v tvarovom súbore MultiLineString, ktorý pretína mnohouholník

Mám 2 tvarové súbory, jeden obsahuje veľa riadkov, ktoré tvoria cestnú sieť, a druhý s mnohými bodmi GPS.

Zatiaľ sa mi podarilo otvoriť oba shapefiles a urobiť križovatku () pomocou Shapely a Fiona pomocou kódu, ktorý nájdete tu - https://gis.stackexchange.com/a/128210/52590

Tu je kópia môjho kódu, ktorý získava priesečníky:

A takto vyzerajú „intersecciones“ po vytlačení:

To teda znamená, že medzi čiarami tvarového súboru a prvým mnohouholníkom mnohoúhelníkového tvarového súboru sú 3 priesečníky.

Potrebujem však získať dva atribúty („Nombre“ a „Sentido“) z každého riadku v súbore shapefile, ktorý pretína polygóny, okrem presného bodu, kde sa pretínajú, aby som mohol získať vzdialenosť od stredu mnohouholník do priesečníka po.

Moja otázka teda znie, či existuje nejaký spôsob, ako tieto atribúty získať pomocou Shapely alebo akejkoľvek inej knižnice Python. Tiež by bol najlepší spôsob, ako iterovať každý polygón a uložiť údaje? Myslím na slovník, ktorý obsahuje každý mnohouholník s atribútmi pretínajúcich sa čiar a vzdialenosti. A nakoniec, existuje nejaký účinnejší spôsob, ako nájsť križovatky? Spracovanie jedného mnohouholníka trvá asi 1 minútu a pravdepodobne to budem potrebovať v budúcnosti rýchlejšie.

Ak mi chýbajú informácie, dajte mi prosím vedieť, aby som mohol otázku upraviť.


Vytvorenie mriežky štvrtinovej časti v Pythone

(Ak používate Firefox, kliknite pravým tlačidlom myši a uložte odkaz ako)
Stiahnite si Custom Grid Toolbox – funguje s ArcGIS 10.1+
(obsahuje 5 nástrojov, 4 na výrobu štvrtinových a štvrťštvrtinových sekčných mriežok so štítkami a 1 na vytvorenie vlastnej mriežky)

(akékoľvek dary idú na náklady na hosting)

Pozrite sa, ako používať nástroje vlastnej mriežky a video#8212 aktualizované 16. júna 2015

Dostal som za úlohu vytvoriť štvrťštvrtinovú sekčnú mriežku pre niekoľko grófstiev v Nebraske, pretože BLM jeden nemal k dispozícii. Mali však sekčnú mriežku. Potreboval som teda rozdeliť každú mriežku sekcií na 16 častí a tiež pridať atribút, ktorý bude použitý ako štítok pre každú mriežku sekcií štvrť štvrťroka. Tiež viem, že to nie je náhrada za skutočnú mriežku štvrťročnej štvrtej sekcie, ale niekedy sa vyžaduje, aby ste pracovali s tým, čo máte. A v tomto prípade bude elektrickú sieť na pomenovanie svojich zariadení a zákazníkov používať elektráreň na štvrtinu štvrťroka. Všetko závisí od toho, čo potrebujete.

Musel som vytvoriť štvrtinové štvrťročné sekcie pre asi 3000 sekcií v Nebraske, takže robiť to ručne neprichádzalo do úvahy. Riešením bolo použitie Pythonu.

Za týmto účelom som vytvoril mriežku da.SearchCursor v mriežke sekcie Nebraska, ktorá prešla každým polygónom a pomocou poľa SHAPE (geometria) zaznamenala súradnice každého vrcholu v polygóne. Tiež zaznamenal súradnice každého rohu pre rozsah mnohouholníka.

Po nájdení súradníc každého vrcholu som potom zistil vzdialenosť každého vrcholu od každého rohu rozsahu mnohouholníka. To mi umožnilo nájsť, ktorý vrchol zodpovedá ktorému rohu. Potom sa vykonala malá matematika na určenie súradníc každej štvrtej štvrtiny úseku pozdĺž vonkajšej strany mriežky rezu, ako je uvedené nižšie.

Ďalej som vytvoril geometrický objekt Polyline a nechal ho spojiť každý bod s bodom priamo oproti nemu. Potom bol Da.InsertCursor použitý na vloženie každého objektu Polyline do novej triedy prvkov polyline.

Potom som ručne použil nástroj Rozdeliť polygóny na paneli s nástrojmi Rozšírené úpravy v programe ArcMap na rozdelenie sekcií na základe predtým vytvorených kriviek. Bolo potrebné použiť hodnotu pretečenia asi 30 stôp, ale to sa bude líšiť v závislosti od použitej mriežky rezu. Dôvodom je, že ak by polygón mal v každom rohu viac než len jeden vrchol, mohla by existovať medzera medzi krivkami a hranicou polygónu. Potom, čo som dostal Overflow správne, mi zostalo presne to, čo som potreboval, ale stále som potreboval štítky.

Tiež som potreboval každej sekcii štvrťroka štvrťroka priradiť konkrétne číslo, ktoré sa bude používať ako štítok. Dobrou správou je, že čísla boli pre každú sekciu qq rovnaké.

Keď som premýšľal, ako to urobiť, zistil som, že už mám to, čo potrebujem. Potreboval som urobiť trochu viac matematiky, aby som našiel ťažisko každej štvrtej štvrtiny. Tento scenár bol podobný tomu prvému. Použil som da.SearchCursor na poli SHAPE, aby som prešiel cez každú sekciu qq a našiel súradnice každého rohu. Odtiaľ som bol schopný nájsť ťažiskové súradnice pre každý rez qq. To mi umožnilo zaznamenať, ktoré označenie bolo prepojené s ktorou štvrtinou štvrťroka, ako je uvedené vyššie.

Keďže ťažisko bolo vypočítané pre každý rez qq, pre každý z nich som tiež vytvoril bodový geometrický objekt. Potom som použil InsertCursor na vloženie každého bodového objektu spolu s jeho príslušným atribútom label do novej triedy bodových funkcií.

Nakoniec som urobil priestorové spojenie v novovytvorenej triede bodových prvkov a predtým vytvorenej mriežke sekcie qq. Výsledkom bola nová mriežka štvrťštvrťovej sekcie s príslušným štítkom.

Rozhodol som sa zbaviť hardcodingu a sprístupniť tieto nástroje prostredníctvom ArcMap Toolbox, aby ich mohli používať iní. Vytvoril som tiež dva podobné skripty na vytvorenie mriežky a štítkov štvrtej sekcie. Ak ste si to nevšimli, v hornej časti tejto stránky je k dispozícii na stiahnutie Custom Grid Toolbox.

Dúfam, že niekomu budú tieto skripty užitočné. Ak máte nejaké otázky alebo problémy, zanechajte komentár a pokúsim sa vám pomôcť.

52 myšlienok na & ldquo Vytvorenie mriežky štvrťročnej štvrtej časti s Pythonom a rdquo

Toto je fantastické! Keď som dlho hľadal nástroj na rozbitie sekcií a nenašiel som nič iné ako sklamanie, našiel som toto. Tento nástroj robí presne to, čo som dúfal, a urobí to oveľa jednoduchšie nájsť a vykresliť približné hranice vlastností. Ďakujeme vám za to, že ste na to nielen prišli, ale aj za zaslanie kódu a dokonca aj panela s nástrojmi. Vďaka grafickému rozhraniu je to veľmi jednoduché. Spracoval som celý štát Missouri (niekoľko miliónov štvrťštvrťových úsekov) a trvalo to len niekoľko hodín.

Dan, ďakujem za milé slová! Som rád, že ste to dokázali dobre využiť.

Po prvé, wow. Zdá sa, že týmto nástrojom venujete veľa času! Aktuálne stojím pred podobnou úlohou. Potrebujem vytvoriť 3 mriežky šírky/dĺžky s rôznym rozlíšením: 1/4 stupňa, 1/20 stupňa a 1/100 stupňa. Už som vytvoril iba 1 stupňový tvarový súbor pomocou nástroja CreateFishnet, ktorý som musel urobiť 16 oddelených časov a potom ich zlúčiť kvôli obmedzeniu veľkosti, ktoré nástroj má. Dokážem si len predstaviť, akú bolesť by bolo urobiť rovnaký postup pre mriežky s vyšším rozlíšením. Zdá sa, že štvrtinový nástroj by bol použiteľný na rozlíšenie 1/4 stupňa, ale zaujímalo by ma, či by sme nemohli nástroj upraviť tak, aby rozdelil každú bunku na 1/20, potom na 1/100? Alebo z toho urobiť inú premennú? Pri pohľade na tieto dva skripty pythonov na vytváranie sekcií to nevyzerá, že by to bolo životaschopnou možnosťou, ale úprimne povedané, je to trochu nad mojou hlavou, takže si nie som istý, či viem, ako upraviť kód sám. Nie som si ani istý, či je to najlepší spôsob, ako to urobiť, pretože počet buniek je taký veľký, ale možno by ste mi mohli pomôcť.

PS: Kliknutím na odkaz na stiahnutie panela s nástrojmi sa zdá, že nefunguje, iba sa otvorí v prehliadači …am niečo mi chýba?

Sada nástrojov sa mi sťahuje v poriadku. Môžete skúsiť kliknúť pravým tlačidlom na odkaz a urobiť Uložiť ako alebo Uložiť odkaz ako.

Pokiaľ ide o vašu otázku, vytvorenie mriežok s vyšším rozlíšením z kódu, ktorý som zverejnil, by bolo určite možné. Len by to chcelo ďalšie rozdelenie. Vytvorenie funkcie na tento účel by bolo správnou cestou. Nie som si istý, či vytvárate svoje šírkové/dlhé mriežky na základe existujúcej mriežky alebo funkcie. Ak si nájdem čas, pošlem vám e -mail a získajte ďalšie informácie.

Áno, to fungovalo, nemôžem uveriť, že som to neskúsil.

To by pomohlo! Potreboval by som nejaké vedenie, ale myslím si, že by bolo užitočné to urobiť pre ľudí, ktorí potrebujú rozdeliť mriežky do rôznych vyšších rozlíšení (nemôžem byť jediný, však?).

Každopádne mám tvarový súbor lat/dlhý 1 stupeň, v ktorom je každá bunka reprezentovaná ako mnohouholník. (180 * 360 celkových polygónov). Potrebujem rozdeliť všetky polygóny v tomto tvarovom súbore tak, aby každá bunka bola rozdelená na šestnástky (takže myslím, že pomocou vášho štvrťročného skriptu). Nie som si istý, či to odpovedá na vašu otázku, ale ak budete mať príležitosť, rád by som vás počul.

Len som vám chcel oznámiť, že sa budem venovať svojej úlohe iným spôsobom, takže nie je potrebné tráviť čas pomáhaním mi pri úprave algoritmu. Som si istý, že tento nástroj mi bude v budúcnosti veľmi užitočný, a som rád, že som objavil vašu webovú stránku! Ešte raz ďakujem za zdieľanie vašich myšlienok.

Som rád, že ste na niečo prišli! Chcem vám len oznámiť, že som do panela s nástrojmi pridal nový nástroj s názvom Vytvoriť vlastnú mriežku a súbor nástrojov som premenoval z Nástrojov mriežky sekcií na Nástroje vlastnej mriežky. Nový nástroj vám umožňuje zvoliť vertikálne a horizontálne rozdelenie. 1/20 by ste teda mohli vytvoriť zadaním buď 5 ࡪ alebo 4 ࡫ do parametrov nástroja. Dúfam, že vám tento nástroj bude v budúcnosti užitočný, a ďakujem vám za vaše komentáre a podnety k ďalším funkciám. Nový súbor nástrojov je možné stiahnuť v hornej časti tejto stránky.

Hľadal som takýto nástroj, ďakujem! Máte šancu sprístupniť zdrojový kód? Zdá sa, že skript je vložený do súboru nástrojov.

Grant, ospravedlňujem sa za to. Skripty som nedávno aktualizoval a zabudol som ich znova uverejniť. Pridal som ich na začiatok stránky. Ďakujem za pripomenutie a dúfam, že vám budú užitočné.

Úplne perfektné pre to, čo som potreboval. Ty si ten muž. Potreboval som niečo na rozdelenie Quarter Quads na snímky NAIP a toto bolo PERFEKTNÉ!

Ďakujem, Tom! Vždy ma zaujíma, akým spôsobom ľudia nástroje používajú, a preto si vážim, že ste mi to dali vedieť!


Vytvárate čiary z hraníc mnohouholníka s mnohouholníkovými atribútmi pomocou ArcGIS/ArcPy? - Geografické informačné systémy

Na voľnej nohe ArcGIS Špecialista s viac ako 25 -ročnými skúsenosťami so softvérom Esri, ktorý pracuje predovšetkým s programami ArcGIS Pro, ArcGIS for Desktop, ArcPy/Python, Geoprocessing (vrátane služieb Geoprocessing Services a ModelBuilder), Stránkami riadenými údajmi, Zoológiou a genealógiou zosilňovačov.

  • Videá e -learningu ArcGIS Pro, ArcPy, ArcGIS for Desktop a Google Earth, ktoré sú k dispozícii prostredníctvom Discover Spatial ** ZDARMA **

K dispozícii pre komerčné úlohy poradenstva, školenia a podpory ArcGIS a ochotné poskytnúť cenové ponuky na riešenie akýchkoľvek neriešiteľných problémov s ArcGIS Pro, ArcGIS for Desktop a ArcPy, ktoré sa objavujú na GIS Stack Exchange, keď nemusia byť vhodné na rýchle riešenie pomocou zameraného formátu otázok a odpovedí .

Vykonajte krátky prieskum a urobte si to svoje Školenie ArcGIS for Desktop (a ArcPy) potreby známe!


Prehľad geografických informačných prvkov

Rovnako ako mapa, aj GIS je založený na vrstvách. A podobne ako tematické vrstvy na mape, súbory údajov GIS predstavujú logické zbierky jednotlivých funkcií s ich geografickými polohami a tvarmi, ako aj popisné informácie o každej funkcii uloženej ako atribúty.

Pred GIS tvorcovia máp vytvorili sériu mapových vrstiev, ktoré slúžili na geografický opis a charakterizáciu polohy. Často používali priesvitné fólie, ktoré sa dali preložiť na ľahký stôl. Tieto integrované displeje boli použité na vizualizáciu priestorových vzťahov a získanie prehľadu o relevantných charakteristikách miesta. Praktici by ich použili na interpretáciu a vyvodenie zaujímavých záverov.

Jeden vizionár, ktorý použil tento proces na plánovanie, bol doktor Ian McHarg, záhradný architekt a uznávaný spisovateľ regionálneho plánovania s využitím prírodných systémov. Jeho kľúčová kniha bola uverejnená v roku 1969 a predstavila koncepty ekologického plánovania, ktoré uplatňovali tieto zásady prekrytia mapy. Viac sa o Ianovi McHargovi a jeho práci môžete dozvedieť na Wikipédii.

Zhruba v tom istom čase doktor Roger Tomlinson, známy ako „otec GIS“, vyvinul svoje rané nápady pre GIS. Okrem iných aspektov GIS ďalej artikuloval koncept tematických vrstiev a prekrytí ako základný kameň GIS.

Títo raní praktici GIS premýšľali o tom, ako by bolo možné geografické informácie rozdeliť do série vrstiev logických informácií - ako o viac ako náhodnú zbierku predmetov. Predstavili si homogénne zbierky reprezentácií, ktoré by bolo možné spravovať ako vrstvy. These GIS users organized information in individual data themes that described the distribution of a phenomenon and how each theme should be portrayed across a geographic extent. They found that they could use relatively simple GIS data types (points, lines, polygons, and rasters). These simple data layers could be combined through location—that is, georeferencing enabled datasets to be combined in a map or overlaid using geoprocessing operations such as polygon overlay.

These pioneers also provided a protocol for data collection and how to manage these collections as geographic data layers. Here is one example for representing soils.

Each and every area (polygon) in a specified extent could be assigned a dominant soil type, and the soil types could be consistently classified and described using properties or attributes of each polygon. In the case of soils, very involved sets of properties are typically recorded for each soil polygon.

A theme could be defined to delineate various areas representing the dominant soil type (that is, a layer collection of soil type polygons and their descriptions as attribute values).

This organizing principle of geographic layers became one of the universal GIS principles that provided the foundation for how GIS systems represent, operate on, manage, and apply geographic information.


Ministerstvo poľnohospodárstva, výživy a vidieka

If you use the "Find an Address" search option, type in your street address in the "Address" box and type your town or city in the "Municipality" box.

How to add information to your map

Once you have found your location, you can add information to the map.

  1. Under the "Map Information" tab, click on the "Select Map Layers" button.
  2. Open the "Parcels," "Administrative" and "Environment/Base Data" lists by clicking on the plus sign icon beside the words.
  3. Choose the layers you wish to include or exclude by checking or unchecking the boxes on the left-hand side of the layer names.
    Poznámka: Some of the layers can only be viewed when the map is zoomed to a certain scale. These layers will appear grey on the map until the map is zoomed to a viewable scale.
  4. Some layers will require you to click on the button beside the layer name to open a legend.

To find more information about a particular layer:

  1. Under the "Map Information" tab, click the "Select Map Layers" button and check the layer boxes you would like to see / identify.
  2. Click the "Identify" button.
  3. Click on a location of the map to see more information for that area. A list of results about the layer at the point where you clicked will appear in the "Identify Results" box to the left of the map. You can click each result to view details about that layer.
  4. To turn on the aerial photos, check the "Ontario Imagery/Air Photos" box at the bottom of the "Map Layers" list. You may need to decrease the transparency of layer groups, or uncheck them, to see the "Ontario Imagery/Air Photos" layer.

Poznámka: You may get multiple results when you click on the map. Try to click in the centre of the map feature you want information about.

Navigation

The buttons under the "Navigation" tab allow you to move around the map. You can also create and save bookmarks to use whenever you visit the Agricultural Information Atlas website.

To create a bookmark

  1. Under the "Navigation" tab, click the "Bookmarks" button, or click the book icon on the left-hand side of the map. The "Bookmarked Locations" box will open
  2. Click "Bookmark Current Extent," enter in a name for your bookmark, then press "OK."

To return to a map you bookmarked

  1. Click the "Bookmarks" button under the "Navigation" tab or the book icon on the left-hand side of the map. Any bookmarks that you have saved will be listed in the "Bookmarked Locations" box.
  2. Click on the name of the bookmark you would like to use.

Create Maps

  1. Click the "Create Map" button under the "Markup & Printing" tab. A list of different map templates will appear.
  2. Click on the type of map you would like to create.

You can save and print maps that you create.

To save and print a "General Use Map":

  1. Fill in the fields in the left-hand column, then click "Print."
  2. The system will create a printable map. When the file is ready, click "Open File." The map will open in a new window.
  3. In the new window, you can select to print or save your map.

To save and print a specific map:

  1. Fill in the fields in the left-hand column. Poznámka: When creating a map using one of the templates, you can auto-populate location information. Urobiť toto:
    1. Click on the "Pencil" icon found in the left-hand column.
    2. Click on the desired location in the map. "Upper Tier Municipality," "Lower Tier Municipality," "Geotownship," "Roll Number," "Concession" and "Lot" and "911 Address" information will fill in automatically.

    Maps are created with a static legend. Layers will appear in the legend even when they are not turned on in the map.

    Poznámka: When you export a map, the map will open in a new window. To save a copy to your computer hover your mouse over the bottom of the map until a settings bar shows up and click the save icon. You could also use the keyboard function Shift + Ctrl + S to save a copy.

    Add text and draw shapes on your map

    You can add text, and draw points and shapes directly on your map. Click the "Point" button under the "Markup & Printing" tab to see all of the tools available. See the glossary section below for more information about each tool.

    Add Location Information to your map

    You can add text, latitude/longitude coordinates and points to your map. Right-click your mouse on the part of the map you would like to label and select the tool you would like to use.

    Draw Field Boundaries

    1. Under the "Markup & Printing" tab, click the "Point" button and select the "Polygon" tool from the "Markup Tools" drop down boxsection. You can change the style and colour of your polygon by clicking the "Styles" button found beside the "Edit" button.
    2. Click on a starting point on the map and continue clicking to add sides to the polygon. You can zoom in and out and pan around without affecting the polygon.
    3. Double-click the mouse to finish the polygon.
    4. To make changes to a polygon, click the "Edit" button, then click on a polygon you've made on your map.

    Measure the area of a field

      Under the "Map Information" tab, select the "Measure Area" button. Click on a starting point on the map and continue clicking to create a field boundary.

    Poznámka: You can click on the "Hide Labels" button to remove the labels from your drawing.

    Measure distance

    1. Under the "Map Information" tab, click the "Measure Distance" button.
    2. Click on a starting point on the map and continue clicking along the path you want to measure.
    3. Double-click to finish the line. Line measurements of each section of the line will be displayed along the line on the map. The total distance will appear at the end of the line.
    4. Use the drop-down menu that appears when you click the "Measure Distance" button to select your preferred unit of measurement. The defaults are "m" (metres) and "m 2 " (square metres).

    Gathering Information to Register for a Premises Identification Number (PID)

    To register for a PID through the Provincial Premises Registry, at least one of one of the following pieces of information is required: (1) Assessment Roll Number, (2) 911 address, and/or (3) geographic coordinates (i.e. latitude and longitude).

    Obtaining your Assessment Roll Number (ARN)

    Create a map for a Tile Drainage Record

    1. Under the "Markup & Printing" tab, click the "Point" button and select the "Polygon" tool.
    2. Use the polygon tool to outline the area on the map where the drain is located. Once you have created your shape, double-click the mouse to finish.
    3. Under the "Markup & Printing tab, click the "Create Map" button.
    4. Choose "Tile Drainage Record" under the "Select Type of Map" list. Click on the "Pencil" icon found in the left-hand column to auto-populate information about the location.
    5. Click on the desired location on the map. "Upper Tier Municipality," "Lower Tier Municipality," "Geotownship," "Concession" and "Lot" information will fill in automatically.
    6. Fill in any missing information about the tile drain. Once all of the information is entered, enter in a title for the map and click "Export Map."
    7. The system will create a printable map. When the file is ready, click "Open File." The map will open in a new window.
    8. In the new window, you can select to print or save your map.

    Poznámka: Once you close the map it is gone. It is good practice to save your map for your records.

    Create a map for a Nutrient Management Strategy or a Non-Agricultural Source Material (NASM) Plan

    1. Once you find your location, click the "Select Map Layers" button under the "Map Information" tab
    2. Choose the layers you wish to include or exclude by checking or unchecking the boxes to the left of the layer names.
    3. For a Nutrient Management Strategy or a NASM Plan, it is helpful to check the following layers:

    Create a map for AgErosion Information

    Create a map using the GLASI Checkup Map template

    1. First, you'll need to turn on the watershed and sub-watershed information for your map. Under the "Map Information" tab, click the "Select Map Layers" button. Click the plus sign icon beside "Environment/Base Data" to extend the list. Check the boxes beside "Secondary Watersheds" and "Tertiary Watersheds" in the list. You now have the information you need to create your GLASI Checkup Map.
    2. Under the "Markup & Printing" tab, click the "Create Map" button.
    3. Select "GLASI Checkup Map" from the list.
    4. Enter information about your operation in the "GLASI Checkup Map Information" column. Click on the "Pencil" icon to auto-populate information about the location. "Upper Tier Municipality," "Lower Tier Municipality," "Geotownship," "Roll Number," "Concession" and "Lot" information will fill in automatically.
    5. Fill in any missing information. The watershed and sub-watersheds information is displayed on the map: the "Watershed" information is displayed on the map in green font, and the "Sub-Watershed" information is in purple font.
    6. Enter in a title for your map and click "Export Map."
    7. The system will create a printable map. When the file is ready, click "Open File." The map will open in a new window.
    8. In the new window, you can select to print or save your map.

    Poznámka: Once you close the map or web browser, the map is gone. It is good practice to save your map for your records.

    Create a map using the Pest Assessment Report Sketch

    See the different help topics above for help with searching for your farm's location, measuring your property, labelling your map, using the markup tools and adding other information to your map.

    1. Zoom to your farm property.
    2. Under the "Map Information" tab, click on the "Select Map Layers" button. Click the plus sign beside "Background Map and Imagery", if necessary, to expand the menu and check the "Ontario Imagery" box to turn on the layer. To see the "Ontario Imagery" layer on the map, uncheck the "LIO Topographic" box or increase the transparency by using the slider bar to the right of the layer name.
    3. Measure your application areas using the "Measure Area" button under the "Map Information" tab. See the "Measure the area of a field" section above for help using this function.
    4. Add points to your map to show the scouting locations where grubs and/or wireworms were detected.

    If you want to add latitude and longitude coordinates, click the button at the bottom of the map to see the latitude and longitude coordinate for the location of your mouse.
    1. When you are finished making your map, click on the "Create Map" button under the "Markup & Printing" tab.
    2. Select "Pest Assessment Report Sketch" from the "Create Map" list.
    3. Enter information about your operation in the "Pest Assessment Report Sketch" column. Click on the "Pencil" icon to auto-populate information about the location. Fill in any missing information.
    4. Click the "Export Map" button. The system will create a printable map. When the file is ready, click "Open File." The map will open in a new window.
    5. In the new window, you can select to print or save your map.

    Create a map for a BeeYard Registration Sketch

    Choose "Bee Yard Registration Sketch" under the "Select Type of Map" list. Click on the "Pencil" icon found in the left-hand column to auto-populate information about the location.

    Create a map for Fit 5 CLI Projects

    Create a map for Farm Fire Safety

    Agriculture and Agri-Food Canada Crop Inventory Legend

    Glosár

    About Tab

    Takes you to a web page with contact information and important messages.

    Gives an overview of the AgMaps.

    Navigation Tab

    Create and save a bookmark of a map location to use at a later time.

    Zooms in on the map view.

    Zooms out from the map view

    Returns the map view to its original location or region.

    Go back to previous map view

    Go forward through sequence of map views.

    Map Information Tab

    Allows you to choose layers to include or exclude from the map.

    Allows you to click on a location and see layer information.

    Allows you to search for an area using different methods.

    Allows you to search for specific features on the map.

    Measure the distance and area of a feature on the map.

    When you click the "Measure Distance" or the "Measure Area" button, a drop-down menu will appear that allows you to choose a unit of measurement.

    When you click on the "Measure Area" button, the "Enable Snapping" button will appear. If you click on it then a circle with a point will follow your cursor allowing you to "snap" the vertices of your markup features, or points you want to measure, to other features.

    Let's you turn off the labels after you have measured an area or a distance.

    Lets you erase markings made on the map.

    Deletes all markings made on the map.

    Allows you to load your data into the map for viewing.

    Markup and Printing Tab

    Allows you to create a map using different pre-loaded templates.

    Contains tools for drawing on maps.

    Let's you edit an existing drawing on your map.

    These tools are available in the drop-down menu of the "Edit" button. You can edit a markup, erase a markup or clear all markups on your map.

    Allows you to choose the style of a drawing tool, such as colour and type of line.

    Allows you to download, in shp file format, the points, lines, or polygons, you created on the map.

    Allows you to export an image of the map, in various formats, and include georeference data if you choose.

    Markup Tools drop-down menu

    Adds a point on the map.

    Adds text to the map.

    Draws straight lines on the map

    Allows you to draw your own lines shapes not using straight lines.

    Allows you to draw your own polygon shape not using straight lines.

    Draws ovals on the map.

    Draws circles on the map.

    Draws straight line polygons on the map.

    Draws rectangles on the map.

    Ontario Soil Survey Complex Lay Labels Obrys

    Outlines the boundaries of different soils found throughout Ontario.

    Soil Code, Slope Class, and Stoniness

    A component of the SOILTYPE Soil code was created by the federal government under the Canadian Soil Information Service (CanSIS). Non-mineral soil codes begin with Z and are as follows: ZAL = Bottom Land, ZUR = Urban, ZZZ = Water, ZBH = Beach, ZCR = Breypen variable, ZDL = Disturbed Land, ZDN = Dune, ZER = Eroded Channel, ZES = Escarpment, ZMD = Man Made, ZMH = Marsh, ZMK = Muck, ZML = Marl, ZNM = Not Mapped, ZOR = Organic, ZPT = Peat, ZQY= Quarry or Gravel Pit, ZRD = Ridge, ZRL = Rockland, ZRV = Ravine, ZSC = Scarp, ZST = Stream Channel/Course, ZUN = Unclassified (Island), ZVC = Valley Complex.

    Slope Class

    A letter designation commonly used in soil surveys, which symbolizes both the slope magnitude and relative slope length. Each letter, be it upper or lower case, represents a range of slope magnitude commonly expressed as a percent. If the letter is upper case it represents a simple slope meaning that it is >50m in length. If the letter is lower case it represents a complex slope meaning that it is <50m in length. CLASS A, a B, b C, c D, d E, e F, f G, g H, h I, i J, j.

    Occurrence of surface stoniness. Field manual for describing soils in Ontario (Department of Land Resources, University of Guelph, 4th Edition): Class Meaning - Not Applicable, 0 = Non-stony 1 = Slightly stony, 2 = Moderately stony, 3 = Very stony, 4 = Exceedingly stony, 5 = Excessively stony In Peterborough, Leeds and Grenville Rockiness was also included: Class Meaning 5 = Rockfree, 6 = Slightly rocky, 7 = Moderately rocky, 8 = Very rocky, 9 = Exceedingly rocky

    The original map symbol used on original hardcopy soil survey maps. This character symbol is an abbreviation of the soil name. For example, the symbol for TAVISTOCK LOAM is: Ta.

    Hydrologic Soil Group

    Hydrologic Soil Groups are used to estimate runoff from precipitation. Classification of soils by their reference to intake rate of infiltration of water, which is influenced by texture, organic matter content, stability of the soil aggregates and soil horizon development. Soils are assigned to one of four groups. They are grouped according to the infiltration of water when the soils are thoroughly saturated. Class Description A Soils having a high infiltration rate (low runoff potential) when thoroughly wet. These consist mainly of deep, well drained to excessively drained sands or gravelly sands. These soils have a high rate of water transmission. B Soils having a moderate infiltration rate when thoroughly wet. These consist chiefly of moderately deep or deep, moderately well drained or well drained soils that have moderately fine texture to moderately coarse texture. These soils have a moderate rate of water transmission. C Soils having a slow infiltration rate when thoroughly wet. These consist chiefly of soils having a layer that impedes the downward movement of water or soils of moderately fine texture or fine texture. These soils have a slow rate of water transmission. D Soils having a very slow infiltration rate (high runoff potential) when thoroughly wet. These consist chiefly of clays that have high shrink-swell potential, soils that have a permanent high water table, soils that have a claypan or clay layer at or near the surface, and soils that are shallow over nearly impervious material. These soils have a very slow rate of water transmission.

    Indicates classification of how well the soil drains. Drainage Classes - VR = Very Rapidly, R = Rapidly W = Well MW = Moderately Well I = Imperfectly, P = Poorly, VP = Very Poorly, WA = Water, VA= Variable.

    Soil Capability for Agriculture (Canada Land Inventory Rating for Soil)

    Canada Land Inventory (CLI) rating for the soil component. The Canada Land Inventory for agriculture is an interpretative system for assessing the effects of climate and soil characteristics on the limitations of land for growing common field crops (corn, soybeans, small grains, forages). In the CLI rating system there are seven classes: Class Descriptions: Class 1 No significant limitations in use for Crops Class 2 moderate limitations on use for crops Class 3 moderately severe limitations on use for crops. Class 4 Severe limitations on use for crops. Class 5 Very severe limitations preclude annual cultivation improvements feasible. Class 6 Natural grazing only no improvements feasible. Class 7 No capability for agriculture. O Organics. W Water. 0 not rated (example: urban land). Classifying Prime and Marginal Agricultural Soils and Landscapes: Guidelines for the Application of the Canada Land Inventory in Ontario.

    Surface Texture (Soil texture)

    Soil texture of the surface or 'A' horizon. Soil texture is determined by the relative proportion of sand, silt and clay found in a given soil. The term "texture" refers to the size of the individual soil particles and has nothing to do with the amount of organic matter present in the soil. ATEXTURE Description: C = Clay, CL = Clay Loam, CSL = Coarse Sandy Loam, FS = Fine Sand, FSL = Fine Sandy Loam, GL = Gravelly Loam, GRAV = Gravel, GS = Gravelly Sand, GSL = Gravelly Sandy Loam, L = Loam, LFS = Loamy Fine Sand, LS = Loamy Sand, LVFS = Loamy Very Fine Sand, ORG = Organic, S = Sand, SIC = Silty Clay SICL = Silty Clay Loam, SIL = Silt Loam, SL = Sandy Loam, VFSL = Very Fine Sandy Loam, VAR = Variable

    Three component label separated by dashes. Component percentages are a superscript of the Texture. Component 1 has Texture GL with component percentage 60, Component 2 has Texture FSL with component percentage 20 and Component 3 has Texture SL with component percentage 20.

    *Poznámka: Some soil polygons will have the same attributes for more than one component. These polygons will present a label like the Drainage label example below. The first component Drainage attribute has an "R" value representing 50% of the polygon, while the second component takes up 30%, and the third component takes up 20%. Both component 2 and component 3 have the same Drainage attribute value, so they were combined to represent one value with the combined percentage to show that 50% of the polygon represents a Drainage value of "W", even though it consists of two components.

    Geographical Information Services at the Ministry of Agriculture and Food and Ministry of Rural Affairs


    1 odpoveď 1

    You can use functions from the rgeos package to extract such regions (e.g. gIntersection , gDifference ). I use gDifference in this example, because gIntersection returns a SpatialCollections object here:

    It is important to note that this area is in square degrees. You have to use spTransfrom with an appropriate projection (see @WHuber's comment below).
    gArea returns also a warning (you didn't fixed it, you used a workaround):

    What are the units in which that area is reported? If seems like square degrees, which would be inappropriate for data that extend so far in latitude. It is crucial to perform the computation with data projected in a cylindrical equal area projection.

    yes, it's square degrees, I've just reused the code from the question gArea returns also a warning: gArea(ao): Spatial object is not projected GEOS expects planar coordinates