Mapdocument - segítség, arcgis az asztalhoz

Rövid információk

megbeszélés

A MapDocument objektum az automatizáló térképszkript által hivatkozott első objektum egyikének, hiszen ez a szükséges paraméter sok arcpy.mapping függvény számára. A MapDocument objektum segítségével végül hozzáférhet a szinte minden más objektumhoz a térképdokumentumon belül (például adatkeretekhez, rétegekhez, oldalelrendezési elemekhez). A MapDocument objektum hozzáférést biztosít a térkép dokumentuma legtöbb tulajdonságához a Map Document Properties párbeszédpanelen az ArcMap-ban (File> Map Document Properties). Ez az objektum a térképdokumentumok tárolására szolgáló módszereket és módszereket is tartalmaz, amelyek az ArcMap Fájl menüjében találhatók.

A második módszer a CURRENT kulcsszó használata a MapDocument funkció bemeneti paramétereként. Ez a módszer csak az ArcMap alkalmazásban működik, mert a MapDocument objektum az ArcMap alkalmazásba betöltött térképdokumentumra vonatkozik. A CURRENT használata nagyon hasznos a gyors tesztelés és a szkriptek és parancsszintaktika képességeinek vizsgálata Python-ablakban. Megkezdheti a szintaxis tanulmányozását a Python ablakban, majd beillesztheti ezeket a kódsorokat a lemezen tárolt parancsfájlokba.

A CURRENT kulcsszóval rendelkező parancsfájl-eszközök. az ArcMap-ban kell futtatni (a felhasználói menüből vagy a Katalógus ablakból). A CURRENT programot használó parancsfájl-eszközök. nem fog megfelelően működni, amikor az ArcCatalog alkalmazásból indul. Ugyanezen okból, ha az eszköz testreszabott, és a CURRENT linkre mutat. Hiba léphet fel, ha megpróbálja módosítani az ArcCatalog szkriptjének szkriptjét. Ügyeljen arra, hogy módosítsa az ellenőrző kódot az ArcMap katalógus ablakban.

A CURRENT kulcsszó használatához a szkript eszközben le kell tiltania a háttérfeldolgozást. A háttérfeldolgozással minden szkript végrehajtásra kerül, mintha az autonóm szkriptek kívül esnének az ArcGIS alkalmazáson, így a CURRENT nem fog működni a háttérfeldolgozás bekapcsolásával. Egy új lehetőség áll rendelkezésre a szkript eszközön, Mindig futtassa a háttérben (Mindig fut előtérben). amely biztosítja, hogy az eszköz mindig aktív üzemmódban működjön, még akkor is, ha a háttérfeldolgozás engedélyezve van.

Ha a szkriptírás segítségével egy térképdokumentum néhány elemének megjelenítését módosíthatja, ha CURRENT térképdokumentumot használ (például a réteg neve, adatkeretének mértéke stb.), Akkor a térkép nem frissül automatikusan, ha minden egyes kódsor végrehajtásra kerül. A térképdokumentum frissítéséhez használja a RefreshActiveView funkciót. vagy a RefreshTOC funkciót. Ezek a funkciók frissítik a térkép vagy oldal elrendezésének megjelenítését, illetve a tartalomjegyzéket. A frissítési funkciók csak akkor szükségesek, ha az alkalmazás frissítésre szorul. Az arcpy.mapping exportálás, mentés és nyomtatás funkciók generálják a várhatóan frissített eredményeket a funkciók használata nélkül.

A térképdokumentum vagy rétegfájl egyes rétegei jelszóvédelemmel rendelkezhetnek, mivel a felhasználónév és a jelszó nem tárolódnak együtt a rétegfájllal vagy a térképdokumentummal. Az ilyen rétegeket tartalmazó térképdokumentumok megadásakor meg kell adnia a jelszót. Az arcpy.mapping szkript környezetben alapértelmezés szerint ezek a párbeszédpanelek nem jelennek meg, de ez azt jelenti, hogy a rétegek sérült adatforrásként fognak kezelni. Más szavakkal, a védett rétegek nem jelennek meg a kimeneti adatokban. Ha ezeket a rétegeket helyesen szeretné megjeleníteni, akkor több lehetőséget is használhat. Először mentse el felhasználónevét és jelszavát a réteggel együtt. Ezután a CreateArcSDEConnectionFile geoprocessing funkció létrehozza a memóriában lévő kapcsolatot. Ha ezt a parancsot használja, mielőtt megnyitná a térképdokumentumot (.mxd) a MapDocument funkcióval vagy egy rétegfájllal a Layer használatával. az SDE rétegek megfelelően jelennek meg. Jelenleg nincs más módja a biztonságos webszolgáltatásoknak.

A MapDocument objektumra hivatkozó változó tartalmazza a térképi dokumentumfájl zárolását. Javasoljuk, hogy törölje a hivatkozást a MapDocument objektumra a Python del paranccsal a parancs végén vagy a Python try / except utasításban.

Az adatforrások térképdokumentumban történő megváltoztatása általános követelmény. Két lehetőség van a MapDocument objektumra. amelyek segítenek ennek elérésében. A findAndReplaceWorkspacePaths módszer egy réteg vagy táblázat munkaterületének egy vagy több részének helyére vált. A replaceWorkspaces módszer lehetővé teszi, hogy ne csak az elérési utat, hanem a munkaterület típusát is megváltoztassa. Részletesebb leírás, paraméterinformációk, parancsfájlok és mintakódok tekintetében olvassa el az adatforrás frissítését és rögzítését az arcpy.mapping modul segítségével.

Egy DataFrame objektumot ad vissza. amely a térképi dokumentumadatok aktuálisan aktív keretét tartalmazza (.mxd). Az aktívDataFrame tulajdonság egy megfelelő adatkeretet ad vissza, még akkor is, ha a térképdokumentum elrendezési módban van. Ha aktív adatkeretet szeretne beállítani, használja az aktív nézet tulajdonságát.

(olvasás és írás)

Lehetővé teszi a térképdokumentum aktív formájának telepítését vagy lekérését - mind az adattípus, mind az oldalelrendezést. A tulajdonság egy olyan karakterlánccal működik, amely tartalmazza az aktív adatkeret nevét vagy a PAGE_LAYOUT kódszót.

Ha az aktív nézet tulajdonság PAGE_LAYOUT, és a térképdokumentum mentésre kerül, akkor a térképdokumentum legközelebb megnyílik a link módban. Ha az adatkeret neve az aktív nézethez van állítva, és a térképdokumentum mentésre kerül, akkor a térképdokumentum legközelebb megjelenik az adatnézeti módban, és az adott adatkeret aktív lesz.

(olvasás és írás)

A munkaterület vagy a kapcsolódási fájl kívánt elérési útját tartalmazó karakterlánc. Ha üres karakterlánc van elhagyva, akkor minden munkaterület útvonalat kicserélnek, és az új_workspace_path paraméter a validált paraméter értékétől függ.

Kulcsszó, amely a régi adatok munkaterületének típusát jelöli. Ha üres karakterláncot ad meg, akkor több munkaterület átirányítható egy munkaterületre.

  • ACCESS_WORKSPACE - Személyes földrajzi adatbázis vagy Hozzáférési munkaterület
  • ARCINFO_WORKSPACE - Lefedett munkaterület ArcInfo
  • CAD_WORKSPACE - A CAD fájl munkaterülete
  • EXCEL_WORKSPACE - Az Excel fájl operációs területe
  • FILEGDB_WORKSPACE - A geodatbázis fájlrendszer munkaterülete
  • Nincs tömörítés (NONE) - A paraméter kihagyása
  • OLEDB_WORKSPACE -Operatív adatbázis-terület OLE
  • PCCOVERAGE_WORKSPACE -Munkaterület PC PCC / INFO
  • RASTER_WORKSPACE - A raszter munkaterülete
  • SDE_WORKSPACE-SDE geodatbázis munkaterület
  • SHAPEFILE_WORKSPACE - A shapefájl munkaterülete
  • TEXT_WORKSPACE - Munka szövegfájl terület
  • TIN_WORKSPACE -TIN munkaterület
  • VPF_WORKSPACE - VPF operációs terület

Olyan karakterlánc, amely egy új munkaterület útvonalat vagy kapcsolódási fájlt jelent.

A régi stílustípus helyébe lépő munkaterület típusát jelző karakterlánc kulcsszava.

  • ACCESS_WORKSPACE - Személyes földrajzi adatbázis vagy Hozzáférési munkaterület
  • ARCINFO_WORKSPACE - Lefedett munkaterület ArcInfo
  • CAD_WORKSPACE - A CAD fájl munkaterülete
  • EXCEL_WORKSPACE - Az Excel fájl operációs területe
  • FILEGDB_WORKSPACE - A geodatbázis fájlrendszer munkaterülete
  • OLEDB_WORKSPACE -Operatív adatbázis-terület OLE
  • PCCOVERAGE_WORKSPACE -Munkaterület PC PCC / INFO
  • RASTER_WORKSPACE - A raszter munkaterülete
  • SDE_WORKSPACE-SDE geodatbázis munkaterület
  • SHAPEFILE_WORKSPACE - A shapefájl munkaterülete
  • TEXT_WORKSPACE - Munka szövegfájl terület
  • TIN_WORKSPACE -TIN munkaterület
  • VPF_WORKSPACE - VPF operációs terület

Ha True értékre van állítva. A munkaterület csak akkor frissül, ha az új_workspace_útút értéke érvényes munkaterület. Ha az érték nem érvényes, a munkaterületet nem cseréli le. Ha False-ra van állítva. A módszer az összes munkaterületet új_workspace_pathként állítja be, függetlenül a mérkőzéseitől. Ebben az esetben, ha nincs találat, az adatforrások sérültek.

(Az alapértelmezett érték True)

Részletesebb leírás, paraméterinformációk, parancsfájlok és mintakódok tekintetében olvassa el az adatforrás frissítését és rögzítését az arcpy.mapping modul segítségével.

  • 10.3-Verzió 10.3
  • 10.1-Verzió 10.1 / 10.2
  • 10.0-verzió 10.0
  • 9.3-Verzió 9.3
  • 9.2-Verzió 9.2
  • 9.0-verzió 9.0 / 9.1
  • 8.3-verzió 8.3

(Az alapértelmezett érték nincs)

Mintakód

MapDocument, 1. példa
MapDocument, 2. példa

A következő parancsfájl bemutatja, hogyan használhatja a CURRENT kulcsszót a Python ablakban. Ebben a példában frissítjük az első adatkeret és a tartalomtábla nevét, hogy a változások láthatók legyenek az alkalmazásban. Adja meg a következő kódot a Python ablakban az új ArcMap dokumentumban.

Interaktív ablakba illesztve így néz ki. A zárolási kód bal oldalán levő három pont azt jelzi, hogy a vonalak egyetlen kódblokkot képviselnek, és mindegyik együtt fut. A sorok végrehajtásához nyomja meg az Enter billentyűt.

MapDocument, 3. példa

Egy másik egyszerű szkriptet láthat, amely bemutatja a CURRENT kulcsszó használatát a Python ablakban. Az egyes rétegek neve megjelenik a Python ablakban. Ciklusok is megengedettek, feltéve, hogy megtartja a megfelelő profilt. Adja meg a következő kódot a Python ablakban, mint az előző példában.

Interaktív ablakba illesztve így néz ki. Nyomja meg ismét az Enter billentyűt a sorok végrehajtásához.

MapDocument, példa 4

A következő parancsfájl lehetővé teszi a védett rétegek megfelelő megjelenítését a memóriában lévő SDE-kapcsolat létrehozása előtt, mielőtt egy olyan térképdokumentumot nyit meg, amelyhez jelszó szükséges. Ez a parancsfájl egyszerűen meghatározza a kapcsolati adatokat, és exportálja a térképdokumentumot PDF fájlba. Javasoljuk, hogy távolítsa el ezt a hivatkozást a memóriából a szkript bezárása előtt.