Več

Smernice za uporabo ArcObjects iz Pythona

Smernice za uporabo ArcObjects iz Pythona


Daleč dostop do ArcObjects iz Pythona? je moje najbolj brano in referenčno vprašanje na tem spletnem mestu. Kljub temu uspehu je to verjetno eno najšibkejših področij, ko gre za dejansko uporabo. Velik del tega slabega prikazovanja izhaja iz moje slabe sposobnosti branja in razumevanja dokumentov ArcObjects.

Kakšne smernice za prevajanje dokumentov in datotek .net / c ++ / java /… za katero koli nalogo so torej v njihove ustreznike s pythonom? (iz katerega jezika je najbolje delati?) in kateri indeks ali ciljna stran je najboljša za začetek? na katere stvari se je treba osredotočiti in verjetno vsaj tako pomembno, kaj lahko prosto prezremo?

Recimo, da je vaše občinstvo vsaj nekoliko pismeno pismeno in nepismeno v drugih razvojnih jezikih. Sprehodite se skozi majhno vadbo kodiranja, od začetne ideje in raziskav do delovnih rezultatov pythona.


Tudi na tem področju nisem zelo močan, vendar sem spremenil modul Snippets in naredil nekaj ovojev za zelo preprosta opravila. Imam primer samo dodajanja elementov vrstic. Primer pod glavni blok tvori trikotnik v pogledu postavitve tik pred dokumentom.

Ta skript uporabljam v povezavi z drugim in arcpy kazalci iskanja za izdelavo grafičnih tabel v postavitvi iz posameznih vrstic in elementov besedila, vendar se to hitro oddalji od "preprostega" primera. Spodnja koda je dokaj preprosta in uporablja spremenjeno različico delčkov:

from snippets import * def add_line (pApp = None, name = "Line", x = None, y = None, end_x = None, end_y = None, x_len = 0, y_len = 0, anchor = 0, view = "layout" ): "doda vrstico v dokument ArcMap Zahtevano: pApp - sklic bodisi na odprt dokument ArcMap bodisi na ime diska - ime elementa vrstice Neobvezno: x - start x koordinata, če ni, bo sredina obsega uporabljeno (podatkovni pogled) y - začetek y koordinate, če je nobena, bo uporabljena sredina obsega (prikaz podatkov) end_x - konec x koordinate, če izdelujete ravne črte, uporabite x_len end_y - konec y koordinate, če naredite ravne črte uporabite y_len x_len - dolžina črte v smeri vzhod / zahod y_len - dolžina črte v smeri sidra sever / jug - sidrišče za pogled elementa črte - izberite pogled za element besedila (postavitev | podatki) Sidrne točke: esriTopLeftCorner 0 Sidrišče v zgornjem levem kotu esriTopMidPoint 1 Sidrišče na zgornjo srednjo točko esriTopRightCorner 2 Sidro v zgornjem desnem kotu esriLeftMidPoint 3 Sidrišče na levo sredinsko točko esriCenterPoint 4 Sidrišče ali do središčne točke. esriRightMidPoint 5 Sidrišče na desno srednjo točko. esriBottomLeftCorner 6 Sidro v spodnjem levem kotu. esriBottomMidPoint 7 Sidranje na spodnjo srednjo točko. esriBottomRightCorner 8 Sidrišče v desnem kotu desnega kota. "GetDesktopModules () import comtypes.gen.esriFramework kot esriFramework import comtypes.gen.esriArcMapUI kot esriArcMapUI import comtypes.gen.esriSystem as esriSystem import comtypeegengen assy esriSystem import comtypeegengen asg. esriCarto kot esriCarto import comtypes.gen.esriDisplay as esriDisplay import comtypes.gen.stdole as stdole # set mxd if not pApp: pApp = GetApp () pDoc = pApp.Document pMxDoc = CType (pDoc, esriArcMapUcuM pMxMocUp. IMX pM. FocusMap pMapL = pMap if view.lower () == 'layout': pMapL = pMxDoc.PageLayout pAV = CType (pMapL, esriCarto.IActiveView) pSD = pAV.ScreenDisplay # set coords for elment pFact = CType (pAppa, esriF ) if view.lower () == 'data': pEnv = pAV.Extent if x == None: x = (pEnv.XMin + pEnv.XMax) / 2 if y == None: y = (pEnv.YMin + pEnv.YMax) / 2 else: # privzeti položaj postavitve, premakni stran, če je x == Brez: x = -4, če je y == Brez: y = 4 # od točke pUnk_pt = pFact.Create (C LSID (esriGeometry.Point)) pPt = CType (pUnk_pt, esriGeometry.IPoint) pPt.PutCoords (x, y) # do točke pUnk_pt2 = pFact.Create (CLSID (esriGeometry.Point)) pPt2 = CType (pUnket_pt2, pIPnket ) če x_len ali y_len: pPt2.PutCoords (x + x_len, y + y_len) elif end_x ali end_y: pPt2.PutCoords (end_x, end_y) # vrstica (od točke do točke) pUnk_line = pFact.Create (CLSID (esriGeometry. Polyline)) pLg = CType (pUnk_line, esriGeometry.IPolyline) pLg.FromPoint = pPt pLg.ToPoint = pPt2 # prednastavljena barva glede na vrednosti RGB pUnk_color = pFact.Create (CLSID (esriDisplay.RgbColor)) pColor = CTplay .IRgbColor) pColor.Red, pColor.Green, pColor.Blue = (0,0,0) # črna črta # nastavite lastnosti vrstic pUnk_line = pFact.Create (CLSID (esriDisplay.SimpleLineSymbol)) pLineSymbol = CType (pUnk_line, esriDisplay. ISimpleLineSymbol) pLineSymbol.Color = pColor # ustvari dejanski element pUnk_elm = pFact.Create (CLSID (esriCarto.LineElement)) pLineElement = CType (pUnk_elm, esriCarto.ILineElement) pLineElement.S ymbol = pLineSymbol pElement = CType (pLineElement, esriCarto.IElement) # lastnosti elma pElmProp = CType (pElement, esriCarto.IElementProperties3) pElmProp.Name = ime pElmProp.AnchorPoint = eriPorGeOntOrOrOrEnGorPoEntOrGerPoEntOrGeOrOrGeOrOrOntOrOrOnOrOrOrOnOrOrOnOrOrOn pGC = CType (pMapL, esriCarto.IGraphicsContainer) pGC.AddElement (pElement, 0) pGCSel = CType (pMapL, esriCarto.IGraphicsContainerSelect) pGCSel.SelectElement (pElement). None, None) vrne pElement, če __name__ == '__main__': # testiranje (naredi trikotnik) add_line (name = 'hypot', end_x = -2, end_y = 2, sidro = 3) add_line (name = 'vertLine', y_len = -2, sidro = 1) add_line (name = 'bottom', y = 2, end_x = -2, end_y = 2)

Uredi:

@matt wilkie

Kar zadeva ugotavljanje uvoza, boste tam morali pogledati diagrame modelov ArcObjects ali videti, iz katerega imenskega prostora je poklican določen razred ali vmesnik v dokumentaciji s pomočjo .NET SDK. V nekaterih primerih je zaradi dedovanja mogoče uporabiti več imenskih prostorov.

Nisem strokovnjak za ArcObjects, zato mi običajno traja nekaj časa, da ugotovim, kdaj naj predvaja stvari s CType (). Večino tega sem pobral iz spletnih vzorcev. Prav tako se zdi, da je sintaksa iz primerov VB.NET bližja tistemu, kar počnete v Pythonu, vendar so primeri C # zame bolj smiselni glede berljivosti (če je to smiselno). Kot pravilo pa ponavadi sledim dvema korakoma:

  1. Ustvari spremenljivko za nov objekt COM (običajno razred), da ustvari primerek
  2. Uporabite CType za predvajanje predmeta COM v vmesnike, da omogočite dostop do metod in lastnosti. CType bo vrnil tudi kazalnik vmesnika comtypes prek QueryInterface (). Ko je kazalec vrnjen, lahko nato komunicirate z njegovimi lastnostmi in metodami.

Nisem prepričan, ali uporabljam pravilno terminologijo ali ne ... Jaz sem predvsem razvijalec Pythona, ki se "zatakne" v nekatere ArcObjects ... Dotaknil sem se le vrha ledene gore.

Ta pomožna funkcija bo naložila tudi vse knjižnice predmetov ArcObjects (.olb):

def load_all (): "naloži vse knjižnice predmetov" iz comtypes.client import GetModule mods = glob.glob (os.path.join (GetLibPath (), '* .olb')) for mod in mods: GetModule (mod) return def GetLibPath (): "Sklic na direktorij com, v katerem so knjižnice ArcObjects Ojbect (* .OLB)" vrne glob.glob (os.path.join (arcpy.GetInstallInfo () ['InstallDir'], 'com')) [0 ]

V drugem, sorodnem, a nekoliko drugačnem prispevku sem podal odgovor, ki bi lahko bil zanimiv za uporabnike pythona, ki se poskušajo oviti okoli dokumentov s pomočjo Esri ArcObjects ...

Prišel sem z druge strani: ArcObjects sem poznal že dolgo (dolgo dolgo), še preden sem sploh slišal za python, in zahvaljujoč takim objavam lahko vključim nekaj kritičnih ArcObjects v enostavno skriptiranje pythona (glejte to objavo za primer ). Spomnim se frustracije, ko sem poskušal razumeti dedovanje, metode in lastnosti; dileme, kot da imam X, ki je nekako povezana z Y ... kako torej priti od X do Y.Method ()?

Odgovor je, da pogledamo CoClasses, ki izvajajo vmesnik (glej celotno besedilo tukaj) ... za osnovni primer, če želim preveriti, ali ima plast poizvedbo o definiciji in če je, kaj je to:

V C #:

ILayer pLayer = pMap.get_Layer (LayerIndex); IFeatureLayer pFtLayer = pLayer kot IFeatureLayer; // napisano tudi pFtLayer = (IFeatureLayer) pLayer IFeatureLayerDefinition pFtLayDef = (IFeatureLayerDefinition) pFtLayer; // deluje tudi kot pFtLayDef = pFtLayer kot IFeatureLayerDefinition; if (pFtLayDef.DefinitionExpression.Length == 0) Console.WriteLine ("Brez poizvedbe po definiciji"); else Console.WriteLine ("Poizvedba je" + pFtLayDef.DefinitionExpression);

Namestoctype(kar je vidno v VB) C # uporablja()alikotna primer za ulivanjeIObject x = (IObject) y;je (v osnovi) enako kotIObject x = y kot IObject;kar bi bilodim x kot IObject = ctype (y, IObject)v VB.

Lahko rečem, da potrebujem IFeatureLayer, da pridem do IFeatureLayerDefinition, ker:

In ko preberete dokument s pomočjo za IFeatureLayer, vidite:

Kar pomeni, da je varno iti ILayer-> IFeatureLayer-> IFeatureLayerDef, pod pogojem, da je ILayer tipa FeatureLayer (ali katerega koli drugega razreda CoClasses).

Torej, kaj je z I-ji in ne I-ji? Vmesnik I pomeni, to je bit, ki opravlja delo, brez I pa je CoClass (a tip), zato se mora vse, kar želite dejansko uporabiti, začeti z I in če ustvarjate novega ali preverjate tip, preskočite I. Vmesnik ima lahko veliko CoClasses in CoClass lahko podpira veliko vmesnikov, vendar je vmesnik to pravzaprav opravi delo.

V pythonu:

# Predvidevam, da je arcpy že uvožen in da so komtipi nameščeni iz comtypes.client import GetModule, CreateObject mC = GetModule (r'C:  Your path  Desktop10.1  com  esriCarto.olb ') mU = GetModule (r'C :  Vaša pot  Desktop10.1  com  esriArcMapUI.olb ') mF = GetModule (r "C:  Vaša pot  Desktop10.1  com  esriFramework.olb") import comtypes.gen.esriCarto kot esriCarto import comtypes. gen.esriFramework kot esriFramework import comtypes.gen.esriArcMapUI kot esriArcMapUI app = CreateObject (mF.AppROT, interface = mF.IAppROT) # sklic na aplikacijo ArcMap pDoc = ctype (app.Item (0) .DocumentDocumentDocumentDocumentDocumentDocumentDocumentDocumentDocumentDocumentDocumentDocumentD ) # sklic na trenutni dokument pMap = pDoc. .DefinitionExpression) == 0: print ("Brez izraza definicije") else: print ("Poizvedba je" + pFtLayDef.DefinitionExpression)

Ta vzorec naredi nekoliko več kot C, ker najde pot do trenutne aplikacije, ki bi bila na voljo samo v oknu python ali dodatku, če bi poskusili to zagnati iz ukazne vrstice, je aplikacija Null in bi skript nato zruši se z ničelno referenčno izjemo.


Nedefinirana geografska preobrazba ProjectRaster_management

Zdravo,
Poskušam avtomatizirati ponovno projekcijo nekaterih rastrskih podatkov. Informacije o projekciji so shranjene v datoteki .prj. Vendar se mi vedno pojavlja naslednja napaka:

& ltclass 'arcgisscripting.ExecuteError' & gt: Izvedba ni uspela. Parametri niso veljavni.
Nedoločena geografska preobrazba.
Izvedba (ProjectRaster) ni uspela.


Tu je moja ustrezna koda python:

prjFile = r "C: Data NEMAC Projekti NCA Scripting ArcPyGDAL proj_files MM5i.prj"
arcpy.DefineProjection_management (inPrjFile, prjFile)
arcpy.ProjectRaster_management (inRaster "predvidoma " + outRaster, "PROJCS [ 'WGS_1984_Web_Mercator', GEOGCS [ 'GCS_WGS_1984_Major_Auxiliary_Sphere', referenčna [ 'D_WGS_1984_Major_Auxiliary_Sphere', Sferoid [ 'WGS_1984_Major_Auxiliary_Sphere', 6378137.0,0.0]] PRIMEM [ 'Greenwich' , 0.0], UNIT ['Degree', 0.0174532925199433]], PROJECTION ['Mercator'], PARAMETER ['False_Easting', 0.0], PARAMETER ['False_Northing', 0.0], PARAMETER ['Central_Meridian', 0.0], PARAMETER [ 'Standard_Parallel_1', 0.0], UNIT ['Meter', 1.0]] "," NEAREST "," 50000 "," NAD_1983_To_WGS_1984_1 "," "," PROJCS ['MM5i', GEOGCS ['GCS_North_American_1983', DATth_Americ 'DATth [' DATUM_ 'DANUM19 ', SPHEROID [' GRS_1980 ', 6378137.0,298.257222101]], PRIMEM [' Greenwich ', 0.0], UNIT [' Degree ', 0.0174532925199433]], PROJECTION [' Lambert_Conformal_Conic '], PARAMETER [' False_EAM.0 ['False_Northing', 3200000.0], PARAMETER ['Central_Meridian', - 97.0], PARAMETER ['Standard_Parallel_1', 30.0], PARAMETER ['Standard_Parallel_2', 60.0], PARAMETER ['Scale_Factor', 1.0], PARAMET_ 'Latitude' ' , 47,5], ENOTA ['Merilnik', 1,0]] ")


Vsi predlogi ali pomoč bi bili zelo hvaležni.

Projecirate iz sistema, ki temelji na krogli (SPHEROID ['WGS_1984_Major_Auxiliary_Sphere', 6378137.0,0.0])
na enega na osnovi sferoida (SPHEROID ['GRS_1980', 6378137.0,298.257222101])

Za to boste morali določiti preoblikovanje po meri z orodjem CreateCustomGeoTransformation_management.
Za metodo izberite 'Geocentric_Translation'
za parametre pa uporabite ničle

Vključite to preobrazbo v parametre orodja za projiciranje.

Najlepša hvala za vaš odgovor. Še vedno se borim s tem. Zdaj dobim naslednjo napako:
NAPAKA 999999: Napaka pri izvajanju funkcije.
Kopiranje rasterskega nabora podatkov ni uspelo


Ustvarjanje načrtovanih koordinatnih sistemov po meri z uporabo ArcPy

Poskušam napisati skript ArcPy, ki zavzame poligon razreda uporabniškega vhodnega elementa in ustvari različico projiciranega koordinatnega sistema po meri, ki temelji na Ortografski projekciji (ki ima WKID 43041) in centroidu poligona. Vse strani s pomočjo temeljijo na ustvarjanju prostorskih referenc, ki so že definirane Projecirani koordinatni sistemi, vendar nobena ne prikazuje, kako ustvariti nov PCS po meri.

Preizkusil sem različne različice ustvarjanja primerka razreda SpatialReference, pri čemer nastavim lastnosti, nato pa z uporabo metode create, kot je naslednji delček moje kode, vendar vedno znova dobivam sporočilo o napaki pri izvajanju funkcije spodaj.

Sledenje (zadnji zadnji klic):

Datoteka "& ltstring & gt", vrstica 1, v & ltmodule & gt

Datoteka "c: programske datoteke (x86) arcgis desktop10.4 arcpy arcpy arcobjects arcobjects.py", vrstica 1226, v datoteki create

RuntimeError: ERROR 999999: Napaka pri izvajanju funkcije.

To se mi zdi enostavno z uporabo lastnosti referenčnega sistema koordinatnega sistema podatkovnega okvira v ArcMap-u, vendar se z ArcPy-jem izkaže za mene, zato sem s hvaležnostjo prejel kakršno koli pomoč ali primere pravilne kode za določitev projekcije po meri.

avtor NeilAyres

To sem počel že v preteklosti z uporabo niza "template". To lahko kopirate iz svoje znane, obstoječe projekcije.

Nato z oblikovanjem nizov v pythonu spremenite parametre, kot želite.

avtor MelitaKennedy

GCS (morda namesto GCSCode, 4326 za WGS84, 4269 za NAD83)

Mogoče je tudi težava s parametri. Pravopisna uporaba Lon / Lat of Center in tukaj izpostavljeni parametri se morda ne bodo pretvorili v pravilne. Torej, če dobite veljaven SR, poskrbite, da bodo rezultati smiselni.

avtor DanPatterson_Re utrujen

manjka kakšna koda? kot je vrstica za uvoz arcpy in vrstica, kjer določite input_fc? ker skript odpove v prvi vrstici in po videzu ni povezan z ničemer drugim. Če imate preostalo kodo, posodobite svojo začetno objavo s celotno kodo

avtor NeilAyres

To sem počel že v preteklosti z uporabo niza "template". To lahko kopirate iz svoje znane, obstoječe projekcije.

Nato z oblikovanjem nizov v pythonu spremenite parametre, kot želite.

avtor NeilAyres

Ampak to vidim za wkid 43041

Torej, o kakšni ortografski projekciji gre tukaj?

Hvala za vse koristne komentarje in moj izvirni skript postaja precej dolg in zapleten, zato sem pravkar izrezal bit, ki se nanaša na ustvarjanje SpatialReference. Zdaj, ko sem že poskusil s predstavitvijo String, se zdi, da ima Melita prav, da je bila moja definicija nepopolna in je za to projekcijo uporabila napačne lastnosti, toda v vsakem primeru se zdi, da je metoda nizov najboljša pot. Uspešno sem zagnal skript, tako da sem kopiral niz iz datoteke PRJ v ortografski projekciji, shranjeni iz ArcMap, in zdaj ga moram samo spremeniti v predlogo, ki jo je predlagal Neil za branje centroid lat / long iz mojih vhodnih poligonov.

Mislim, da bi bil primer na straneh s pomočjo ArcGIS za ustvarjanje načrtovanih koordinatnih sistemov po meri v ArcPy še vedno zelo koristen.

Samo da odgovorim na vaše vprašanje Neil, Ortographic je ime projekcije in ne projiciran koordinatni sistem, zato je ta napaka razumljiva. PCS so zgrajeni z uporabo posebne projekcije in drugih parametrov, potrebnih za določitev njegove uporabe za določen del sveta. Na primer, omrežna območja UTM temeljijo na projekciji Transverzalnega Mercatorja, ki je WKID 43006, vendar bi v tem primeru uporabili WKID za želeno območje UTM v razredu SpatialReference.

Ortografska je azimutna perspektivna projekcija, ki ima učinek gledanja Zemlje z neskončne razdalje v vesolju, zaradi česar je zemljevid videti kot globus, ki ni drugačen od perspektivne projekcije, ki jo uporablja Google Earth, vendar lahko v tem primeru očitno spremenite gledalno razdaljo . Tako kot številne projekcije zemljevidov tudi Ortographic ni podlaga za PCS, zato zahteva različico po meri z uporabniško določenimi osrednjo širino in dolžino.

avtor NeilAyres

Da, zavedam se, da je wkid 43041 bolj projekcijski in ne popolnoma oblikovan PCS.

Torej, eno morate postaviti na sredino območja vašega projekta. Če ga shranite med priljubljene, lahko najdete prj v userbanme / appdata itd. Itd.

Odprite ga z urejevalnikom besedil in ga kopirajte v skript python. Previdno, da celoten niz obdate z enojnimi narekovaji (vsi notranji so dvojni narekovaji).

Nato uredite niz in postavite ograde za oblikovanje "<>" na mesta, ki jih potrebujete.


  • Prednosti in slabosti braced inicializacije, noexcept specifikacije, popolno posredovanje in pametni kazalec naredite funkcije
  • Odnosi med std :: premakni, std :: naprej, reference rvalue in univerzalne reference
  • Tehnike pisanja jasnih, pravilnih, učinkovito lambda izrazi
  • Kako std :: atomic se razlikuje od hlapljivo, kako jih je treba uporabiti in kako so povezani s sočasnim API-jem C ++ & # 39s
  • Kako najboljše prakse v & quotold & quot programiranju C ++ (tj. C ++ 98) zahtevajo revizijo za razvoj programske opreme v sodobnem C ++

Učinkovit sodoben C ++ sledi preizkušeni obliki, ki temelji na smernicah, v prejšnjih knjigah Scott Meyers & # 39, vendar zajema povsem novo gradivo.

& quotPotem, ko sem se naučil osnov C ++, sem se nato naučil, kako uporabljati C ++ v produkcijski kodi, iz Meyerjeve serije učinkovitih knjig C ++. Učinkovit sodoben C ++ je najpomembnejše, kako rezervirati za nasvet o ključnih smernicah, slogih in idiomih za učinkovito in dobro uporabo sodobnega C ++. Ali je še nimate v lasti? Kupite tega. Zdaj & quot.

- Herb Sutter, predsednik Odbora za standarde ISO C ++ in arhitekt programske opreme C ++ pri Microsoftu

Koncepti programiranja za Python in sintaksa iz slik.

Enostaven za učenje in hiter za razumevanje.

Veliko programov iz resničnega življenja skupaj z izhodnim posnetkom zaslona.

Logično polje pojasnjuje logiko vsakega programa.

Koristno za revizijo pred izpitom ali intervjujem.

Težava pri priročnikih je v tem, da so preveč opisne za študije v zadnjem trenutku. Medtem ko je težava lokalnih publikacij v tem, da so netočne v primerjavi z referenčnimi knjigami.

Ta knjiga povzema predmetne opombe Data Mining & amp Business Business Intelligence s kombiniranimi koristmi referenčnih knjig in lokalnih publikacij. Ima natančnost referenčne knjige, pa tudi povzetek lokalne publikacije.

Avtor je predmet preučeval iz različnih virov, kot so spletna predavanja, priročniki, spletne vadnice in tako naprej. Po temeljitem razumevanju teme je avtor sestavil to knjigo za lažje razumevanje teme.

Ta knjiga vsebuje vsebino v obliki vprašanj in odgovorov z izjemno preprostostjo jezika in abstraktno, tako da jo lahko uporabimo za študije v zadnjem trenutku. To knjigo lahko uporabljajo:

Ø Študenti za pripravo na izpite

Ø Strokovnjaki za pripravo na razgovore za službo.

Ø Posamezniki, ki so pripravljeni na osnovno razumevanje domene: Data Mining & amp Business Business Intelligence.


Programiranje GIS 220 za GIS tehnike

Predmet zajema prilagajanje programskih aplikacij geografskih informacijskih sistemov (GIS) z uporabo spremenjenih elementov storitvenega vmesnika. Teme vključujejo teorijo in izvajanje številnih trenutnih skriptnih jezikov. Poleg tega študentje rešujejo geoprostorske probleme in poenostavljajo potek dela GIS z ustvarjanjem in spreminjanjem skript.

Pridobite trenutne informacije o učbenikih tako, da si ogledate knjigarno v kampusu v spletu ali obiščite knjižnico v kampusu. Za urnik tečaja preverite številko in razdelek tečaja.

  1. Primerjajte in primerjajte različne funkcije avtomatske obdelave. (PGC 6, 8)
  2. Ustvarite in spremenite skripte za geoprocesiranje. (CCC 2, 6 PGC 1, 5, 6, 8)
  3. Zgradite, prevedite in odpravite napake v skladu z najboljšimi praksami. (CCC 2, 6 PGC 6, 8)
  4. Oblikujte in razvijajte GIS aplikacije po meri za reševanje prostorskih problemov in poenostavitev delovnih tokov GIS. (CCC 2, 6 PGC 1, 4, 5, 6, 8)
  5. Dokažite poklicno in etično ravnanje, kot se pričakuje v industriji. (CCC 4, 6 PGC 7, 8)

Glejte Osnovne kompetence kurikuluma in Kompetence za podiplomske programe na koncu učnega načrta. CCPO so povezani z vsako kompetenco, ki jo razvijejo.

Po zaključku tega predmeta bo študent:

  1. Primerjajte in primerjajte različne funkcije avtomatske obdelave.
    1. Določite geopredelava.
    2. Pogovorite se o metodah prilagajanja funkcij geoprocesiranja, vključno z, vendar ne omejeno na, ArcGIS ModelBuilder, skriptom Python in ArcObjects.
    3. Pojasnite različne programske jezike, ki so na voljo za ustvarjanje in / ali prilagajanje aplikacij za geoprocesiranje.
    4. Primerjajte in primerjajte objektno usmerjeno programiranje in skriptiranje.
    1. Pogovorite se o shranjevanju in iskanju podatkov v ArcGIS.
    2. Za branje in pisanje podatkov vektorskih atributov uporabite skript.
    3. Za branje in obdelavo rastrskih podatkov uporabite skript.
    4. Branje in razčlenitev besedilnih datotek, pisanje geometrij in delo z dokumenti zemljevida.
    5. Ugotovite razlike med skriptom, orodjem in modelom.
    6. Vadite običajne metode izvajanja skriptov, orodij in modelov.
    7. Pretvarjanje med skripti, orodji in modeli.
    1. Ugotovite osnove skriptnega jezika, kot so spremenljivke, stavki, izrazi, nizi in seznami.
    2. Prepoznajte temeljne konstrukcije, kot so spremenljivke, zanke, strukture odločitev, obdelava napak in predmeti.
    3. Ugotovite namen in ustrezne metode za komentiranje skriptov.
    4. Pogovorite se o metodah nadzora poteka dela s pomočjo pogojnih stavkov in struktur zanke.
    5. Pogovorite se o metodah ravnanja z napakami in odpravljanju napak.
    6. Uporabite pogojne stavke in strukture zank.
    7. Uporabite metode ravnanja z napakami in odpravljanja napak.
    8. Predstavite ustrezne smernice za kodiranje.
    1. Določite korake za rešitev problema geoprocesiranja.
    2. Pogovorite se, kako narediti kodo za večkratno uporabo s pomočjo funkcij in modulov.
    3. Razviti logiko za reševanje problema geopredelave.
    4. Sestavite računalniško kodo za rešitev problema geoprocesiranja.
    1. Ugotovite potrebo po samodisciplini in upravljanju časa v tehničnih panogah.
    2. Komunicirajte in učinkovito delujte kot član ekipe.
    3. Vključite zavezo za obravnavanje poklicnih in etičnih odgovornosti v skladu z Etičnim kodeksom in pravili ravnanja GIS Certification Institute.

    Ocena bo določena s sistemom ocenjevanja Delaware Tech:

    90 100 = A
    80 89 = B
    70 79 = C
    0 69 = F

    Za informacije o akademski politiki, akademski politiki integritete, študentskih pravicah in odgovornostih ter drugih politikah, pomembnih za njihov akademski napredek, se študentje obrnite na Priročnik za študente.

    Izračunano z uporabo naslednjega tehtanega povprečja

    Ukrep ocenjevanja

    Odstotek končne ocene

    Povzetek: izpiti (4–6) (enako ponderirani)

    Povzetek: Laboratoriji (4-8) (sorazmerno ponderirano, da se določi)

    Formative (domače naloge, dejavnosti v razredu, razpravne table)

    1. Uporabite jasne in učinkovite komunikacijske veščine.
    2. Za reševanje problemov uporabite kritično razmišljanje.
    3. Sodelujte za dosego skupnega cilja.
    4. Izkažite strokovno in etično ravnanje.
    5. Za učinkovito poklicno in / ali akademsko raziskovanje uporabite informacijsko pismenost.
    6. Za reševanje praktičnih problemov uporabite kvantitativno sklepanje in / ali znanstveno preiskavo.
    1. Uporabite znanje, tehnike in spretnosti geografije in geoprostorskih tehnologij, kot so geografski informacijski sistemi (GIS), globalni satelitski navigacijski sistem (GNSS) in daljinsko zaznavanje (RS).
    2. Uporabite načela kartografskega oblikovanja za razvoj učinkovitih vizualnih predstavitev geoprostorskih podatkov, vključno z zemljevidi, grafi in diagrami.
    3. Načrtujte in izvedite sisteme GIS z uporabo skupne geoprostorske programske in strojne opreme za pridobivanje, shranjevanje, upravljanje, analizo in vizualizacijo prostorskih podatkov za različne discipline.
    4. Za reševanje problemov uporabite geoprostorske tehnike in običajne analitične metode.
    5. Ocenite in uporabite učinkovite tehnike upravljanja podatkov in oblikovanja baz podatkov.
    6. Uporabite temeljne koncepte programiranja, razvoja aplikacij, geoprostorske informacijske tehnologije in sorodnih tehnologij.
    7. Vključite zavezanost obravnavanju poklicnih in etičnih odgovornosti, vključno s spoštovanjem standardov natančnosti in raznolikosti.
    8. Zavedajte se potrebe in sposobnosti za samostojni nadaljnji poklicni razvoj.

    Kolegij se zavzema za zagotovitev razumnih prilagoditev za študente invalide. Študentje spodbujajo, naj se sestanejo s svetovalcem za podporo invalidom v kampusu in zahtevajo nastanitev, ki je potrebna zaradi invalidnosti. Seznam svetovalcev za podporo invalidom v kampusu in kontaktne informacije najdete na spletni strani invalidskih služb ali obiščite svetovalni center v kampusu.


    12 Odgovori 12

    Za vprašanja o pisanje kode, ki NI značilna za prostorsko knjižnico razmislite o raziskovanju / spraševanju pri Stack Overflow, ki:

    je za profesionalne in navdušene programerje, ljudi, ki pišejo kodo, ker jim je všeč.

    Na primer vprašanja o pisanju kode z:

    • ArcPy, PyQGIS, ArcObjects, oblikovan, ArcGIS API za JavaScript itd. So na temo za GIS SE
    • Python, JavaScript, C # itd. In ki ne potrebujejo prostorske knjižnice, da bi jo ponazorili v delčku kode, so v GIS SE neveljavni in jih je treba raziskati / vprašati v Stack Overflow

    Nekaj ​​vprašanj in vprašanj Meta GIS, ki vodijo do tega položaja, so:

    Izmenjava skladov spletnih skrbnikov je treba uporabiti za vprašanja v zvezi s spletnim gostovanjem, rešitvami v oblaku in stvarmi, ki so običajno na spletu.

    Napaka strežnika - splošna vprašanja o bazah podatkov, nastavitvi strežnika, spletnih storitvah itd. v profesionalnem okolju

    CartoTalk, "Forum za kartografijo in oblikovanje". Številni kartografi spremljajo skupnost in to je lahko prijeten kraj za kartografski pregled, če želimo izboljšati zasnovo zemljevidov.

    Izmenjava skladov spletnih aplikacij je & quot. Q & ampA, usmerjeni v skupnost, za močne uporabnike spletnih aplikacij. & quot.

    Tukaj, na GIS SE, sem imel zaprte možnosti spletnega / oblačnega shranjevanja podatkov, ki temeljijo na datotekah GIS, in naročil sem si, naj si jih ogledam na Exchange Application Stack Exchange, in se strinjal.

    Za vprašanja o odprti podatki, tudi če gre za odprte prostorske podatke, razmislite o raziskovanju / vprašanju na Open Data Stack Exchange, ki:

    je spletno mesto Q & ampA za razvijalce, raziskovalce in vse druge, ki jih zanimajo odprti podatki.

    Odprti podatki, kot jih opredeljuje Open Definition, so kakršne koli podatke, ki jih lahko kdorkoli prosto uporablja, spreminja in deli v kakršen koli namen.

    Zdi se, da so uporabniki GIS Stack Exchange razdeljeni glede tega, ali so taka vprašanja bolj odprta za izmenjavo na Open Data Stack Exchange ali tukaj:

    The Poštni seznam GDAL-DEV je tudi zelo aktiven in koristen.

    The Skupnost razvijalcev trave je vir za ljudi, ki razvijajo ali spreminjajo programsko opremo GRASS.

    Tukaj, na spletnem mestu GIS.SE, pozdravljamo - in običajno hitro odgovorimo - vprašanja o uporabo in prijava TRAVA.

    Za vprašanja, ki iščejo priporočila za programsko opremo, tudi če gre za prostorsko programsko opremo, razmislite o raziskovanju / vprašanju na izmenjavi skladov priporočil programske opreme, ki:

    je spletno mesto z vprašanji in odgovori za ljudi, ki iščejo določena priporočila programske opreme.

    Dobre zahteve za priporočila programske opreme imajo dve komponenti: namen (nalogo, ki jo je treba opraviti, uporabniška zgodba) in nekatere objektivne zahteve (minimalni nabor funkcij). Preden prosite za priporočilo, preberite naše smernice za kakovost vprašanja.

    Zahtevamo, da odgovori dokazujejo, kako priporočeni izdelek izpolnjuje zahteve in je primeren za predvideni namen. Preden odgovorite na vprašanje, preberite naše smernice za kakovost odgovorov.

    Zdi se, da so uporabniki GIS Stack Exchange odprti za takšna vprašanja, ki jih tu še vedno postavljajo (Ali je treba vprašanja o izdelkih, storitvah, podatkih in učnih priporočilih (tečajih, knjigah, spletnih mestih) zapreti?), Čeprav so jih številna spletna mesta Stack Exchange izrecno navedla izven teme in razvit je bil postopek za zajem tega pogleda (Ali so priporočila za programsko opremo dobri kandidati za zaklepanje wikija?).

    Če želite tukaj zaprositi za prostorska priporočila, upoštevajte iste standarde kakovosti, ki so jih razvili strokovnjaki za programsko opremo, da bi jih povprašali in odgovorili na spletnem mestu, ki je zanje specializirano.


    Tu je moj predlog za smernice, ki so se začele kot kopiranje / lepljenje @ blah238's, ker mislim, da ima to veliko zaslug, vendar ni primerno za razpravo samo s komentarji:

      . Za svoje vprašanje uporabite oznako meta.
  2. V vprašanje, navedite težavo, ki jo obravnavate, navedite primere itd., vendar ne razpravljajte (na dolgo) o predlagani rešitvi.
  3. Dodajte odgovor razpravljali o vaši predlagani rešitvi. To omogoča predlaganje in glasovanje o alternativnih predlogih.
    • Če predlagate novo glavno oznako ali če obstoječa oznaka želi biti glavna, vendar nima wikija za oznake, razmislite o tem, da bi v svoj odgovor vključili osnutek wikija za oznako ali, če imate zahtevani privilegij, jo preprosto uredite neposredno (in povezava do njega).
  4. Na splošno lahko soglasje skupnosti velja za nedvoumno, ko je glasovanje doseženo:

    • Ocena 5 na predlog in
    • Prednost 3 pred vsemi drugimi predlogi
    • toda moderatorji lahko odločitve o oznakah pogosto sprejmejo hitreje, da bi se izognili zastojem in daljšim glasovalnim obdobjem
    • toda moderatorji bodo še naprej uporabljali svojo presojo pri odločanju, ali je treba uporabiti ljudski predlog, ker včasih obstajajo posledice, ki morda niso očitne številnim novejšim, vendar upravičenim volivcem.
  5. (Za moderatorje) Ko je predlog izveden / odložen / načrtovan / zavrnjen, dodajte ustrezne metaoznake, kot je primerno.

      - so bile izvedene vse potrebne sopomenke ali združitve ali pa je dvoumnost končana - čakanje na jasnejše soglasje pred začetkom izvajanja - uporabljeno za nekatere dvoumnosti, ki zahtevajo čas za izvedbo - izvajanje ni načrtovano
  6. Odstranil sem točko označevanja @ blah238, da postane predstavljeno, ker bi, če bi hkrati delovalo pol ducata predlogov za oznake, zmanjšali izpostavljenost tistega, kar je tam običajno vidno. Menim, da bi to morali prepustiti moderatorjem, da presodijo, kateri so ključni predlogi za oznake, ki jih bo morda treba spodbujati za več prispevkov.

    V povezavi s tem predlogom bi se morali spomniti, da stran s pomočjo / označevanjem obstaja.

    Tu je moj predlog smernic:

      . Za svoje vprašanje uporabite oznako meta.
    1. V vprašanje, navedite težavo, ki jo obravnavate, navedite primere itd., vendar ne razpravljajte (na dolgo) o predlagani rešitvi.
    2. Add an answer discussing your proposed solution. This allows alternative proposals to be suggested and voted upon.
      • If proposing a new master tag, or if an existing tag is desired to be the master but doesn't have a tag wiki, include a draft tag wiki for it in your answer.
    3. (optional) Flag the question for moderator attention and request that it be made featured. This puts a link to the question on the main site under the "Featured on Meta" sidebar area, which should help increase participation and hopefully garner the required votes.
    4. Voting thresholds:

      • A minimum score of 5 is required to implement a proposal
      • A minimum of 7 days is required to allow for alternative proposals and votes to be entered.
        • If after 7 days no alternative proposals are entered and the minimum score of 5 is attained, the proposal wins by default and is implemented.
        • If after 7 days and one or more alternative proposals exist, an additional 7 days (14 total) are required for additional discussions and voting to take place.
          • After 14 days, the proposal with the most votes wins and is implemented.
            • In the case of a tie, a moderator will decide which proposal to implement.
    5. (For moderators) After the voting period is over and the winning proposal is implemented (or none meets the minimum score), or when a moderator decision is required, add the status-completed, status-planned (for backlogged work) or status-declined meta tags as appropriate, and close the question.

    This may seem onerous, but is intended to expedite and give structure to what was previously an often lengthy process that was difficult to follow, let alone participate in.

    Additionally, the minimum score and minimum waiting periods are meant to allow discussion and alternative synonym proposals to be suggested before any (possibly destructive) action is taken.

    Kaj misliš? The voting thresholds can obviously be adjusted as needed, depending on participation and moderator workloads. I would also welcome a simpler proposal as an alternative, if that makes more sense.

    Also this totally won't work unless the moderators are all on board with it, so after you all have had a chance to digest and discuss it amongst yourselves, let us know what you want to do :)


    While many programming languages excel in their ability to execute commands quickly, others embody a greater focus on programmer productivity and clear syntax. In ESRI's GIS software package ArcGIS, Python is now the choice language for many GIS Analysts as an alternative to the more complex ArcObjects library. ArcObjects is written in C#, Visual Basic, Java, or C++, all more difficult languages to learn than Python, but also much faster. In modern web mapping, ArcGIS Python scripts are now making their way onto the server, sometimes at the expense of application performance and stability.

    I have explored the idea of code performance vs. programmer productivity in the context of ArcGIS Server by writing several web-based geoprocessing services in both Python and C# ArcObjects. The goal was to identify the classes of tools which are best developed using one technology or the other, either based on performance or ease of development. From the outset, I made the assumption that under equal circumstances, it is easier to develop a service in Python, but that C# will always execute faster.

    The different geoprocessing services were divided into three categories: raster-based, vector-based, in server utilities. The services had different inputs and outputs ranging from text to polygons to zip files. Multi-Mechanize web performance and load testing framework was used to automate requests and make testing repeatable. Multi-Mechanize is an open source testing framework written in python which assisted in replaying requests, logging responses, and compiling statistics. Using this framework, I was able to make an assessment of the exact types of geoprocessing services which should be built using python, and which should be avoided.


    While many programming languages excel in their ability to execute commands quickly, others embody a greater focus on programmer productivity and clear syntax. In ESRI's GIS software package ArcGIS, Python is now the choice language for many GIS Analysts as an alternative to the more complex ArcObjects library. ArcObjects is written in C#, Visual Basic, Java, or C++, all more difficult languages to learn than Python, but also much faster. In modern web mapping, ArcGIS Python scripts are now making their way onto the server, sometimes at the expense of application performance and stability.

    I have explored the idea of code performance vs. programmer productivity in the context of ArcGIS Server by writing several web-based geoprocessing services in both Python and C# ArcObjects. The goal was to identify the classes of tools which are best developed using one technology or the other, either based on performance or ease of development. From the outset, I made the assumption that under equal circumstances, it is easier to develop a service in Python, but that C# will always execute faster.

    The different geoprocessing services were divided into three categories: raster-based, vector-based, in server utilities. The services had different inputs and outputs ranging from text to polygons to zip files. Multi-Mechanize web performance and load testing framework was used to automate requests and make testing repeatable. Multi-Mechanize is an open source testing framework written in python which assisted in replaying requests, logging responses, and compiling statistics. Using this framework, I was able to make an assessment of the exact types of geoprocessing services which should be built using python, and which should be avoided.


    Job Announcement: Cartographer at Bureau of the Census

    Job Title: Cartographer, GS-1370-07/09/11/12, Census-D-IC

    Department: Department Of Commerce

    Agency: Bureau of the Census

    Job Announcement Number: GEO-2015-0034

    SALARY RANGE:

    OPEN PERIOD:

    SERIES & GRADE:

    POSITION INFORMATION:

    PROMOTION POTENTIAL:

    DUTY LOCATIONS:

    WHO MAY APPLY:

    SECURITY CLEARANCE:

    SUPERVISORY STATUS:

    JOB SUMMARY:

    This vacancy is advertised under 2 different announcements. Some applicants may not be eligible to be hired under THIS announcement. Please make sure you apply to the announcement that entitles you to consideration. Read the `Who May Apply` section carefully to determine your eligibility. If you are not eligible under this announcement, please see GEO-2015-0032, Cartographer, GS-1370-07/09/11/12which can be accessed at http://www.USAJOBS.gov.

    This vacancy is for a Cartographer position in the Geography Division located at the U.S. Census Bureau Headquarters in Suitland, Maryland.

    **Multiple selections may be made from various directorates within the Census Bureau from this announcement for a position with the same title, series, grade(s), promotion potential, general job responsibilities and duty location **

    This position is eligible for telework additional criteria will be required (e.g., supervisory approval).

    Relocation expenses may be paid.

    To je a bargainingunit position.

    TRAVEL REQUIRED

    RELOCATION AUTHORIZED

    KEY REQUIREMENTS

    • You must be a U.S. citizen.
    • You must successfully complete a background investigation.
    • A one-year probationary period may be required.

    DUTIES:

    The following are the duties of this position at the GS-12 level. If you are selected at a lower grade level, you will have the opportunity to learn to perform all these duties, and will receive training to help you grow in this position.

    • Design maps, map series, and cartographic spatial data to support the decennial census, census surveys, and data dissemination.
    • Develop and implement map and/or cartographic boundary production tools and systems to support the decennial census, census surveys, and data dissemination.
    • Provide cartographic expertise and guidance in person and in writing to technical and non-technical customers and colleagues.

    QUALIFICATIONS REQUIRED:

    MINIMUM QUALIFICATION REQUIREMENTS:

    A. Degree: cartography or a major that included or was supplemented by at least 30 semester hours in cartography and/or directly related science, and related mathematics. Such course work includes, but is not limited to, cartography, astronomy, geodesy, photogrammetry, physical and geological oceanography, computer science, land surveying, geophysics, physical geography, and remote sensing. The 30 semester hours must have included at least 6, but no more than 15, semester hours of college level, non-business mathematics or statistics,

    OR B. an equivalent combination of education and experience which includes courses equivalent to a major in cartography, or a major that included or was supplemented by at least 30 semester hours in cartography, and/or directly related science, and related mathematics, plus appropriate experience or additional eduNOTE: To show proof of meeting the Basic Entry Requirements, all applicants MUST submit a copy of their college transcripts. See the Required Documents section for more information.

    GRADE LEVEL REQUIREMENTS: In addition to meeting the Basic Entry Requirements, applicants must have the experience or education listed below or a combination of both.

    GS-7 EDUCATION: One full year of graduate education or superior academic achievement (GPA of 2.95 or higher) in a field of study that provided you with the particular knowledge, skills, and abilities necessary to successfully perform the work of a cartographer. EXPERIENCE: You must have one year of specialized experience equivalent to the grade 05 level in the Federal service. Specialized experience is basic experience with geography and cartography principles withemphasis on map design and production concepts. General experience with routine methods and techniques of automated cartography and geospatial databases. General experience with: a. Geographic Information Systems and/or computer mapping commercial software applications, for use in producing cartographic applications b. Computer operating systems, such as Oracle, Oracle Spatial, ArcObjects, Linux and Windows OS c. Programming languages, such as C, C++, Visual Basic, PERL, Java, Python, C#, HTML, JavaScript and PL/SQL. General experience with digital map dissemination techniques, and associated technology dealing with various graphic file formats and output devices.

    GS-9 EDUCATION: Master’s or equivalent graduate degree or two full years of progressively higher-level graduate education leading to such a degree that provided you with the knowledge, skills, and abilities necessary to perform the work of a cartographer. EXPERIENCE: You must have one year of specialized experience equivalent to the grade 07 level in the Federal service. Specialized experience is basic experience with geography and cartography principles with emphasis on map design and production concepts. General experience with the methods and techniques of automated cartography and geospatial databases. General experience with creating and/or using geospatial databases, including external databases, for production of cartographic applications to support data dissemination. Demonstrated experience with: a. Geographic Information Systems and/or computer mapping commercial software applications, for use in producing cartographic applications b. Computer operating systems, such as Oracle, Oracle Spatial, ArcObjects, Linux and Windows OS c. Programming languages, such as C, C++, Visual Basic, PERL, Java, Python, C#, HTML, JavaScript and PL/SQL d. Use of statistical data in design and production of cartographic products. Experience assisting on cartographic projects of moderate scope. General experience with digital map dissemination techniques and associated technology dealing with various graphic file formats and output devices.

    GS-11 EDUCATION: Ph.D. or equivalent doctoral degree or three full years of progressively higher-level graduate education leading to such a degree that provided you with the knowledge, skills, and abilities necessary to perform the work of a cartographer. EXPERIENCE: You must have one year of specialized experience equivalent to the grade 09 level in the Federal service. Specialized experience is experience with geography and of cartography principles with emphasis on map design and production concepts. Experience with the methods and techniques of automated cartography and geospatial databases. Experience with creating and/or using geospatial databases, including external databases, for production of cartographic applications to support data dissemination. Experience with: a. Geographic Information Systems and/or computer mapping commercial software applications, for use in producing cartographic applications b. Computer operating systems, specifically Oracle, Oracle Spatial, ArcObjects, Linux and Windows OS c. Programming languages, such as C, C++, Visual Basic, PERL, Java, Python, C#, HTML, JavaScript and PL/SQL d. Use of statistical data in design and production of cartographic products. Experience managing cartographic projects of moderate scope effectively and efficiently. Experience with digital map dissemination techniques, and associated technology dealing with various graphic file formats and output devices. Experience preparing technical documentation or specifications describing detailed cartographic designs or processes & presenting a complex cartographic concept or design.

    GS-12 EDUCATION cannot be substituted for experience at this grade level. EXPERIENCE: You must have one year of specialized experience equivalent to the grade 11 level in the Federal service. Specialized experience is experience with geography and of cartography principles with emphasis on map design and production concepts. Experience with the methods and techniques of automated cartography and geospatial databases. Experience with creating and/or using geospatial databases, including external databases, for production of cartographic applications to support data dissemination. Demonstrated knowledge of and experience with: a. Geographic Information Systems and/or computer mapping commercial software applications, such as ArcInfo and/or ArcView, for use in producing cartographic applications b. Computer operating systems, specifically Oracle, Oracle Spatial, ArcObjects, Linux and Windows OS c. Programming languages, such as C, C++, Visual Basic, PERL, Java, Python, C#, HTML, JavaScript and PL/SQL d. Use of statistical data in design and production of cartographic products. Experience managing cartographic projects of large scope effectively and efficiently. Experience with digital map dissemination techniques, and associated technology dealing with various graphic file formats and output devices. Experience developing web-based maps. Experience preparing technical documentation or specifications describing detailed cartographic designs or processes & presenting a complex cartographic concept or design.
    Applicants must meet all qualification requirements by the closing date of this announcement.

    HOW YOU WILL BE EVALUATED:

    Your application includes your:

    We use a multi-step process to evaluate and refer applicants:

    1. Minimum Requirements: Your application must show that you meet all requirements, including the education and/or experience required for this position. You will be found “not qualified” if you do not possess the minimum competencies required for the position. If your application is incomplete, we will rate you as ineligible.

    2. Rating: Your application will be evaluated in the following competencies, which are desirable at the full performance level of this position (GS-12).

    • Knowledge of cartographic design principles and best practices for reference maps, thematic maps, web map applications, visualization of complex geospatial relationships, generalization, data display, and classification techniques and geographic area types, characteristics, and relationships
    • Skill evaluating customer requirements based on the map product’s intended use, audience, and expectations and working independently and as part of a team
    • Knowledge of system design principles for nation-based, enterprise-level cartographic production systems
    • Skill using commercial Geographic Information Systems (GIS) software for mapping and geoprocessing using commercial graphics software identifying and resolving problems in production system components such as software code, commercial GIS processes, commercial graphics software, file systems, and output devices developing scripts or software using programming languages developing web-based maps and working with Oracle Spatial
    • Ability to express technical concepts relative to cartographic principles, design, and data management in writing and in person present technical cartographic design and production information to others, both technical and non-technical and evaluate and provide guidance and expertise on cartographic design.

    Your application will be rated based on the extent and quality of your experience or education or training (or a combination) relevant to the duties of this position. We may lower your rating if your responses to the online questions are not supported by the experience, education, and/or training described in your application.

    3. Referral: If you are among the top qualified candidates, your application will be referred to a selecting official for consideration and possible interview.

    We recommend that you preview the online questions for this announcement before you start the application process.

    Experience refers to paid and unpaid experience, including volunteer work done through National Service programs (e.g., Peace Corps, AmeriCorps) and other organizations (e.g., professional, philanthropic religious spiritual community, student, social). Volunteer work helps build critical competencies, knowledge, and skills and can provide valuable training and experience that translates directly to paid employment. You will receive credit for all qualifying experience, including volunteer experience.

    To preview questions please click here.

    BENEFITS:

    Additional benefits available at Census Headquarters located in Suitland, MD, include: fitness center child-care facility credit union free parking convenient access to Metrorail and Metrobus transit services in Washington, DC, Maryland and Virginia communities care pools/van pools etc.

    OTHER INFORMATION:

    The Department of Commerce provides reasonable accommodations to applicants with disabilities. If you need a reasonable accommodation for any part of the application and hiring process, please notify the Human Resources Office. The decision on granting reasonable accommodation will be on a case-by-case basis. TTY users can contact the Human Resources Office via the Federal Relay Service, 1-800-877-8339.

    HOW TO APPLY:

    If you are experiencing system issues with your application, please contact the Help Desk at [email protected] or at 866-656-6831 and/or the USAJobs Help Desk.

    Step 1 – Create or Upload a resume with USAJOBS (www.usajobs.gov)

    We suggest that you preview the online questions you will answer in Step 3 (Preview available in Qualifications and Evaluation section of announcement). You need to ensure your resume supports your responses to these questions.

    Step 2 – Apply Online Click “Apply Online.”

    You will be directed to USAJOBS where you must select a resume. If you have documents uploaded to USAJOBS, you may select those you wish to submit as well. After selecting a resume (and documents, if applicable), click “Apply for this position now!” and follow the prompts to register (if you haven’t already done so), answer the online questions, and submit all required documents. You will have the opportunity to submit documents via 3 different options: 1) download from USAJOBS, 2) upload from your computer, or 3) fax. You can update your application or documents anytime while the announcement is open. To do so, log into your USAJOBS account and click on “Application Status.” Click on the position title, and then select “Apply Online” to continue.

    REQUIRED DOCUMENTS:

    Sole Survivorship Documentation. If you are applying under Sole Survivorship preference, you must provide a copy of your DD-214 (Member Copy 4) or another form of official documentation which shows your discharge or release from active duty occurred on or after August 29, 2008 and was based on a sole survivorship discharge.

    If you are claiming 10-point veterans’ preference, in addition to the DD-214 or certification, you must also submit a current version of the SF-15 (Application for 10-Point Veteran Preference), dated October 2013,and the required supporting documents listed on that form. Previous versions of the SF-15 will not be accepted. For more information on veterans’ preference, click here.

    Education Documentation

    Submit a copy of your transcripts or a list of courses showing title, number of credits, grade, and date of completion. To be used in meeting qualifications requirements, a college or university degree generally must be from an accredited (or pre-accredited) college or university recognized by the U.S. Department of Education. For a list of schools which meet these criteria, please refer to http://www.ope.ed.gov/accreditation/search.aspx. An official transcript will be required if you are selected. If you are qualifying based on foreign education, you must submit proof of creditability of education as evaluated by a credentialing agency more information may be found at: http://www.opm.gov/qualifications/SEC-II/s2-e4.asp#e4a.

    AGENCY CONTACT INFO:

    WHAT TO EXPECT NEXT:

    You will be notified up to four times during the hiring process:

    1. Upon receipt of your application.

    2. Upon minimum qualification determinations.

    3. After the certificate is issued.

    4. After final selection is made.

    You may check the status of your application for this position at any time by logging onto the USAJOBS “My Account” tab and clicking on “Application Status”. We also recommend you opt to receive status change emails through USAJOBS by logging into “Notification Settings.” Please notify us if your contact information changes after the closing date of the announcement. Also, note that if you provide an email address that is inaccurate, or if your mailbox is full or blocked (e.g., spam blocker), you may not receive important communication that could affect your consideration for this position.


    EPA Post-doc Opportunity EPA-ORD-NERL-ERD-2010

    Research Participation Program
    U.S. Environmental Protection Agency
    Office of Research and Development
    National Exposure Research Laboratory
    Athens, GA

    Building Decision Support Tools Characterizing Harmful Cyanobacterial Algal Blooms

    Project Description:
    A research project training opportunity is currently available at the U.S. Environmental Protection Agency’s (EPA) Office of Research and Development/National Exposure Research Laboratory (NERL). The appointment will be served with the Ecosystems Research Division (ERD) in Athens, Georgia.

    ERD conducts laboratory, modeling and field research to assess chemical and non-chemical stressors. It promotes sustainable ecosystem health and informs decisions that support environmental protection by applying the best biological, chemical and geophysical science as the foundation for ecosystem exposure research. ERD conducts field and laboratory process investigations, and links these to modeling studies to address concerns related to the fate and transport of chemical contaminants and the environmental impacts of physical stressors.

    The goal of this project is to support the environmental management and public use of U.S. lakes and estuaries by providing the capability of detecting and quantifying algal blooms and related water quality using satellite data records.

    The participant will be involved in the following research activities:
    • Acting as a member of an agile software development team to design, implement, and maintain/enhance an Android mobile application disseminating occurrences of HABs to Cyanobacteria Assessment Network (CyAN) program stakeholders.
    • Implementing the IT infrastructure that supports the applications, web page development, and/or cloud server maintenance. Developing a range of agile programming skills as a coder contributing to EPA science models, databases, and web applications. Activities could include computer programming (Python, web scripting languages, and/or R).

    Qualification:
    Applicants have received a doctoral or master’s degree in computer science , applied math, applied physics, biology, chemistry, ecology and evolutionary biology, earth and atmospheric sciences, engineering (biological, chemical, computer, environmental), environmental science, fisheries & wildlife, genetics, geography, geology, mathematics, microbiology, physics, statistics within five years of the desired start date.

    The program is open to all qualified individuals without regard to race, sex, religion, color, age, physical or mental disability, national origin, or status as a Vietnam era or disabled veteran. U.S. citizenship or lawful permanent resident status is preferred (but a candidate also may hold an appropriate visa status an H1B visa is not appropriate). Guidelines for non-U.S. citizens may be found at http://orise.orau.gov/epa/applicants/immigration.htm.

    The appointment will be full-time for 12 months and may be renewed upon recommendation of EPA and contingent on the availability of funds. The research participant will receive a monthly stipend. No funding will be made available to cover travel costs for pre-appointment visits, relocation costs, tuition and fees, or a participant’s health insurance. Funding may be made available to reimburse the participant’s travel expenses to present the results of his/her research at scientific conferences. The participant must show proof of health and medical insurance. The fellow does not become an EPA employee.


    Poglej si posnetek: GIS Python: Count shape files and Select by Location 2 Real world ArcPy examples