创建移动场景包 (数据管理)

描述

从一个或多个场景创建移动场景包 (.mspk),用于整个 ArcGIS 平台。

使用方法

  • 移动场景包可在 ArcGIS Pro 中使用,并由使用 ArcGIS Runtime SDK 构建应用程序的开发人员使用。对于 ArcGIS Runtime SDK,已在版本 100.5 中引入了 .mspk 文件。ArcGIS OnlinePortal for ArcGIS 10.7 及更高版本支持移动场景包文件类型。有关详细信息,请参阅共享移动场景包

  • 可以使用插入选项卡的工程组中的导入地图 导入地图,将移动场景包导入 ArcGIS Pro

  • 在创建移动场景包时,所有场景和数据图层都将投影到通用坐标系。即将使用的坐标系为场景坐标系。如果有多个场景,将使用第一个输入场景坐标系。通过确保所有数据集位于同一坐标系,可以缩短处理时间。当前,ArcGIS Runtime SDK 应用程序仅支持 WGS84 和 Web 墨卡托辅助球体坐标系中的全球场景。

  • 如果场景中包含服务图层、场景图层包(.slpk 文件)或切片包(.tpk 文件),请确保它们的坐标系与场景属性中的场景坐标系相匹配。包含除场景坐标系以外的坐标系的包将无法进入移动场景包。水平 (XY) 坐标系和垂直坐标 (Z) 系必须与场景坐标系相匹配。有关更新场景坐标系的详细步骤,请参阅指定坐标系

  • 如果场景包含引用了网络数据集的网络图层,则会将该网络图层作为交通网络包括在移动场景包中,以便获取路径和行驶方向。网络引用的所有要素类和表均将成为移动场景包的一部分。也可能包括不属于地图的场景。例如,如果地图中仅包含一个网络图层,则包中将包括与此网络相关的街道、交汇点和转弯要素类。有关其他注意事项,请参阅为 ArcGIS Runtime 创作移动场景包

  • 您可以使用交互式编辑工具在场景地面上绘制一个矩形,来定义感兴趣的区域。如果未指定范围,则当前的场景范围将用于定义感兴趣的区域 (AOI) 并仅合并与该范围相交的要素。有关更多详细信息,请参阅感兴趣区域注意事项

  • 移动场景包针对 3D 可视化进行了优化,且多面体要素图层、3D 点要素图层和 LAS 数据集图层将转换为场景图层包以确保快速绘制。有关如何在移动场景包中打包图层的详细信息,请参阅业务图层

  • 下表列出了支持的输入数据,以及输出数据在移动场景包中的转换和复制方式。它还列出了数据是否可以重新投影到场景坐标系。无法重新投影的数据集将无法作为创建移动场景包工具的输入。

    源数据集移动场景包中的数据集支持重新投影数据集

    2D 点、线或面要素图层

    SQLite 要素类

    3D 点要素图层

    场景图层包

    多面体要素图层

    场景图层包

    LAS 数据集图层

    场景图层包

    场景图层包

    场景图层包

    栅格图层

    栅格数据集

    高程源

    切片包或栅格数据集

    是,用于栅格数据集

    切片包

    切片包

    网络图层

    交通网络

    KMZ 或 KML

    KMZ 或 KML

    SQLite 表

    服务图层

    服务图层

    警告:
    如果场景包包含较大数据集或大量数据集,则可能需要大量处理时间来转换数据,以便在移动场景包中使用。

语法

arcpy.management.CreateMobileScenePackage(in_scene, output_file, {in_locator}, {area_of_interest}, {extent}, {clip_features}, {title}, {summary}, {description}, {tags}, {credits}, {use_limitations}, {anonymous_use}, {texture_optimization}, {enable_scene_expiration}, {scene_expiration_type}, {expiration_date}, {expiration_message}, {select_related_rows}, {reference_online_content})
参数说明数据类型
in_scene
[in_scene,...]

将打包到一个 .mspk 文件中的一个或多个局部或全球场景。可以将活动场景和 .mapx 文件作为输入添加。

Map
output_file

输出移动场景包 .mspk 文件。

File
in_locator
[in_locator,...]
(可选)

将包含在移动场景包中的一个或多个定位器 (.loc)。

注:
定位器具有以下限制:
  • 定位器必须通过 ArcGIS 10.0 或更高版本创建。
  • 定位器不能包含未知的坐标系。
  • 定位器或复合定位器中的任何参与定位器不得为地理编码服务,包括 ArcGIS EnterpriseArcGIS Online 中的服务。
  • 定位器的定位器样式配置中不可以包含自定义插件。
Address Locator
area_of_interest
(可选)

定义感兴趣区域的面图层。仅与感兴趣区域相交的要素才会包括在移动场景包中。

Feature Layer
extent
(可选)

指定用于选择或裁剪要素的范围。

  • MAXOF - 将使用所有输入的最大范围。
  • MINOF - 将使用所有输入共有的最小区域。
  • DISPLAY - 该范围与可见显示范围相等。
  • 图层名称 - 将使用指定图层的范围。
  • Extent 对象 - 将使用指定对象的范围。
  • 以空格分隔的坐标字符串 - 将使用指定字符串的范围。坐标以 x-min,y-min,x-max,y-max 的顺序表示。
Extent
clip_features
(可选)

指定是否将输出要素裁剪为给定的感兴趣区域或范围。

  • 已选中 - 要素的几何将裁剪为给定的感兴趣区或范围。
  • 未选中 - 将选中场景中的要素且其几何仍保持不变。这是默认设置。
注:

多面体要素图层、3D 点要素图层、LAS 数据集图层、服务图层、切片包和场景图层包无法进行裁剪,将整个复制到移动场景包。

指定是否将输出要素裁剪为给定的感兴趣区域或范围。

  • CLIP要素的几何将裁剪为给定的感兴趣区或范围。
  • SELECT 选择地图中的要素并保持其几何不变。这是默认设置。
注:

多面体要素图层、3D 点要素图层、LAS 数据集图层、切片包和场景图层包无法进行裁剪,将整个复制到移动场景包。

Boolean
title
(可选)

将标题信息添加到包的属性中。

String
summary
(可选)

将摘要信息添加到包的属性中。

String
description
(可选)

将描述信息添加到包的属性中。

String
tags
(可选)

将标签信息添加到包的属性中。可以添加多个标签,用逗号或分号分隔。

String
credits
(可选)

将制作者名单信息添加到包的属性中。

String
use_limitations
(可选)

将使用限制添加到包的属性中。

String
anonymous_use
(可选)

指定所有人或仅具有 ArcGIS 帐户的人员可以使用移动场景。

  • ANONYMOUS_USE具有包访问权限的所有人均可使用移动场景,无需使用 Esri 授权用户帐户进行登录。
  • STANDARD具有包访问权限的所有人必须使用授权用户帐户进行登录,才能使用移动场景。这是默认设置。
许可:

此可选参数仅适用于 Publisher 扩展模块。

Boolean
texture_optimization
(可选)

指定将要使用的纹理优化。根据使用场景图层包的目标平台对纹理进行优化。此参数仅适用于场景图层包。

警告:

可能需要大量时间来处理包括 ETC2 的优化。要获得最快结果,请使用桌面

  • ALL用于桌面、web 和移动应用程序的所有纹理格式,包括 JPEG、DXT 和 ETC2。
  • DESKTOP包括 JPEG 和 DXT 在内的 Windows、Linux 和 Mac 支持的纹理适用于 Windows 上的 ArcGIS Pro 客户端以及 Windows、Linux 和 Mac 上的 ArcGIS Runtime 桌面客户端。这是默认设置。
  • MOBILE支持 Android 和 iOS 的纹理包括 JPEG 和 ETC2,可用于 ArcGIS Runtime 移动应用程序。
  • NONEJPEG 纹理可用于桌面和 web 平台。
String
enable_scene_expiration
(可选)

指定移动场景包是否超时。

  • ENABLE_SCENE_EXPIRATION已在移动场景包上启用超时。
  • DISABLE_SCENE_EXPIRATION未在移动场景包上启用超时。这是默认设置。
许可:

此可选参数仅适用于 Publisher 扩展模块。

Boolean
scene_expiration_type
(可选)

指定已到期移动场景包的场景访问类型。

  • ALLOW_TO_OPEN将警告包用户此场景已到期,且允许打开场景。这是默认设置。
  • DONOT_ALLOW_TO_OPEN将警告包用户此场景已到期,且不允许打开包。
许可:

此可选参数仅适用于 Publisher 扩展模块。

String
expiration_date
(可选)

移动场景包的到期日期。

许可:

此可选参数仅适用于 Publisher 扩展模块。

Date
expiration_message
(可选)

访问已到期场景时将显示的文本消息。

许可:

此可选参数仅适用于 Publisher 扩展模块。

String
select_related_rows
(可选)

指定是否将指定的范围应用至相关数据源。

  • KEEP_ONLY_RELATED_ROWS仅合并指定范围内与记录对应的相关数据。
  • KEEP_ALL_RELATED_ROWS相关的数据源将全部合并。这是默认设置。
Boolean
reference_online_content
(可选)

指定是否在包中引用服务图层。

  • INCLUDE_SERVICE_LAYERS将在移动包中引用服务图层。
  • EXCLUDE_SERVICE_LAYERS不会在移动包中引用服务图层。这是默认设置。
Boolean

代码示例

CreateMobileScenePackage 示例 1(Python 窗口)

以下脚本演示了如何在 Python 窗口中使用 CreateMobileScenePackage 工具。

import arcpy
arcpy.env.workspace = r'c:\data'
arcpy.management.CreateMobileScenePackage(
    'loma_linda','LomaLindaBuilding.mspk', None, None, 'DEFAULT', 'SELECT', 
    'Loma Linda Proposed Building', 
    'Offline mobile scene package for planning department', None, 'mspk', None, 
    None, 'STANDARD', 'DESKTOP', 'ENABLE_SCENE_EXPIRATION', 'ALLOW_TO_OPEN',
    '12/31/2019 9:00:00 AM', 'This scene is expired. Contact admin@email.com',
    'EXCLUDE_SERVICE_LAYERS')
CreateMobileScenePackage 示例 2(独立脚本)

以下脚本演示了如何在 Python 脚本中使用 CreateMobileScenePackage 工具。

import arcpy
arcpy.env.workspace = r'c:\data'
arcpy.management.CreateMobileScenePackage(
    'Yosemite.mapx','YosemiteOffline.mspk', None, None, 'DEFAULT', 'SELECT', 
    'YosemiteOfflineScene', 
    'Offline mobile scene package for Yosemite National Park', None, 
    'mspk, yosemite, offline', None, None, 'STANDARD', 'DESKTOP', 
    'DISABLE_SCENE_EXPIRATION', 'ALLOW_TO_OPEN')

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 受限
  • Standard: 受限
  • Advanced: 受限

相关主题