當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python ArcGIS OfflineMapAreaManager.create用法及代碼示例


本文簡要介紹 python 語言中 arcgis.mapping.OfflineMapAreaManager.create 的用法。

用法:

create(area, item_properties=None, folder=None, min_scale=None, max_scale=None, layers_to_ignore=None, refresh_schedule='Never', refresh_rates=None, enable_updates=False, ignore_layers=None, tile_services=None, future=False)

返回:

Item 已創建的離線Map區域項目的對象。如果 Future==True,則結果是 PackagingJob 對象。

create 方法為ArcGIS 運行時驅動的應用程序創建離線Map區域項目和包。 create 方法創建兩種不同類型的 Item 對象。它首先為指定範圍或書簽創建Map Area 項目。接下來,它會創建一個或多個與範圍中的每個圖層類型相對應的Map區域包。

注意:

  • 一個範圍或書簽隻能有 1 個Map區域項目。

  • 您需要成為 web Map的所有者或 GIS 的管理員。

Parameter

Description

area

必需的對象。書簽或範圍。指定為:

  • 書簽名稱

    >>> area = 'Bookmark1'
    注意:

    bookmarks 返回書簽列表。

  • 坐標對列表:

    >>> area = [['xmin', 'ymin'], ['xmax', 'ymax']]
  • 字典:

    >>> area = {
                'xmin': <value>,
                'ymin': <value>,
                'xmax': <value>,
                'ymax': <value>,
                'spatialReference' : {'wkid' : <value>}
               }
注意:

如果未指定空間參考,則假定為‘wkid’: 4326。

item_properties

必需的字典。有關鍵和值,請參見下表。

folder

可選字符串。如果您希望在文件夾內創建離線Map區域項目和包,請指定文件夾名稱。

min_scale

可選整數。指定緩存切片和矢量切片圖層的最小比例。當縮小超過此比例時,緩存圖層將不會顯示。

max_scale

可選整數。指定緩存切片和矢量切片圖層的最大比例。當放大超出此比例時,緩存圖層將不會顯示。

layers_to_ignore

創建離線包時要排除的圖層對象的可選列表。您可以通過調用 WebMap 對象的 layers 屬性來獲取 web Map中的圖層列表。

refresh_schedule

可選字符串。允許在給定時間安排刷新。

以下是有效變量:

  • Never - 從不刷新離線包(默認)

  • Daily - 每天刷新

  • Weekly - 每周刷新一次

  • Monthly - 每月刷新一次

refresh_rates

可選字典。此參數允許自定義調度程序。字典接受以下內容:

{
 "hour" : 1
 "minute" = 0
 "nthday" = 3
 "day_of_week" = 0
}
  • 小時 - 0-23 之間的值(整數)

  • 分鍾 0-60 之間的值(整數)

  • nthday - 這僅用於每月。這表示刷新將在每月的‘x’ 日發生。

  • day_of_week - 0-6 之間的值,其中 0 是星期日,6 是星期六。

# Example **Daily**: every day at 10:30 AM UTC

 >>> refresh_rates = {
                      "hour": 10,
                      "minute" : 30
                     }

# Example **Weekly**: every Wednesday at 11:59 PM UTC

 >>> refresh_rates = {
                      "hour" : 23,
                      "minute" : 59,
                      "day_of_week" : 4
                     }

enable_updates

可選布爾值。允許更新圖層。

ignore_layers

可選列表。Map中要忽略的單個圖層列表,使用其服務 URL 指定。該任務默認為所有Map圖層生成包。

>>> ignore_layers = [
                     "https://services.arcgis.com/ERmEceOGq5cHrItq/arcgis/rest/services/SaveTheBaySync/FeatureServer/1",
                     "https://services.arcgis.com/ERmEceOGq5cHrItq/arcgis/rest/services/WildfireSync/FeatureServer/0"
                    ]

tile_services

可選列表。一組 JSON 對象,其中包含需要為其創建切片包(.tpk 或 .vtpk)的其他啟用了導出切片的切片服務。每個磁貼服務都使用其 URL 和所需的詳細信息級別進行指定。

>>> tile_services = [
                     {
                      "url": "https://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Imagery/MapServer",
                      "levels": "17,18,19"
                     }
                    ]

future

可選布爾值。如果為 True,則將返回 future 對象,並且進程不會等待任務完成。默認為False,表示等待結果。

注意:

您的 min_scale 值始終大於您的 max_scale 值。

參數 item_properties 的鍵:值字典選項

Key

Value

description

可選字符串。項目的說明。

title

可選字符串。項目的名稱標簽。

tags

可選字符串。以逗號分隔值或字符串列表形式列出的標簽。用於搜索項目。

snippet

可選字符串。提供項目內容的簡短摘要(最多 250 個字符)。

示例 1:

# USAGE EXAMPLE: Creating offline map areas

wm = WebMap(wm_item)

# create offline areas ignoring a layer and for certain min, max scales for other layers
item_prop = {'title': 'Clear lake hyperspectral field campaign',
            'snippet': 'Offline package for field data collection using spectro-radiometer',
            'tags': ['python api', 'in-situ data', 'field data collection']}

aviris_layer = wm.layers[-1]

north_bed = wm.definition.bookmarks[-1]['name']
wm.offline_areas.create(area=north_bed, item_properties=item_prop,
                      folder='clear_lake', min_scale=9000, max_scale=4500,
                       layers_to_ignore=[aviris_layer])

注意:

此方法以靜默方式執行。要查看信息性狀態消息,請設置詳細環境變量,如下所示:

示例 2:

# USAGE EXAMPLE: setting verbosity

from arcgis import env
env.verbose = True

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 arcgis.mapping.OfflineMapAreaManager.create。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。