CreatePointCloud Task

This task creates an ENVI LiDAR project that can be visualized using the ENVI 3D Web Viewer. The project can also be used with the ENVI LiDAR viewer and the ENVI LiDAR processing API. Two point cloud datasets cannot be open simultaneously. After running this task, any ENVIPointCloud object references with previously open data will become invalid and should not be used.

Example

The following example takes a single LiDAR dataset and creates the Levels of Detail required for streaming.

; Start the application

e = ENVI(/HEADLESS)

 

; Open a file

file = FILEPATH('DataSample.las', ROOT_DIR=e.ROOT_DIR, $

  SUBDIRECTORY = ['data','lidar'])

 

; Get the task from the catalog of ENVITasks

task = ENVITask('CreatePointCloud')

 

; Define input properties

task.INPUT_URI = [file]

 

; Run the task

task.Execute

 

; Get the output point clouds

outputEnviPointCloud = task.OUTPUT_POINTCLOUD

Syntax

Result = ENVITask('CreatePointCloud')

Input properties (Set, Get): INPUT_URI, LEVELS, SPATIAL_REFERENCE, OUTPUT_URI

Output properties (Get only): OUTPUT_POINTCLOUD

Properties marked as "Set" are those that you can set to specific values. You can also retrieve their current values any time.

Methods

This task inherits the following methods from ENVITask:

AddParameter

Execute

Parameter

ParameterNames

RemoveParameter

Properties

This task inherits the following properties from ENVITask:

COMMUTE_ON_DOWNSAMPLE

COMMUTE_ON_SUBSET

DESCRIPTION

DISPLAY_NAME

NAME

REVISION

TAGS

This task also contains the following properties:

INPUT_URI (required)

Specify an array of point cloud datasets from which to create the project. The array is of the form:

['/data/file1.las', '/data/file2.las']

LEVELS (optional)

Specify an integer with the number of levels of detail to create. If you do not specify LEVELS, the task will automatically calculate the number of levels. Set this property to zero if the project will not be used for streaming with the ENVI 3D Web Viewer.

SPATIAL_REFERENCE (optional)

Specify an optional ENVIPointCloudSpatialRef object with the coordinate system used by the point cloud files being opened. You do not need to set this property if opening .las files that already contain coordinate system information (for example, in the LAS header).

If you do not set this property, the task checks the first point cloud file in the INPUT_URI array for coordinate system information. All of the files are assumed to use the same coordinate system.

If the first file does not contain coordinate system information and you do not specify this property, then the coordinates will be treated as arbitrary (undefined geographic location) with units in meters.

If the first point cloud file does contain coordinate system information and you set this property, the specified coordinate system will override that in the point cloud file.

OUTPUT_URI (required)

Specify a scalar string that is a fully-qualified path of the destination location of the project. If you do not set this property, the output will set to the ENVI output directory.

OUTPUT_POINTCLOUD

This property contains a reference to the ENVIPointCloud object.

Version History

ENVI 5.4.1

Introduced

API Version

4.2

See Also

ENVI::OpenPointCloud, ENVIPointCloud, ENVIPointCloudProductsInfo, ENVIPointCloudQuery, ENVISpatialSubsetPointCloud, ENVIPointCloudSpatialRef, ENVIPointCloudViewer, ENVIPointCloudFilter, ENVIPointCloudMetadata, PointCloudFeatureExtraction Task, ColorPointCloud Task, CreatePointCloudSubProject Task