Lisää

Voiko ArcMap ottaa huomioon tarroja ja tietokehyksiä tarroja sijoitettaessa?

Voiko ArcMap ottaa huomioon tarroja ja tietokehyksiä tarroja sijoitettaessa?


Onko mitään keinoa ottaa huomioon datakehykset ja selitykset, kun asetat tarroja Maplex Label Engine -ohjelmalla?

Puhun nimenomaan teiden ja ääriviivojen tarroista. En todellakaan halua muuttaa tarroja huomautuksiksi ja siirtää niitä manuaalisesti, ja nämä ovat tarroja aina näyttävät löytävän tavan piiloutua osittain upotetun kartan alle, vaikka tarraa ei ilmeisesti tarvittaisi tarkka paikalla.

Nykyinen tapa kiertää tämä on luoda monikulmio, jossa ei ole täyttöä tai reunaa ja joka sopii upotuksen ja selitteen alle, ja antaa monikulmioon sopiva painotus. Tämä toimii ja on joskus kätevä saada kartta näyttämään kunnolliselta näyttämään selitteen/lisäosan kartan alla, mutta näyttää siltä, ​​että tarrojen sijoittelun pitäisi jo ottaa huomioon karttaelementit, ja prosessista on tulossa tarpeeksi työläs kysy kysymys täältä.

Puuttuuko jotain merkintöjen työkalupalkista, joka sallii tämän?


Kuten muut ovat kommentoineet, ainoa nykyinen vaihtoehto on käyttää kiertotapaa. Lähestyisin sitä käyttämällä päällekkäisten tietokehyksen tai selite -elementtien sijaintia suorakulmaisten monikulmioiden luomiseen, joita voidaan käyttää reikien tekemiseen/poistamiseen datan kopioista, joita käytetään vain merkintöihin. Kiertoratkaisu ei ole vähäpätöinen, mutta saavutettavissa, ja vaikka en ole tehnyt sitä loppuun asti, en näe mitään syytä, miksi sitä ei voida täysin automatisoida arcpy.mappingin avulla.

Parannuspyyntöä varten on olemassa ArcGIS -idea nimeltä Salli Maplexin "nähdä" muita tietokehyksiä:

Haluaisin, että Maplex -moottori näkee kaikki muut tietokehykset ristiriitana eikä aseta tarroja siten, että toinen tietokehys loukkaa niitä.

Luulen, että tämä kattaa kysymyksesi alkuosan, mutta sinun kannattaa harkita ArcGIS -idean lähettämistä ja pyytää, että asetteluihin otettaisiin käyttöön ristiriidan havaitseminen, joka saa Maplex -tarratyökalun tietoiseksi kaikista päällekkäisistä asetteluelementeistä.


Ggplot -legendat - muuta tarroja, järjestystä ja otsikkoa

Minulla on paljon vaikeuksia muuttaa tarinani legendaa. Tässä on toistettava esimerkki:

Juoni on muodostettu näin:

joka tuottaa tämän:

Nyt haluaisin tehdä

  1. muuta legendan otsikko
  2. muuttaa seliteosien esiintymisjärjestystä
  3. muuttaa seliteosien tekstiä.

Olen pyöritellyt tuntikausia yrittäessäni tehdä tätä, mutta ilman suurta menestystä. Parasta mitä olen tähän mennessä onnistunut on lisätä tämä:

Mutta se tuottaa tämän kauhistuksen:

Kuten näet, nyt on olemassa ylimääräinen tarpeeton legenda, ja legendan muodot eivät vastaa juonen muotoja!

Lopuksi haluaisin kuvitella legendan osoittavan, että siniset ja vihreät viivat ovat katkoviivoja, eivät kiinteitä - mutta minulla ei ole aavistustakaan siitä, miten se tehdään.


Värit

Miellyttävän ja johdonmukaisen värimaailman valitseminen tulee entistä vaikeammaksi, mitä enemmän ominaisuuksia ja tasoja lisäät kartallesi (ilman että se näyttää koiran aamiaiselta). Joitakin noudattamiani perusohjeita ovat:

Valitse pastellimaiset, tyydyttymättömät värit ominaisuuksille, jotka eivät ole & rsquot visuaalisen heirarchian yläosassa. Tämä voidaan tehdä helposti siirtymällä ArcMap -värinvalitsimen HSV -väriavaruuteen. Silmien pehmeämmät värit voidaan yhdistää kirkkauden (tai arvon) kanssa pelaamiseen tai värikylläisyyden vähentämiseen. Elementtejä heirarkkian yläosassa, joita haluat pop- katsojille voidaan symboloida kylläisemmillä väreillä.

En koskaan käytä 100% mustaa kartalla. Puhdas musta on erittäin ylivoimainen, ja sitä esiintyy harvoin luonnossa. Valitse korkeintaan 90% mustaa - tai siirry uudelleen HSV -väritilaan ja luo sen sijaan hyvin tumma väri. Alla olevat esimerkkivärimallit havainnollistavat eron, jonka muutaman prosentin ero voi tehdä:

Topografisiin karttoihin tai kaikkiin luomiini karttoihin, jotka on tarkoitettu yksityiskohtaisesti maastoon tai maantieteeseen, varaan sinisen värin yksinomaan veden ominaisuuksiin. Kartoissa, jotka esittävät analyysiä tai temaattisia tietoja, symboloin yleensä taustan ja mahdolliset vesipiirteet valkoisina.

Ominaisuuksien ääriviivat (esim. Tien ääriviivat, rantaviivat, maankäyttö jne.) Näyttävät erittäin hyviltä, ​​kun ne on asetettu 10–20% tummemmiksi kuin niiden täyttöväri. Hyvä esimerkki on MapBoxin OSM Bright CartoCSS -tyyli.

  • Ominaisuuksien ääriviivat voidaan myös asettaa neutraaliksi, kuten tässä on kuvattu Stamenin Terrain -laattajoukon tien ääriviivoissa, jotta saadaan aikaan hienovarainen peitevaikutus.

Selitys, kun piirretään 2 tietokehystä yhteen kuvaajaan [kaksoiskappale]

Olen piirtänyt positiiviset ja negatiiviset arvot täsmälleen sellaisina kuin haluaisin niiden olevan, legenda mukaan lukien. Yhdistän nämä nyt yhteen juoniin yhden juonen luomiseksi (Minulla ei ole tarpeeksi pisteitä linkittämään tähän kuvaan). Olen erittäin tyytyväinen tähän - legendaa lukuun ottamatta. Selite lajitellaan aakkosjärjestykseen, joka ei ole suosikkijärjestykseni (sama järjestys kuin värikerrokset ylhäältä alas). Olen kokeillut erilaisia ​​tapoja asettaa selite manuaalisesti, mutta kaikki tähän mennessä löytämäni toimivat, kun piirretään yhtä tietokehystä eikä kahta sellaista kuin olen.

Näyttää siltä, ​​että scale_colour_manual -toiminnon käyttäminen ei vaikuta tämän tyyppiseen kuvaajaan, onko olemassa jokin muu tapa tehdä tämä?

Alla on hyvin yksinkertainen työskentelyesimerkki, joka antaa myös saman yllä kuvatun käyttäytymisen.

Kiitos vastauksesta, mutta en edelleenkään saa haluamaani kaaviota. Tässä on linkki lähimpään, johon olen tullut tähän mennessä positiivisiin ja negatiivisiin arvoihin - legenda ei ole vaadittu. Tässä juonessa olen käyttänyt kahta erillistä datakehystä, koska käytän erilaisia ​​geom_area- ja geom_line -asemia käyttämäni piirteen positiivisessa osassa:

ja juonen negatiivisesta osasta, jota käytän:

Kuitenkin, kuten alkuperäisessä kysymyksessä keskusteltiin, minulla ei näytä olevan mitään valtaa legendan järjestykseen. Yritin yhdistää datakehykset ja asettaa tekijän järjestyksen, tässä käytin:

ja minulla on hallinta legendojen järjestyksessä, mutta todellinen juoni ei ole sellainen kuin haluaisin. Tässä ovat kaavion positiiviset ja negatiiviset arvot - kaavio ei ole tarpeen.

Minulla on kvanttimekaniikan takaiskuja :-), joten lisäapua arvostetaan suuresti.


Voiko ArcMap ottaa huomioon selitykset ja tietokehykset tarroja sijoitettaessa? - paikkatietojärjestelmät

GET_LAYOUTin ja sen vastauksen LAYOUT tarkoitus on luoda ArcMap -asettelu ja antaa asettelun sijainti ja tiedostonimi.

ArcMap -asiakirjat sisältävät yhden tai useamman tietokehyksen. Tietokehyksiä voidaan tarkastella karttana tai asetteluna. Suurin osa seuraavista esimerkkipyynnöistä perustuu ArcMap -asiakirjaan, joka koostuu kahdesta tietokehyksestä. Tasot -tietokehyksessä on viisi kerrosta ESRIDATA -tietojoukosta. Seuraavassa taulukossa on yhteenveto tasojen nimistä, muodon tiedostotyypeistä ja kerroksen tunnistenumeroista.

Tasojen tietokehys
Kerroksen nimi
Muotoilutiedoston nimi Kerroksen tunnus
KaupungitKAUPUNGIT0
MaakunnatLÄHETYS1
OsavaltiotVALTIOT2
MaatCNTRY 943
valtameriMAAILMA 304

Toista tietokehystä käytetään joissakin esimerkeissä. Tämän tietokehyksen nimi on valtiot ja se sisältää seuraavat kerrokset:

Osavaltioiden tietokehys
Kerroksen nimi
Muotoilutiedoston nimi Kerroksen tunnus
KaupungitKAUPUNGIT0
TietTEET1
OsavaltiotVALTIOT2

ArcMap -asetteluja voi tarkastella GET_LAYOUT -toiminnolla. Asetteluformaatti ja koko määritetään ArcMap -asiakirjassa, eikä niitä voi muuttaa GET_LAYOUT -toiminnolla. GET_LAYOUT voi kuitenkin pyytää tietoja tietokehyksestä eri kirjekuorilla ja projektioilla. Tämä pyyntö on tarkoitettu vain näytölle, ja sitä voidaan käyttää asettelun luomiseen yhdessä useista muodoista. Yksinkertaisin GET_LAYOUT -pyyntö ei vaadi alaelementtejä. Tämän pyynnön avulla asettelu luodaan täsmälleen ArcMap Image Service -palvelun mukaisesti.

Yksinkertainen GET_LAYOUT -pyyntö:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

LAYOUT -vastaus on samanlainen kuin IMAGE -vastaus ja sisältää oletuskuoren ja asettelun nimen ja sijainnin. Yksi merkittävä ero on se, että ENVELOPE -koordinaatit ovat asettelun sivuyksiköissä eivätkä karttayksiköissä.

LAYOUT -vastaus:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltRESPONSE & gt
& ltLAYOUT & gt
& lt ENVELOPE minx = "-3.08333333333333" miny = "0" maxx = "11.5833333333333" maxy = "11" /& gt
& ltOUTPUT url = "http://mycomputer.domain.com/output/world_MYCOMPUTER2102209.png" file = "c: arcims output world_MYCOMPUTER2102209.png"/& gt
& lt/LAYOUT & gt
& lt/VASTAA & gt
& lt/ARCXML & gt

Asettelu palautetaan käyttämällä ArcMap -asiakirjassa määritettyä muotoilua. Tätä muotoa ei voi muuttaa. Asettelu sisältää aina ainakin aktiivisen datakehyksen. Se voi myös sisältää useita tietokehyksiä ja muita marginaalitietoja, kuten tekstiä, pohjoisnuolia, skaalauspalkkeja ja selitteitä. Mitään näistä ominaisuuksista ei voida luoda GET_LAYOUT -pyynnössä.


GET_LAYOUTissa on kaksi alaelementtiä: OMINAISUUDET ja DATAFRAME. OMINAISUUDET määrittelee asettelun yleiset ominaisuudet, kuten näytettävän asettelun laajuuden, oletusprojisoinnin kaikille tietokehyksille ja asettelun tulostusmuodon. DATAFRAME tarjoaa tietoja yksittäisistä tietokehyksistä, kuten näytettävän laajuuden ja käytettävän projektion. Seuraava esimerkki näyttää GET_LAYOUT -pyynnön kehyksen, kun nämä ali -elementit on sisällytetty.

GET_LAYOUT -pyyntö, jossa on OMINAISUUDET ja DATAFRAME:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& lt/OMINAISUUDET & gt
& ltDATAFRAME & gt
& lt/DATAFRAME & gt
& ltDATAFRAME & gt
& lt/DATAFRAME & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

ENVELOPEa voidaan käyttää sekä OMINAISUUKSISSA että DATAFRAME -järjestelmässä.

Kun ENVELOPEa käytetään OMINAISUUKSIIN, kirjekuorikoordinaatit viittaavat asetteluun kokonaisuudessaan sivuyksiköissä. Kun käyttäjä panoroi tai zoomaa asettelua, todellisuudessa tapahtuu, että asettelun laajuus muuttuu, ei minkään datakehyksen laajuus. Kun ENVELOPEa käytetään DATAFRAME -ohjelmassa, tietokehyksen tietojen laajuus muuttuu. Nämä yksiköt ovat karttayksiköissä.

Seuraavassa esimerkissä ENVELOPE sisältyy sekä OMINAISUUKSIIN että molempiin tietokantoihin. OMINAISUUDET -osiossa palvelu ei muutu. Jos käyttäjä kuitenkin panoroi tai zoomaa asettelua, nämä kirjekuorikoordinaatit muuttuvat. DATAFRAME -osiossa Tasot -tietokehyksen kartalla on uusi laajuus, joka kattaa Pohjois -Amerikan. Osavaltioiden tietokehyksen kartalla on uusi ulottuvuus, joka näyttää Yhdysvaltojen itäosan.

ENVELOPEn käyttö OMINAISUUKSISSA ja DATAFRAME: ssa:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& lt/OMINAISUUDET & gt
& ltDATAFRAME & gt
& ltENVELOPE minx = "-144" miny = "19" maxx = "-52" maxy = "81" /& gt
& lt/DATAFRAME & gt
& ltDATAFRAME & gt
& ltENVELOPE minx = "-94" miny = "32" maxx = "-73" maxy = "46" /& gt
& lt/DATAFRAME & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

Vastauksen KIRJEKUORI on asettelusivun yksiköissä.

LAYOUT -vastaus:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltRESPONSE & gt
& ltLAYOUT & gt
& lt ENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11"/& gt
& ltOUTPUT url = "http://mycomputer.domain.com/output/world_MYCOMPUTER2102209.png" file = "c: arcims output world_MYCOMPUTER2102209.png"/& gt
& lt/LAYOUT & gt
& lt/VASTAA & gt
& lt/ARCXML & gt

Asettelu luodaan uusilla tasoilla tasojen ja tilojen tietokehyksille.

DATAFRAME: n sisällä SCALE voidaan käyttää kirjekuoren sijasta. SCALE määrittää suhteellisen asteikon ja kartan keskipisteen. Seuraavassa esimerkissä Tasot -tietokehyksen skaalaustekijäksi on asetettu 1: 15000000 ja se keskittyy Berliiniin, Saksaan. Huomaa, että määritteessä rf, arvo on "15000000" eikä "1: 15000000".

SCALEn käyttäminen DATAFRAME -järjestelmässä:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& lt/OMINAISUUDET & gt
& ltDATAFRAME & gt
& ltSCALE rf = "15000000" x = "13,3" y = "52,8" /& gt
& lt/DATAFRAME & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

Asettelu luodaan uudella asteikolla tasojen tietokehykselle.

Datakehyksen sisällä olevat kerrokset voidaan kytkeä päälle ja pois päältä käyttämällä LAYERLIST- ja LAYERDEF -alla olevia esimerkkejä.

Tasot -tietokehyksessä LAYERLIST sisältää tilausattribuutti. Kun tilaus on "true", vain LAYERDEF -tasot, jotka on lueteltu LAYERLIST -luettelossa, sisältyvät. Tässä esimerkissä vain valtameri (id = "4") ja Maat (id = "3") kerrokset näytetään. Kaikki muut palvelun kerrokset ohitetaan. vaikkakin näkyvää määritettä ei vaadita, kerros ei piirrä, ellei sitä sisälly.

Osavaltioiden tietokehyksessä LAYERLIST ei sisällä määritteitä. Kaikki palvelun näkyvät kerrokset piirretään, ellei niitä ole erikseen poistettu käytöstä LAYERDEFin avulla. Tässä esimerkissä Roads -kerroksen (id = "1") arvoksi on määritetty "false", eikä sitä näytetä.

LAYERLISTin ja LAYERDEFin käyttö DATAFRAME -järjestelmässä:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& lt/OMINAISUUDET & gt
& ltDATAFRAME & gt
& ltLAYERLIST order = "true" & gt
& ltLAYERDEF látható = "tosi" /& gt
& ltLAYERDEF látható = "tosi" /& gt
& lt/LAYERLIST & gt
& lt/DATAFRAME & gt
& ltDATAFRAME & gt
& ltLAYERLIST & gt
& ltLAYERDEF látható = "false" /& gt
& lt/LAYERLIST & gt
& lt/DATAFRAME & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

Asettelu sisältää vain LAYERLIST- ja LAYERDEF -arvoilla määritetyt kerrokset.

Asettelua voidaan pyytää jossakin seuraavista muodoista: AI, BMP, EMF, EPS, JPG, PDF, PNG8 tai PNG24. Muoto määritetään OUTPUT -toiminnolla OMAISUUDET -valikossa. Jos OUTPUT ei sisälly toimitukseen, oletuslähdemuoto on JPG.

Pyynnön aikana IMAGESIZE in PROPERTIES asettaa asettelujen koon BMP-, JPG-, PNG8- ja PNG24 -muodoissa. Jos IMAGESIZE -toimintoa ei käytetä, oletuskuvan koko on 400 x 300 pikseliä.

Lähdön kokoa ohjataan IMAGESIZE -leveyden ja korkeuden avulla. Kuvan enimmäiskoko ei voi olla suurempi kuin ArcMap Image Service -palvelun käynnistyksen yhteydessä asetettu muistimuisti. Esimerkiksi 1 Mt: n kuvamuistin raja mahdollistaa enintään 262 144 pikselin (512 x 512) asettelukuvan luomisen. Asettelukuvan koko on oletuksena rajoitettu 4 Mt: iin, mikä vastaa 1 048 576 pikseliä. ArcIMS -järjestelmänvalvojan avulla voidaan tehdä muutoksia kuvan kokoon ja pikselimäärään. Lisätietoja on kohdassa ArcIMS: n käyttäminen.

Suurin mahdollinen kuvapistemäärä suurempi pyydetty asettelu voidaan pienentää maksimikuvamäärän rajoihin käyttämällä GET_LAYOUT autoresize. Jos automaattisen koon asetukseksi on valittu "tosi", pyydetyn asettelun kokoa pienennetään aina pikselien enimmäismäärän rajoissa. Jos automaattista kokoa ei sisälly, ja pyydetty kuva on liian suuri, ERROR -viesti palautetaan.

Seuraavassa esimerkissä asettelua pyydetään PNG8 -muodossa: OUTPUT type = "PNG8". Pyydetty asettelukoko on 1600 x 1200 pikseliä: IMAGESIZE. Jotta GET_LAYOUT -automaattikokoon voidaan asettaa liian suuri kuvapyyntö, se voi olla "tosi".

GET_LAYOUT -pyyntö OUTPUT, IMAGESIZE ja autoresize = "true":
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT autoresize = "true" & gt
& OMINAISUUDET & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& ltIMAGESIZE /& gt
& ltOUTPUT type = "PNG8" /& gt
& lt/OMINAISUUDET & gt
& ltDATAFRAME & gt
& ltENVELOPE minx = "-144" miny = "19" maxx = "-52" maxy = "81" /& gt
& lt/DATAFRAME & gt
& ltDATAFRAME & gt
& ltENVELOPE minx = "-94" miny = "32" maxx = "-73" maxy = "46" /& gt
& lt/DATAFRAME & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

LAYOUT -vastaus sisältää kuvan koon, koska pyydetty kuvakoko oli suurempi kuin sallittu. OUTPUT -toiminnossa korkeus ja leveys määrittävät uuden kuvan koon. Luotu asettelu on PNG -muodossa.

LAYOUT -vastaus ja muutettu ulostulotieto:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltRESPONSE & gt
& ltLAYOUT & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& ltOUTPUT url = "http://mycomputer.domain.com/output/world_MYCOMPUTER3633699.png file =" c: arcims output world_MYCOMPUTER3633699.png "/& gt
& lt/LAYOUT & gt
& lt/VASTAA & gt
& lt/ARCXML & gt

OUTPUT tarjoaa tulostusmuodon asettamisen lisäksi tavan määrittää tulostusasettelun sijainti ja tiedostonimi. Lähtöhakemisto ja URL -osoite määritetään oletusarvoisesti palvelun käynnistyksen yhteydessä. Kun pyyntö tehdään, ArcIMS -tilapalvelin määrittää tiedostonimen. Nimi sisältää palvelun nimen, tietokoneen nimen, jolle asettelu luotiin, ja satunnaisesti luodun numeron. Jos palvelun nimi on "maailma" ja tietokone on "MYCOMPUTER", esimerkkitiedostonimi on world_MYCOMPUTER1248849.png.

OUTPUT toimii pariliitettyjen määritteiden kanssa määrittäessään tiedoston tulostuspaikan ja/tai tiedostonimen. Jos käytetään yhtä määritteistä, sen pari on pakollinen. Käytettävän parin määrittäminen riippuu siitä, määritteleekö ArcIMS -tilapalvelin tulostiedoston nimen vai sinä. Kaikissa tapauksissa määrität tulostushakemiston ja URL -osoitteen.

Attribuutti Pariksi määritetty ominaisuus Tiedostonimen määritys Esimerkki: http: // mycomputer/arcims/.
polku baseurl ArcIMS antaa satunnaisen tiedostonimen. world_MYCOMPUTER1248849.png
nimi url Määrität tiedostonimen.minun tiedostonimi.png

Kun aloitat palvelun tai sisällytät OUTPUT -pyynnön, UNC -polunimet ovat kelvollisia. Esimerkiksi "c: arcims output" -toiminnon sijasta voidaan käyttää " myComputer arcims output".

Seuraavassa esimerkissä ArcIMS -tilapalvelin määrittää tiedostonimen, mutta käyttäjä määrittää hakemiston ja URL -osoitteen. Attribuuttipari tässä skenaariossa on path-baseurl.

LÄHTÖ, kun ArcIMS Spatial Server määrittää tiedostonimen:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& ltOUTPUT type = "pdf" path = "c: arcims layout_output" baseurl = "http://mycomputer.domain.com/layout_output"/& gt
& lt/OMINAISUUDET & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

LAYOUT -vastaus:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltRESPONSE & gt
& ltLAYOUT & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& lt OUTPUT url = "http://mycomputer.domain.com/layout_output/world_MYCOMPUTER2983738.pdf" file = "c: arcims layout_output world_MYCOMPUTER2983738.pdf"/& gt
& lt/LAYOUT & gt
& lt/VASTAA & gt
& lt/ARCXML & gt

Seuraavassa esimerkissä käyttäjä määrittää tiedostonimen, hakemiston ja URL -osoitteen. Tässä skenaariossa määritteen pari on name-url.

LÄHTÖ, kun käyttäjä määrittää tiedostonimen:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& ltOUTPUT type = "pdf" name = "c: arcims layout_output layoutimage.pdf" url = "http://mycomputer.domain.com/layout_output/layoutimage.pdf"/& gt
& lt/OMINAISUUDET & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

LAYOUT -vastaus:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltRESPONSE & gt
& ltLAYOUT & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& lt OUTPUT url = "http://mycomputer.domain.com/layout_output/layoutimage.pdf" file = "c: arcims layout_output layoutimage.pdf"/& gt
& lt/LAYOUT & gt
& lt/VASTAA & gt
& lt/ARCXML & gt

  • GET_LAYOUT -pyynnössä kaikki OUTPUT -attribuutit ohitetaan tyyppiä lukuun ottamatta.

GET_LAYOUT -pyyntö, kun LÄHTÖ on rajoitettu:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& ltOUTPUT name = "c: arcims output layoutimage.png" url = "http://mycomputer.domain.com/output/layoutimage.png"/& gt
& lt/OMINAISUUDET & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

Tiedostonimirajoitukset voidaan poistaa asettamalla ominaisuudet spatialServer.AllowRequestOutput arvoksi true kohdassa Esrimap_prop. Tämä ominaisuustiedosto löytyy samasta hakemistosta kuin ArcIMS Servlet Connector. Lisätietoja Esrimap_propin sijainnista ja sen ominaisuuksista on ArcIMS -ohjeessa.

GET_LAYOUT: n kanssa sallittuja tulostustiedostotyyppejä voidaan rajoittaa Esrimap_prop -ohjelmassa käyttämällä ominaisuutta spatialServer.ForbiddenLayoutTypes. Kun tehdään pyyntö, joka sisältää kielletyn tyypin, asettelu palautetaan palvelun muodossa, kun se käynnistettiin. Luetteloon voidaan sisällyttää mikä tahansa asetteluformaatin tulostustyypeistä, mukaan lukien ai, bmp, emf, eps, jpg, pdf, png8 ja png24.

LAYOUT -vastaus:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltRESPONSE & gt
& ltLAYOUT & gt
& ltENVELOPE minx = "-180" miny = "-144" maxx = "180" maxy = "144" /& gt
& lt OUTPUT url = "http://mycomputer.domain.com/output/world_MYCOMPUTER2102209.png"/& gt
& lt/LAYOUT & gt
& lt/VASTAA & gt
& lt/ARCXML & gt

Tämä tulostustiedoston sijainnin rajoitus voidaan poistaa asettamalla ominaisuuden spatialServer.AllowResponsePath arvoksi true kohdassa Esrimap_prop.

Nämä OUTPUT -rajoitukset ovat voimassa vain, kun käytetään ArcIMS Servlet -liitintä. Ne eivät koske ActiveX-, ColdFusion- tai Java -liittimiä. OUTPUT -tiedostopääte on rajoitettu *.ai, *.bmp, *.emf, *.eps, *.jpg, *.pdf ja *.png, riippumatta siitä, onko OUTPUT rajoitettu vai ei.

FILTERCOORDSYS -toimintoa käytetään määrittämään pyytävän asiakkaan koordinaattijärjestelmä tai ENVELOPE -koordinaatit DATAFRAME -järjestelmässä. FEATURECOORDSYS -toimintoa käytetään määrittämään, mihin koordinaatistoon tietokehysten tiedot tulee muuntaa. Kaikki tähänastiset esimerkit ovat olleet maantieteellisissä koordinaateissa (desimaaliasteina), joiden tunnus on "4326".

FILTERCOORDSYS- ja FEATURECOORDSYS -järjestelmiä voidaan käyttää OMINAISUUDET- ja DATAFRAME -sisätiloissa. Kun niitä käytetään OMINAISUUDET -tilassa, kaikki tietokehykset muunnetaan samaan projektioon. Seuraavassa esimerkissä kaikki asettelun tietokehykset pyydetään Robinsonissa, jonka tunnus on "54030". FILTERCOORDSYS ja FEATURECOORDSYS sisältyvät vain OMINAISUUDET -osioon.

FILTERCOORDSYS: n ja FEATURECOORDSYS: n käyttäminen OMINAISUUDET:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& ltENVELOPE minx = "0" miny = "0" maxx = "8,5" maxy = "11" /& gt
& ltFEATURECOORDSYS /& gt
& ltFILTERCOORDSYS /& gt
& lt/OMINAISUUDET & gt
& ltDATAFRAME & gt
& lt/DATAFRAME & gt
& ltDATAFRAME & gt
& lt/DATAFRAME & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

Vastauksena ENVELOPE -koordinaatit ovat edelleen asettelusivun yksiköissä.

LAYOUT -vastaus:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltRESPONSE & gt
& ltLAYOUT & gt
& lt ENVELOPE minx = "0" miny = "-0,45" maxx = "8,5" maxy = "11,45" /& gt
& ltOUTPUT url = "http://mycomputer.domain.com/output/world_MYCOMPUTER2102209.jpg" file = "c: arcims output world_MYCOMPUTER2102209.jpg"/& gt
& lt/LAYOUT & gt
& lt/VASTAA & gt
& lt/ARCXML & gt

Palautetussa karttakuvassa näkyvät sekä tasot että tilatietokehykset Robinson -koordinaattijärjestelmässä.


Robinson -koordinaattijärjestelmän käyttäminen tilatietokannan kanssa ei tuota parhaita tuloksia. Yksittäisten tietokehysten projisoinnin asettamiseksi FILTERCOORDSYS- ja FEATURECOORDSYS -järjestelmiä voidaan käyttää DATAFRAME -sovelluksessa OMINAISUUDEN lisäksi. Kun sitä käytetään DATAFRAME -järjestelmässä, PROPERTIES -osion projektiotiedot ohitetaan kyseisessä tietokehyksessä.

Seuraavassa esimerkissä FILTERCOORDSYS ja FEATURECOORDSYS käytetään "State" -tietokehyksessä ja niiden asetukseksi on valittu Pohjois -Amerikan Albers Equal Area Conic (102008). Yhteenvetona tästä pyynnöstä FILTERCOORDSYS ja FEATURECOORDSYS osiossa OMINAISUUDET on asetettu arvoon Robinson (54030). Kaikki tietokehykset käyttävät tätä projektiotietoa, ellei FILTERCOORDSYS- ja FEATURECOORDSYS -järjestelmiä käytetä myös DATAFRAME -ohjelmassa. "Tasot" -tietokehyksessä ei ole projektiotietoja, ja tiedot muutetaan Robinsoniksi. "Osavaltiot" -tietokehyksessä on projisointitietoja, ja tiedot muunnetaan Pohjois -Amerikan albereiksi eikä Robinsoniksi.

ENVELOPE tulee myös sisällyttää DATAFRAMEen, kun käytetään heijastusosia. ENVELOPE -koordinaattien tulee olla samassa projektiossa kuin FILTERCOORDSYS. Jos ENVELOPE ei ole mukana, koordinaattien oletetaan olevan palvelun projektioissa.


Legendoja

Legenda kertoo kartanlukijalle, mitä merkkejä kartan piirteitä edustavat symbolit tarkoittavat. Selitykset koostuvat esimerkkeistä kartan symboleista ja selityksistä. Kun käytät tason ominaisuuksiin yhtä symbolia, kerros on merkitty kerroksen nimellä selitteessä. Kun käytät useita symboleja edustamaan ominaisuuksia yhdessä kerroksessa, ominaisuuksien luokittelukentästä tulee otsikon otsikko ja jokainen luokka merkitään sen arvolla.

Legendoissa on laastareita, jotka osoittavat esimerkkejä karttasymboleista. Oletuksena selitykset ovat pisteitä, suoria viivoja tai suorakulmioita, jotka vastaavat karttasymboleja. Voit mukauttaa esimerkiksi selitelaastareita, joten alueet esitetään toisen muotoisilla laastareilla tai joet piirretään mutkikkaalla eikä suoralla viivalla.

Jos sinulla on useampi kuin yksi tietokehys, selitteen lisääminen lisää selitteen valittuun tietokehykseen. Jokainen selite vastaa yhtä tietokehystä, vaikka voit järjestää useita selitteitä yhdeksi selitteeksi monimutkaiselle kartalle.

Voit muuttaa useiden seliteosien käyttämää tekstisymbolia Selitteen ominaisuudet -valintaikkunan Kohteet -välilehdellä. Voit muuttaa selitteen kaikkien kohteiden tekstisymbolia tai vain luettelossa valitsemiasi kohteita. Avattavasta luettelosta voit valita seliteosien osat, joihin haluat käyttää tekstisymbolia. Jos haluat kuvauksesi olevan useammalla rivillä, lisää rivinvaihto painamalla CTRL+ENTER -näppäintä Selite -valintaikkunan Kuvaus -tekstiruudussa.

Voit muokata selitteessä näkyvien tarrojen tekstiä muuttamalla tekstiä ArcMap -sisällysluettelossa tai Tason ominaisuudet -valintaikkunan Symbologia -välilehdessä. Selite -teksti voidaan muotoilla Esri -tekstin muotoilutunnisteilla.

Jos haluat, että selitteessäsi näkyy lisäkuvaus yksittäisistä symbolikerroksista, valitse selite, joka sisältää kuvauksen. Jos haluat lisätä kuvauksen, napsauta hiiren kakkospainikkeella tasoa, johon haluat lisätä kuvaavaa tekstiä sisällysluetteloon, valitse Ominaisuudet ja napsauta sitten Tason ominaisuudet -valintaikkunan Symbologia-välilehteä. Jos käytät yhden symbolin menetelmää, napsauta Kuvaus -painiketta. Jos käytät muuta piirtomenetelmää kuin kaaviot, napsauta symbolia hiiren kakkospainikkeella sen jälkeen, kun olet määrittänyt sen symbologiasetukset, ja napsauta Muokkaa kuvausta. Kirjoittamasi teksti näkyy kyseisen symbolin vieressä selitteessä, teksti ei näy sisällysluettelossa.

Legendojen läpinäkyvyys

Jos kartassasi on läpinäkyvät kerrokset, ArcMap simuloi selitteesi läpinäkyviä värejä. Kun tietokehyksen tasot tehdään läpinäkyviksi, sisällysluettelo ja asettelunäkymän selitykset käyttävät automaattisesti vaaleampia värejä läpinäkyvyyden heijastamiseksi.

Vaihtoehto simuloida läpinäkyvyyttä on asetettu Yleiset -välilehdellä Tietokehyksen ominaisuudet -valintaikkunassa. Kun tämä vaihtoehto on käytössä, kerrokselle piirretyt kiinteät, kirkkaanpunaiset monikulmioitukset näkyvät selitteessä vaaleanpunaisina tai vaaleanpunaisina riippuen tasoon lisätystä läpinäkyvyydestä. Kuitenkin, kun Simuloi läpinäkyvyys -asetus on pois päältä, selite näyttää edelleen kiinteän punaisen monikulmion symbolin, vaikka monikulmio ei näy punaisena kartalla, koska kerros on läpinäkyvä.

Oletusarvoisesti tämä asetus ei ole käytössä (ei valittuna) kartoissa, jotka on luotu ennen 9.3: n ArcGIS -versioilla, mutta voit ottaa sen käyttöön halutessasi. Tämä asetus otetaan automaattisesti käyttöön uusien tietokehysten luomiseksi olemassa oleviin kartta -asiakirjoihin.

Lisäksi voit muuntaa selitteen grafiikkaan ja määrittää manuaalisesti selosteen värit. Eye Dropper -työkalun avulla voit saada pikselin tarkan RGB -arvon ja käyttää tätä väriä legenda -laastarissa.


Voiko ArcMap ottaa huomioon tarroja ja tietokehyksiä tarroja sijoitettaessa? - paikkatietojärjestelmät

GET_LAYOUTin ja sen vastauksen LAYOUT tarkoitus on luoda ArcMap -asettelu ja antaa asettelun sijainti ja tiedostonimi.

ArcMap -asiakirjat sisältävät yhden tai useamman tietokehyksen. Tietokehyksiä voidaan tarkastella karttana tai asetteluna. Suurin osa seuraavista esimerkkipyynnöistä perustuu ArcMap -asiakirjaan, joka koostuu kahdesta tietokehyksestä. Tasot -tietokehyksessä on viisi kerrosta ESRIDATA -tietojoukosta. Seuraavassa taulukossa on yhteenveto tasojen nimistä, muodon tiedostotyypeistä ja kerroksen tunnistenumeroista.

Tasojen tietokehys
Kerroksen nimi
Muotoilutiedoston nimi Kerroksen tunnus
KaupungitKAUPUNGIT0
MaakunnatLÄHETYS1
OsavaltiotVALTIOT2
MaatCNTRY 943
valtameriMAAILMA 304

Toista tietokehystä käytetään joissakin esimerkeissä. Tämän tietokehyksen nimi on valtiot ja se sisältää seuraavat kerrokset:

Osavaltioiden tietokehys
Kerroksen nimi
Muotoilutiedoston nimi Kerroksen tunnus
KaupungitKAUPUNGIT0
TietTEET1
OsavaltiotVALTIOT2

ArcMap -asetteluja voi tarkastella GET_LAYOUT -toiminnolla. Asetteluformaatti ja koko määritetään ArcMap -asiakirjassa, eikä niitä voi muuttaa GET_LAYOUT -toiminnolla. GET_LAYOUT voi kuitenkin pyytää tietoja tietokehyksestä eri kirjekuorilla ja projektioilla. Tämä pyyntö on tarkoitettu vain näytölle, ja sitä voidaan käyttää asettelun luomiseen yhdessä useista muodoista. Yksinkertaisin GET_LAYOUT -pyyntö ei vaadi alaelementtejä. Tämän pyynnön avulla asettelu luodaan täsmälleen ArcMap Image Service -palvelun mukaisesti.

Yksinkertainen GET_LAYOUT -pyyntö:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

LAYOUT -vastaus on samanlainen kuin IMAGE -vastaus ja sisältää oletuskuoren ja asettelun nimen ja sijainnin. Yksi merkittävä ero on, että ENVELOPE -koordinaatit ovat asettelun sivuyksiköissä eivätkä karttayksiköissä.

LAYOUT -vastaus:
& lt? xml version = "1.0" encoding = "UTF8"? & gt
& ltARCXML version = "1.1" & gt
& ltRESPONSE & gt
& ltLAYOUT & gt
& lt ENVELOPE minx = "-3.08333333333333" miny = "0" maxx = "11.5833333333333" maxy = "11" /& gt
& ltOUTPUT url = "http://mycomputer.domain.com/output/world_MYCOMPUTER2102209.png" file = "c: arcims output world_MYCOMPUTER2102209.png"/& gt
& lt/LAYOUT & gt
& lt/VASTAA & gt
& lt/ARCXML & gt

Asettelu palautetaan käyttämällä ArcMap -asiakirjassa määritettyä muotoilua. Tätä muotoa ei voi muuttaa. Asettelu sisältää aina ainakin aktiivisen datakehyksen. Se voi myös sisältää useita tietokehyksiä ja muita marginaalitietoja, kuten tekstiä, pohjoisnuolia, skaalauspalkkeja ja selitteitä. Mitään näistä ominaisuuksista ei voida luoda GET_LAYOUT -pyynnössä.


GET_LAYOUTissa on kaksi alaelementtiä: OMINAISUUDET ja DATAFRAME. OMINAISUUDET määrittelee asettelun yleiset ominaisuudet, kuten näytettävän asettelun laajuuden, oletusprojisoinnin kaikille tietokehyksille ja asettelun tulostusmuodon. DATAFRAME tarjoaa tietoja yksittäisistä tietokehyksistä, kuten näytettävän laajuuden ja käytettävän projektion. Seuraava esimerkki näyttää GET_LAYOUT -pyynnön kehyksen, kun nämä ali -elementit on sisällytetty.

GET_LAYOUT -pyyntö, jossa on OMINAISUUDET ja DATAFRAME:
& lt? xml version = "1.0" encoding = "UTF-8"? & gt
& ltARCXML version = "1.1" & gt
& ltPYYNTÖ & gt
& ltGET_LAYOUT & gt
& OMINAISUUDET & gt
& lt/OMINAISUUDET & gt
& ltDATAFRAME & gt
& lt/DATAFRAME & gt
& ltDATAFRAME & gt
& lt/DATAFRAME & gt
& lt/GET_LAYOUT & gt
& lt/PYYNTÖ & gt
& lt/ARCXML & gt

ENVELOPEa voidaan käyttää sekä OMINAISUUKSISSA että DATAFRAME -järjestelmässä.

Kun ENVELOPEa käytetään OMINAISUUKSIIN, kirjekuorikoordinaatit viittaavat sivun yksiköiden kokonaisuuteen. Kun käyttäjä panoroi tai zoomaa asettelua, todellisuudessa tapahtuu, että asettelun laajuus muuttuu, ei minkään datakehyksen laajuus. When ENVELOPE is used in DATAFRAME, the extent of the data in the data frame changes. These units are in map units.

In the following example, ENVELOPE is included in both PROPERTIES and in both DATAFRAMEs. In the PROPERTIES section, the extent is unchanged from the service. However, if a user were to pan or zoom the layout, these envelope coordinates would be the ones to change. In the DATAFRAME section, the map in the Layers data frame has a new extent covering North America. The map in the States data frame has a new extent showing the eastern United States.

Using ENVELOPE in PROPERTIES and DATAFRAME:
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<REQUEST>
<GET_LAYOUT>
<PROPERTIES>
<ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11" />
</PROPERTIES>
<DATAFRAME >
<ENVELOPE minx="-144" miny="19" maxx="-52" maxy="81" />
</DATAFRAME>
<DATAFRAME >
<ENVELOPE minx="-94" miny="32" maxx="-73" maxy="46" />
</DATAFRAME>
</GET_LAYOUT>
</REQUEST>
</ARCXML>

The ENVELOPE in the response is in layout page units.

LAYOUT response:
<?xml version="1.0" encoding="UTF8"?>
<ARCXML version="1.1">
<RESPONSE>
<LAYOUT>
< ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11"/>
<OUTPUT url="http://mycomputer.domain.com/output/world_MYCOMPUTER2102209.png" file="c:arcimsoutputworld_MYCOMPUTER2102209.png" />
</LAYOUT>
</RESPONSE>
</ARCXML>

The layout is generated with new extents for the Layers and States data frames.

Inside DATAFRAME, SCALE can be used instead of ENVELOPE. SCALE defines a relative scale and the center point of the map. In the next example, the scale factor for the Layers data frame is set to 1:15000000 and is centered on Berlin, Germany. Note that in the attribute rf , the value is "15000000" and not "1:15000000".

Using SCALE in DATAFRAME:
<?xml version="1.0" encoding="UTF8"?>
<ARCXML version="1.1">
<REQUEST>
<GET_LAYOUT>
<PROPERTIES>
<ENVELOPE minx="0" miny="0" maxx="11" maxy="8.5" />
</PROPERTIES>
<DATAFRAME >
<SCALE rf="15000000" x="13.3" y="52.8" />
</DATAFRAME>
</GET_LAYOUT>
</REQUEST>
</ARCXML>

The layout is generated with a new scale for the "Layers" data frame.

A layout can be requested in one of the following formats: AI, BMP, EMF, EPS, JPG, PDF, PNG8, or PNG24. The format is specified using OUTPUT inside PROPERTIES. If OUTPUT is not included, the default output format is JPG.

During a request, IMAGESIZE in PROPERTIES sets the size of layouts in BMP, JPG, PNG8, and PNG24 formats. If IMAGESIZE is not used, the default image size is 400 x 300 pixels.

The output size is controlled using IMAGESIZE width and height . The maximum size of an image can be no greater than the image memory limit set when an ArcMap Image Service is started. For example, an image memory limit of 1 MB allows a layout image no larger than 262,144 pixels (512 x 512) to be generated. By default, a layout image is limited in size to 4 MB, which corresponds to 1,048,576 pixels. Changes can be made to the image size and pixel count using the ArcIMS Administrator. For more information, see Using ArcIMS .

A requested layout greater than the maximum pixel count can be reduced in size to within the maximum pixel count by using GET_LAYOUT autoresize . If autoresize is set to "true", a requested layout is reduced in size to always be within the maximum pixel count. Jos autoresize is not included, and the requested image is too big, an ERROR message is returned.

In the next example, a layout is requested in PNG8 format: OUTPUT type="PNG8" . The requested layout size is 1600 x 1200 pixels: IMAGESIZE . In order to trap for image requests that are too large, GET_LAYOUT autoresize is set to "true".

GET_LAYOUT request with OUTPUT, IMAGESIZE, and autoresize="true":
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<REQUEST>
<GET_LAYOUT autoresize="true">
<PROPERTIES>
<ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11" />
<IMAGESIZE />
<OUTPUT type="PNG8" />
</PROPERTIES>
<DATAFRAME >
<ENVELOPE minx="-144" miny="19" maxx="-52" maxy="81" />
</DATAFRAME>
<DATAFRAME >
<ENVELOPE minx="-94" miny="32" maxx="-73" maxy="46" />
</DATAFRAME>
</GET_LAYOUT>
</REQUEST>
</ARCXML>

The LAYOUT response includes a resized image, since the requested image size was greater than allowed. In OUTPUT, the attributes height and width show the new image size. The generated layout is in PNG format.

IMAGE response with resized image information:
<?xml version="1.0" encoding="UTF8"?>
<ARCXML version="1.1">
<RESPONSE>
<LAYOUT>
<ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11" />
<OUTPUT url="http://mycomputer.domain.com/output/world_MYCOMPUTER3633699.png file="c:arcimsoutputworld_MYCOMPUTER3633699.png" />
</LAYOUT>
</RESPONSE>
</ARCXML>

OUTPUT, in addition to setting the output format, provides a way to define the location and filename of the output layout. By default, the output directory and URL location are determined at the time the service is started. When a request is made, the ArcIMS Spatial Server assigns a filename. The name includes the service name, the computer name the layout was generated on, and a randomly generated number. If the service is named "world" and the computer is "MYCOMPUTER", then an example filename is world_MYCOMPUTER1248849.png.

When output is included in the request, it overrides information from when the service was started. The output files are not automatically deleted by ArcIMS Tasker Windows service or UNIX daemon. In order for the files to be deleted, the taskfile property must be set in tasker.properties. This property points to a file named Tasks.xml by default. If you plan to use OUTPUT type most of the time in GET_LAYOUT requests, you should use the Tasks.xml file. Both tasker.properties and Tasks.xml are found in the AppServer/Tasker directory located within the ArcIMS install directory.

    In addition to OUTPUT type in a GET_LAYOUT request, also include a directory location and/or file name for output files. This directory should be different than the default Output directory.

<OUTPUT path="c:arcimslayout_output" baseurl="http://mycomputer.domain.com/arcims/layout_output" />

<CLEANUP dir="c:/ArcIMS/layout_output" exts="ai, bmp, emf, eps, jpg, pdf, png" interval="10" />

OUTPUT works with paired attributes for defining a file output location and/or filename. If one of the attributes is used, its pair is required. Determining which pair to use depends on whether the ArcIMS Spatial Server defines the output filename or you do. In all cases, you specify the output directory and URL.

Attribute Paired Attribute Filename assignment Example: http://mycomputer/arcims/.
path baseurl ArcIMS assigns random filename. world_MYCOMPUTER1248849.png
nimi url You assign a filename.myfilename.png

When starting a service or including OUTPUT in the request, UNC pathnames are valid. For example, instead of using "c:arcimslayout_output", "myComputerarcimslayout_output" can be used.

In the following example, the ArcIMS Spatial Server assigns a filename, but the user assigns the directory and URL. The attribute pair in this scenario is path-baseurl .

OUTPUT when ArcIMS Spatial Server defines filename:
<?xml version="1.0" encoding="UTF-8" ?>
<ARCXML version="1.1">
<REQUEST>
<GET_LAYOUT>
<PROPERTIES>
<ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11" />
<OUTPUT type="pdf" path="c:arcimslayout_output" baseurl="http://mycomputer.domain.com/layout_output" />
</PROPERTIES>
</GET_LAYOUT>
</REQUEST>
</ARCXML>

LAYOUT response:
<?xml version="1.0" encoding="UTF8"?>
<ARCXML version="1.1">
<RESPONSE>
<LAYOUT>
<ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11" />
< OUTPUT url="http://mycomputer.domain.com/layout_output/world_MYCOMPUTER2983738.pdf" file="c:arcimslayout_outputworld_MYCOMPUTER2983738.pdf" />
</LAYOUT>
</RESPONSE>
</ARCXML>

In the next example, the user assigns a filename, directory, and URL. The attribute pair in this scenario is name-url .

OUTPUT when user defines filename:
<?xml version="1.0" encoding="UTF-8" ?>
<ARCXML version="1.1">
<REQUEST>
<GET_LAYOUT>
<PROPERTIES>
<ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11" />
<OUTPUT type="pdf" name="c:arcimslayout_outputlayoutimage.pdf" url="http://mycomputer.domain.com/layout_output/layoutimage.pdf" />
</PROPERTIES>
</GET_LAYOUT>
</REQUEST>
</ARCXML>

LAYOUT response:
<?xml version="1.0" encoding="UTF8"?>
<ARCXML version="1.1">
<RESPONSE>
<LAYOUT>
<ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11" />
< OUTPUT url="http://mycomputer.domain.com/layout_output/layoutimage.pdf" file="c:arcimslayout_outputlayoutimage.pdf" />
</LAYOUT>
</RESPONSE>
</ARCXML>

  • In a GET_LAYOUT request, OUTPUT is ignored.

GET_LAYOUT request when OUTPUT is restricted:
<?xml version="1.0" encoding="UTF-8" ?>
<ARCXML version="1.1">
<REQUEST>
<GET_LAYOUT>
<PROPERTIES>
<OUTPUT name="c:arcimslayout_outputlayoutimage.png" url="http://mycomputer.domain.com/layout_output/layoutimage.png" />
</PROPERTIES>
</GET_LAYOUT>
</REQUEST>
</ARCXML>

Note that in this situation, the only format available for a layout is the format declared when the service was started, either *.JPG or *.PNG.

These restrictions apply only when the ArcIMS Servlet Connector is used. They do not apply to the ActiveX, ColdFusion, or Java Connectors. The OUTPUT filename extensions are limited to *.ai, *.bmp, *.emf, *.eps, *.jpg, *.pdf, and *.png, regardless of whether OUTPUT is restricted or not.

FILTERCOORDSYS is used to specify the coordinate system of the requesting client or the coordinates in ENVELOPE in a DATAFRAME. FEATURECOORDSYS is used to specify to which coordinate system the data in the data frames should be transformed. All the examples so far for have been in geographic coordinates (decimal degrees), which have an ID of "4326".

FILTERCOORDSYS and FEATURECOORDSYS can be used inside PROPERTIES and DATAFRAME. When used inside PROPERTIES, all data frames are transformed to the same projection. In the next example, all data frames in the layout are requested in Robinson, which has an ID of "54030". FILTERCOORDSYS and FEATURECOORDSYS are included only in the PROPERTIES section.

Using FILTERCOORDSYS and FEATURECOORDSYS inside PROPERTIES:
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<REQUEST>
<GET_LAYOUT>
<PROPERTIES>
<ENVELOPE minx="0" miny="0" maxx="8.5" maxy="11" />
<FEATURECOORDSYS />
<FILTERCOORDSYS />
</PROPERTIES>
<DATAFRAME >
</DATAFRAME>
<DATAFRAME >
</DATAFRAME>
</GET_LAYOUT>
</REQUEST>
</ARCXML>

In the response, the ENVELOPE coordinates are still in layout page units.

IMAGE response:
<?xml version="1.0" encoding="UTF8"?>
<ARCXML version="1.1">
<RESPONSE>
<LAYOUT>
< ENVELOPE minx="0" miny="-0.45" maxx="8.5" maxy="11.45" />
<OUTPUT url="http://mycomputer.domain.com/output/world_MYCOMPUTER2102209.jpg" file="c:arcimsoutputworld_MYCOMPUTER2102209.jpg" />
</LAYOUT>
</RESPONSE>
</ARCXML>

The returned map image shows both the Layers and States data frames in the Robinson coordinate system.


Using the Robinson coordinate system with the "States" data frame does not produce the best results. In order to set the projection for individual data frames, FILTERCOORDSYS and FEATURECOORDSYS can be used inside DATAFRAME in addition to PROPERTIES. When used in a DATAFRAME, projection information in the PROPERTIES section is ignored for that data frame.

In the next example, FILTERCOORDSYS and FEATURECOORDSYS are used in the "States" data frame and are set to North America Albers Equal Area Conic (102008). To summarize this request, FILTERCOORDSYS and FEATURECOORDSYS in the PROPERTIES section are set to Robinson (54030). All data frames use this projection information unless FILTERCOORDSYS and FEATURECOORDSYS are also used in DATAFRAME. The "Layers" data frame has no projection information, and the data is transformed to Robinson. The "States" data frame does have projection information, and the data is transformed to North America Albers rather than to Robinson.

ENVELOPE should also be included in DATAFRAME when using projection elements. The ENVELOPE coordinates should be in the same projection as FILTERCOORDSYS. If ENVELOPE is not included, the coordinates are assumed to be in the projection of the service.


USING THE EXTENSION

The Geologic Cross Section Tool extension is available from me (see email address in title) as a dynamic link library (DLL) file. It has been compiled for ArcGIS 9. Once the DLL has been registered with the host computer, the tool can be added to any ArcMap toolbar through the Customize interface. It appears as a button with a simple faulted strata icon.

To use the tool, first add appropriate layers to an ArcMap data frame. These are: a polygon layer of geology units, a line layer containing one or more lines of cross section, a digital elevation model or similar raster with elevation values, an optional layer showing structural measurement points, an optional layer showing borehole locations, and a related table of borehole intervals.

The following are some requirements for the formats of the layers:

  1. Before being added to the map, all layers should be projected to the same coordinate system.
  2. All X, Y, and Z values among all layers must be in the same units. In particular, check that all elevation and depth values in the boreholes layer and the borehole intervals table agree with the DEM.
  3. The cross section lines attribute table must have a name field with which to uniquely name each cross section. Avoid using a single quote character in the name, that is, don t use AA or BB .
  4. The structural measurements attribute table must have strike, or equivalent, and dip, or equivalent, fields. Convert any quadrant strike values (e.g., N30E) into azimuth values between 0 and 360.
  5. The borehole locations attribute table must have a field that carries the name of each borehole and a field that carries the total depth of the hole. It is best if there is also a field carrying the elevation of the top of the hole, but the user has the option of letting the extension calculate an elevation value from the DEM.
  6. The table of borehole intervals must have a field that carries the name or id of the borehole that each interval is associated with (values must exactly match the name or id values in the borehole locations attribute table), a field that carries the depths to the top of each interval, and a similar field of depths to the bottom of each interval.
  7. It may be necessary to make partial copies of the borehole locations layer and the related borehole intervals table that only include the boreholes lying very near, if not completely within, the desired buffered width of the cross section line. The extension tends to commit fatal errors when trying to process large tables.

Once the map and tables are ready, the user selects a line of cross section (the selection does not have to occur within an editing session) and clicks on the tool button. A two-page form is displayed, on which the user selects the appropriate values from a series of picklists or enters information (Figure 6). The user must supply a text string, which will be used as the prefix to the feature class names that will be created. Lastly, the user can choose to have the new feature classes added to a new data frame in the map document. The new feature classes are created in the same format and placed in the same workspace (a geodatabase for geodatabase feature classes or a directory for shapefile feature classes) as the layers on which they are based.

Figure 6. Pages 1 and 2 of the Geologic Cross Section Tool form.

Here are suggestions for managing and editing the cross section layers in the cross section view:

  1. Feature classes generated by the extension are assigned an unknown coordinate system, thus, the user cannot explicitly set a scale until the Map units are set through the data frame properties dialog. Set these to be the same as in the map view (usually feet or meters).
  2. Before creating geology polygons, create a feature class by importing the attribute table schema from the geology polygons feature class being used in the map view, and import the symbology.
  3. Establish topology between the contacts and geology polygons layers (with either a map topology or a geodatabase topology relationship class) and use the relationship to build the polygons from the contacts.
  4. For viewing in layout view, create a custom data frame grid with an origin of 0,0 and with intervals appropriate to the length and vertical exaggeration of the cross section. Unfortunately, you must always divide the Y value by the factor of vertical exaggeration to obtain the correct elevation. I know of no way to force ArcMap to make that calculation for grid labels.
  5. Ultimately, you will probably want to store the cross section layers in the same geodatabase as the map layers. In that case, store them in a feature dataset with an unknown coordinate system.

Figure 7. Nearly final version of interpreted geologic cross section showing subsurface geology and boreholes (10x VE). Borehole intervals have been symbolized by classes defined by groups of unified soil classification system codes.


Get started learning about the fascinating and useful world of geographic information systems (GIS)! In this first course of the specialization GIS, Mapping, and Spatial Analysis, you'll learn about what a GIS is, how to get started with the software yourself, how things we find in the real world can be represented on a map, how we record locations using coordinates, and how we can make a two-dimensional map from a three-dimensional Earth. In the course project, you will create your own GIS data by tracing geographic features from a satellite image for a location and theme of your choice. This course will give you a strong foundation in mapping and GIS that will give you the understanding you need to start working with GIS, and to succeed in the other courses in this specialization.

This course is for anyone who wants to learn about mapping and GIS. You don't have to have any previous experience - just your curiosity! The course includes both practical software training and explanations of the concepts you need to know to make informed decisions as you start your journey to becoming a GIS analyst. You will need a Windows computer with ArcGIS Desktop installed. (software is not provided)


2.11 Web Scraping

We’ve mentioned previously that there is a lot of data on the Internet, which probably comes at no surprise given the vast amount of information on the Internet. Sometimes these data are in a nice CSV format that we can quickly pull from the Internet. Sometimes, the data are spread across a web page, and it’s our job to “scrape” that information from the webpage and get it into a usable format. Knowing first that this is possible within R and second, having some idea of where to start is an important start to beginning to get data from the Internet.

We’ll walk through three R packages in this lesson to help get you started in getting data from the Internet. Let’s transition a little bit to talking about how to pull pieces of data from a website, when the data aren’t (yet!) in the format that we want them.

Say you wanted to start a company but did not know exactly what people you would need. We could go to the websites of a bunch of companies similar to the company you hope to start and pull off all the names and titles of the people working there. You then compare the titles across companies and voila, you’ve got a better idea of who you’ll need at your new company.

You could imagine that while this information may be helpful to have, getting it manually would be a pain. Navigating to each site individually, finding the information, copying and pasting each name. That sounds awful! Thankfully, there’s a way to scrape the web from R directly!

A very helpful package rvest can help us do this. It gets its name from the word “harvest.” The idea here is you’ll use this package to “harvest” information from websites! However, as you may imagine, this is less straightforward than pulling data that are already formatted the way you want them (as we did previously), since we’ll have to do some extra work to get everything in order.

2.11.1 rvest Basics

When rvest is given a webpage (URL) as input, an rvest function reads in the HTML code from the webpage. HTML is the language websites use to display everything you see on the website. Generally, all HTML documents require each webpage to have a similar structure. This structure is specified by using different tags. For example, a header at the top of your webpage would use a specific tag. Website links would use a different tag. These different tags help to specify how the website should appear. The rvest package takes advantage of these tags to help you extract the parts of the webpage you’re most interested in. So let’s see exactly how to do that all of this with an example.

Different tags are used to specify different parts of a website

2.11.2 SelectorGadget

To use rvest , there is a tool that will make your life paljon easier. It’s called SelectorGadget. It’s a “javascript bookmarklet.” What this means for us is that we’ll be able to go to a webpage, turn on SelectorGadget, and help figure out how to appropriately specify what components from the webpage we want to extract using rvest .

To get started using SelectorGadget, you’ll have to enable the Chrome Extension.


Katso video: GIS Tools: ArcMapArcGIS Tool for connecting points