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

描述

从一个或多个场景创建移动场景包 (.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 表

    不支持

    服务图层

    服务图层

    不支持

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

语法

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
(可选)

指定用于选择将要包括在移动场景包中的要素的范围。可使用关键字或通过以 X-Min Y-Min X-Max Y-Max 格式输入坐标的方式指定范围。要使用特定图层的范围,请指定图层名称。默认范围将为所有输入场景的组合范围。

  • MAXOF - 输入的并集
  • MINOF - 输入的交集
  • DISPLAY - 与当前显示的范围相同
  • <图层> - 与指定图层的范围相同

如果指定了 area_of_interest 参数,则会忽略 extent 参数。

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: 受限

相关主题