SCENE C++ API  2.1.0
Functions
Processing

Functions and types related to the processing functionality. More...

Functions

LSResult::Result processScan (LSScan &scan, bool forceProcessing=false)
 Processes the scan with some default processing settings. More...
 
LSResult::Result processScan (LSScan &scan, const ref_ptr< LSProcessSettings > &settings, bool forceProcessing=false)
 Processes the scan with some default processing settings. More...
 
LSResult::Result preprocessObject (LSObject &objectToPreprocess)
 Preprocess an object. More...
 
LSResult::Result createCompensatedPanoramaImage (LSScan &scan, const LSString &outputPath=L".\\", const bool fullColorDetail=false, const bool createLDRImages=false, const bool doNotCreateHDRImage=false, const LSString &format=L"jpg", const uint32_t backgroundColor=0xFFFFFF)
 Creates a panorama image that can be larger than the resolution of the scan. More...
 
LSResult::Result colorizeScan (LSScan &scan, const bool laserIlluminatedHDR=false)
 Colorizes the scan. More...
 

Detailed Description

Functions and types related to the processing functionality.

Function Documentation

◆ processScan() [1/2]

LSResult::Result SCENE_API::processScan ( LSScan scan,
bool  forceProcessing = false 
)

Processes the scan with some default processing settings.

This will colorize the scan and create a scan point cloud.

Parameters
scanThe scan to process.
forceProcessingFlag to force processing even if already processed
Returns
LSResult::Ok Processing was successful. LSResult::InvalidRequest The supplied parameters are wrong or the project needs to be saved first. LSResult::Unauthorized You do not have the API key required to process scans in general or this specific scan type.
Version
SCENE API Version 2.0.5.

◆ processScan() [2/2]

LSResult::Result SCENE_API::processScan ( LSScan scan,
const ref_ptr< LSProcessSettings > &  settings,
bool  forceProcessing = false 
)

Processes the scan with some default processing settings.

This will colorize the scan and create a scan point cloud.

Parameters
scanThe scan to process.
settingsProcessing options
forceProcessingFlag to force processing even if already processed
Returns
LSResult::Ok Processing was successful. LSResult::InvalidRequest The supplied parameters are wrong or the project needs to be saved first. LSResult::Unauthorized You do not have the API key required to process scans in general or this specific scan type.
Version
SCENE API Version 2.0.19.

◆ preprocessObject()

LSResult::Result SCENE_API::preprocessObject ( LSObject objectToPreprocess)

Preprocess an object.

Preprocess is required for some tree objects before they can be properly used. Two examples are Swift Sequences which need trajectory calculation and internal registration before they become usable, and PanoCam scans which first need a calibration to be calculated before colorization can be performed. If any non-Swift Sequence is provided, including the root object, it and all of its children are searched for PanoCam scans and all those found will be preprocessed as such.

Parameters
objectToPreprocessThe object which needs preprocessing.
Returns
LSResult::Ok Preprocessing was successful. LSResult::InvalidRequest The supplied parameters are wrong. E.g. The object type has no associated preprocessing operation. LSResult::Unauthorized You do not have the API key required for preprocessing this object. Different object types might require different API key permissions!
Version
SCENE API Version 2.0.22.

◆ createCompensatedPanoramaImage()

LSResult::Result SCENE_API::createCompensatedPanoramaImage ( LSScan scan,
const LSString outputPath = L".\\",
const bool  fullColorDetail = false,
const bool  createLDRImages = false,
const bool  doNotCreateHDRImage = false,
const LSString format = L"jpg",
const uint32_t  backgroundColor = 0xFFFFFF 
)

Creates a panorama image that can be larger than the resolution of the scan.

The pixels in the panorama image have equal angular distance to each other. Pixel top left pixels equals 0 degrees both vertically to horizontally. Bottom right Pixel equals 360 degrees horizontally and 180 degrees vertically. The area with more than 150 vertical degrees will be empty for FARO laser scans. The resulting image file will be written to the specified output folder. The filename will be {scanname}.{format} (e.g. "scan123.jpg"). Make sure the scan is loaded before calling this method.

Parameters
scanThe scan the image should be created for.
outputPathThe output folder for the generated image file.
fullColorDetailCreate a panorama that uses the full color data independent of the scan's resolution.
createLDRImagesAlso creates a panorama image for each exposure time if the scan has HDR. The filenames will look like scan123_LDR_1.jpg, scan123_LDR_2.jpg, ... Currently this option only works if fullColorDetail is set to true.
doNotCreateHDRImageSkip generation of the tone mapped HDR panorama. This is useful to save time if you are only interested in the LDR images.
formatThe output format as string. Supported formats are "png", "bmp" and "jpg".
backgroundColorThe background color is used to fill areas where there is no scan data. It is a hex color code in RGB order. E.g. 0xFF0000 is red. Alpha channel is not supported.
Version
SCENE API Version 2.1.0.

◆ colorizeScan()

LSResult::Result SCENE_API::colorizeScan ( LSScan scan,
const bool  laserIlluminatedHDR = false 
)

Colorizes the scan.

Colorization is normally done during the processing of a scan. However, this method permits to colorize the scan without having to process it. Only FARO scans are supported.

Parameters
scanThe scan to colorize
laserIlluminatedHDRWill enable colorization using Laser Illuminated HDR if set to true and the scan supports this feature.
Returns
LSResult::Ok if colorization run sucessfuly or if the scan has no pictures to process
Version
SCENE API Version 2.0.20.