public class TLfnPointCloudPreprocessor extends Object implements ILcdStatusSource
To open the directly in a Lightspeed-based client such as Lucy, open the "tileset.json" found in the root of the output directory.
To import the output data into LuciadFusion Studio, add the entire output directory as a "Data Root". Once the data root has been crawled, you should be able to see a new data entry that represents the preprocesed dataset in your "Data" tab. To serve it, create a new Service using this dataset, and set the service type to "OGC 3D Tiles".
Both of these use-cases will make use of the TLcdPointCloudModelDecoder
. This
model decoder can be used to decode the output of this preprocessor.
builder
mechanism.
After creating the preprocessor, you will need to start
it.
The preprocessor has a running
state and allows monitoring its progress
.
The following snippet demonstrates how to create and start a preprocessor:
List
TLcdPointCloudModelDecoder
Modifier and Type | Class and Description |
---|---|
static class |
TLfnPointCloudPreprocessor.Builder
Builder used to create point cloud pre-processors.
|
static class |
TLfnPointCloudPreprocessor.Progress
Instantaneous progress information about the pre-processing process.
|
Modifier and Type | Method and Description |
---|---|
void |
addStatusListener(ILcdStatusListener aStatusListener)
Registers the given listener so it will receive status events from this source.
|
TLfnPointCloudPreprocessor.Progress |
getProgress()
Retrieves instantaneous progress information about the ongoing processing.
|
List<String> |
getSources()
Retrieves the data sources to be preprocessed.
|
boolean |
isRunning()
Returns whether or not the preprocessing is running.
|
static TLfnPointCloudPreprocessor.Builder |
newBuilder()
Creates a new builder with the default values.
|
void |
removeStatusListener(ILcdStatusListener aStatusListener)
Removes the specified listener so it is no longer notified.
|
void |
start()
Starts pre-processing.
|
void |
stop()
Stops pre-processing if it is still ongoing.
|
public static TLfnPointCloudPreprocessor.Builder newBuilder()
public void start() throws IOException, CancellationException
running
.IOException
- if an IO problem occursCancellationException
- if aborted using stop()
IllegalStateException
- if the process was already startedIllegalStateException
- If the sources could not be processed (invalid input directory)stop()
public boolean isRunning()
true
if the preprocessing is running; false
otherwise.public List<String> getSources()
public TLfnPointCloudPreprocessor.Progress getProgress()
null
if not processingpublic void stop()
start()
call
being aborted actually stops.
Calling stop()
while the preprocessor is not running has no effect.
Calling stop() will leave the existing flushed files in the specified output path. It does not clean up this path. It is possible to call start() again on a partially completed output directory, which will skip any previously processed work.
IllegalStateException
- if the point cloud preprocessor was already stopped.public void addStatusListener(ILcdStatusListener aStatusListener)
ILcdStatusSource
Registers the given listener so it will receive status events from this source.
In case you need to register a listener which keeps a reference to an object with a shorter life-time than this status source,
you can use a ALcdWeakStatusListener
instance as status listener.
addStatusListener
in interface ILcdStatusSource
aStatusListener
- The listener to be notified when the status has changed.public void removeStatusListener(ILcdStatusListener aStatusListener)
ILcdStatusSource
removeStatusListener
in interface ILcdStatusSource
aStatusListener
- The listener to remove.