Skip To Content

Create Scene Layer Package

Summary

Creates a scene layer package (.slpk file) from 3D points, multipatch features, or LAS data.

Usage

  • The output coordinate system should match the spatial reference of the web scene in which it will be displayed. If the intended display environment will be a global web scene view, the output coordinate system must use GCS WGS84.

  • Note the following considerations for how z-coordinates are defined in the 3D data being processed:

    • If the output scene layer package will have x,y coordinates in GCS WGS 84, the z-coordinate system can be defined using any ellipsoidal datum or EGM96 or EGM2008. If the z-coordinate system is undefined, the vertical units will be in meters.
    • If the output scene layer package will store x,y values in projected coordinates and the z-coordinate system is not defined, the vertical units will be the same as the x,y coordinates. For 3D features with undefined z-units that differ from the x,y units, consider using either the Adjust 3D Z tool to convert z-values to a matching linear unit or the Define Projection tool to define the correct z-datum.
  • The elevation of multipatch layers must be defined with absolute heights, whereas point layers can be on the ground or offset from the ground.

  • When using a feature layer as input, only the fields designated as visible in the layer properties will be preserved in the scene layer package. If certain fields are not needed in the resulting scene layer, consider hiding the unwanted columns.

  • All LAS, ZLAS, or LAZ files being processed must have the same spatial reference. If multiple coordinate systems are used by the desired collection of LAS or ZLAS files, consider using the Extract LAS tool to reproject the data to a common spatial reference.

  • A LAS, ZLAS, or LAZ file can have its spatial reference defined in its header or by a PRJ file with the same base name that is placed in the same location. The PRJ file will override the information in the header and can be used to rectify missing or invalid spatial reference information. If all of the LAS, ZLAS, or LAZ files being processed have unknown coordinates but use the same spatial reference, only one file will need to have a PRJ defined for the tool to process the collection.

    • If the LAS, ZLAS or LAZ files being processed have missing or incorrect spatial reference information, a PRJ file with the same name can be placed in the same location as the file to override the information in the header. For LAS and ZLAS, a PRJ file can be generated with the Create LAS Dataset tool.
    • A LAZ file with missing coordinate system information can define one through the Input Coordinate System parameter.
  • The output .slpk file will draw LAS data with undefined or unsupported renderer information with the stretch renderer using elevation values.

  • A scene layer package with a file size of less than 1 GB can be uploaded directly in a browser to ArcGIS Online or Portal for ArcGIS. If it is larger than 1 GB, use the Share Package tool to upload it to ArcGIS Online or Portal for ArcGIS 10.3.1 or later.

Syntax

CreateSceneLayerPackage_management (in_layer, out_slpk, {attributes}, {spatial_reference}, {point_size_m}, {xy_max_error_m}, {z_max_error_m}, {transform_method}, {in_coordinate_system}, {scene_layer_version})
ParameterExplanationData Type
in_layer

The 3D points, multipatch feature layers, or LAS data (LAS, ZLAS, or LAZ) that will be used to create a scene layer package. LAS data can also be specified by selecting the parent folder that contains the desired files.

Layer File; Feature Layer; File; Folder; LAS Dataset Layer
out_slpk

The output scene layer package (.slpk file).

File
attributes
[attributes,...]
(Optional)

The source data attributes to be included in the scene layer package. These values will be accessible when the content is consumed in other viewers. Select attributes are required for the desired rendering and filtering option (for example, intensity, returns, class codes, RGB). To reduce storage, unneeded attributes should be excluded.

  • INTENSITY The return strength of the laser pulse for each lidar point.
  • RGBRGB imagery information collected for each lidar point.
  • FLAGSClassification and scan direction flags.
  • CLASS_CODEClassification code values.
  • RETURNSDiscrete return number from the lidar pulse.
  • USER_DATAA customizable attribute that can be any number in the range of 0 to 255.
  • POINT_SRC_IDFor aerial lidar, this value typically identifies the flight path that collected a given lidar point.
  • GPS_TIME The GPS time stamp at which the laser point was emitted from the aircraft. The time is in GPS seconds of the week.
  • SCAN_ANGLEThe angular direction of the laser scanner for a given lidar point. This value can range between -90 to 90.
  • NEAR_INFRAREDNear infrared records collected for each lidar point.
String
spatial_reference
(Optional)

The spatial reference of the output scene layer package can be any projected coordinate system or GCS_WGS_1984. If a z-datum is defined, the linear unit must match that of the horizontal coordinate system. If the horizontal coordinate system is expressed in geographic coordinates, the z-datum must use meters. GCS_WGS_1984 is the default coordinate system. The spatial reference can be specified by the following:

  • Specifying the path to a .prj file
  • Referencing a geodataset with the desired spatial reference
  • Using an arcpy.SpatialReference object

Spatial Reference
point_size_m
(Optional)

For airborne lidar data, the default of 0 or a value close to the average point spacing is usually best. For terrestrial lidar data, the point size should match the desired point spacing for the areas of interest. The default of 0 will automatically determine the best value for the input dataset.

Double
xy_max_error_m
(Optional)

The maximum x,y error tolerated. A higher tolerance will result in better data compression and more efficient data transfer. The default is 0.1.

Double
z_max_error_m
(Optional)

The maximum z-error tolerated. A higher tolerance will result in better data compression and more efficient data transfer. The default is 0.1.

Double
transform_method
[transform_method,...]
(Optional)

The datum transformation method that will be used when the input layer's spatial reference uses a datum that differs from the output coordinate system. All transformations are bidirectional, regardless of the direction implied by its name. For example, NAD_1927_to_WGS_1984_3 will work correctly even if the datum conversion is from WGS 1984 to NAD 1927.

String
in_coordinate_system
(Optional)

The coordinate system of the input LAZ files. This parameter is only used for LAZ files that do not contain spatial reference information in their header or have a PRJ file.

Coordinate System
scene_layer_version
(Optional)

The Indexed 3D Scene Layer (I3S) version of the resulting point cloud scene layer package. Specifying a version provides support for backward compatibility and allows scene layer packages to be shared with earlier versions of ArcGIS.

  • 1.XSupported in all ArcGIS clients. This is the default.
  • 2.XSupported in ArcGIS Pro 2.1.2 or later and can be published to ArcGIS Online and ArcGIS Enterprise 10.6.1 or later.
String

Code sample

CreateSceneLayerPackage example (Python window)

The following Python script demonstrates how to use the CreateSceneLayerPackage tool from the Python window.

import arcpy
arcpy.env.workspace = 'c:/gis_data'
arcpy.management.CreateSceneLayerPackage("Milan.lyrx", "Milan.slpk", 
                                         ["INTENSITY", "RGB", "CLASS_CODE", "FLAGS", "RETURNS"], 
                                         arcpy.SpatialReference(4326), 0, 0.1, 0.1, 
                                         ['ITRF_2000_To_WGS_1984 + WGS_1984_To_WGS_1984_EGM2008_2.5x2.5_Height'], 
                                         arcpy.SpatialReference(104124), '2.X')

Environments

Licensing information

  • ArcGIS Desktop Basic: Yes
  • ArcGIS Desktop Standard: Yes
  • ArcGIS Desktop Advanced: Yes

Related topics