Class TLcdLASModelDescriptor
- All Implemented Interfaces:
ILcdDataModelDescriptor,ILcdModelDescriptor,Serializable
.las) file.
- It contains various fields available in the
.lasheader. - It contains the
variable-length records. - It implements
ILcdDataModelDescriptorandgetPropertyRangeto see what properties are available in this model.
Data model
Although the elements in the model are not data objects themselves, you can still use the data model to
access properties of individual points when filtering during decoding, or you
can use it to build expressions for use in styling.
The data model has a single type that consists of the properties available in the source file.
Only the properties available in the source file are available in the data type, for example if a file does contain color information,
but does not contain infra-red information, the data type will have a COLOR property, but not an INFRARED property.
You can find the names of all the possible properties as constant fields in TLcdLASModelDescriptor:
COLOR, INTENSITY, CLASSIFICATION, INFRARED, and so on.
You can use getPropertyRange(com.luciad.datamodel.TLcdDataProperty) to get the extent (minimum and maximum value) of a specific property in this specific model.
LASer specification
See also http://www.asprs.org/Committee-General/LASer-LAS-File-Format-Exchange-Activities.html for more details on the LAS specification.
- Since:
- 2014.0
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classDescribes a variable-length record from a.lasfile. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe Classification property; aByte.static final StringThe Classification Flags property; aByte.static final StringThe R; G and B properties; as aColor.static final StringThe Edge of Flight Line property; aBoolean.static final StringAny extra bytes for a point; abyte array.static final StringThe GPS Time property; aDouble.static final StringThe height of the point; in meters above ellipsoid; aFloat.static final StringThe NIR property; anInteger.static final StringThe Intensity property; anInteger.static final StringThe type name of the data source.static final StringThe Number of Returns property; anInteger.static final StringThe Point Source ID property; anInteger.static final StringThe Return Number property; anInteger.static final StringThe Return Point Waveform Location property; aFloat.static final StringThe Scan Angle Rank property; aFloat.static final StringThe Scan Direction Flag property; aBoolean.static final StringThe Scanner Channel property; aByte.static final StringThe User Data property; aByte.static final StringThe Xt property; aFloat.static final StringThe Yt property; aFloat.static final StringThe Zt property; aFloat. -
Method Summary
Modifier and TypeMethodDescriptionReturns the date of creation as specified in the.lasheader, combined from day of year and year.Returns the data model that describes the individual points in this model.Returns the single data type that describes the individual points in the elements of this model.Returns the Generating Software as specified in the.lasheader.Since the elements in the model are notILcdDataObjectthemselves, this method returnsnull.Returns a single data type that describes the individual points in the elements of this model.longReturns the Number Of Point Records as specified in the.lasheader.longReturns the Project ID - GUID data 1 as specified in the.lasheader.intReturns the Project ID - GUID data 2 as specified in the.lasheader.intReturns the Project ID - GUID data 3 as specified in the.lasheader.int[]Returns the Project ID - GUID data 4 as specified in the.lasheader.getPropertyRange(TLcdDataProperty aProperty) Returns the range of values for the given property for this model.intReturns the File Source ID as specified in the.lasheader.Returns the System Identifier as specified in the.lasheader.Returns the variable-length records (including extended) available in the.lasfile.Returns the version of the.lasfile (combined from major and minor for example, "1.3").Methods inherited from class com.luciad.model.TLcdModelDescriptor
getDisplayName, getSourceName, getTypeName, setDisplayName, setSourceName, setTypeName, sourceNameToDisplayNameMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.luciad.model.ILcdModelDescriptor
getDisplayName, getSourceName, getTypeName
-
Field Details
-
LAS_TYPE_NAME
The type name of the data source.- See Also:
-
HEIGHT
The height of the point; in meters above ellipsoid; aFloat.- See Also:
-
INTENSITY
The Intensity property; anInteger.- See Also:
-
RETURN_NUMBER
The Return Number property; anInteger.- See Also:
-
NUMBER_OF_RETURNS
The Number of Returns property; anInteger.- See Also:
-
CLASSIFICATION_FLAGS
The Classification Flags property; aByte.- See Also:
-
SCANNER_CHANNEL
The Scanner Channel property; aByte.- See Also:
-
SCAN_DIRECTION
The Scan Direction Flag property; aBoolean.- See Also:
-
EDGE_OF_FLIGHT_LINE
The Edge of Flight Line property; aBoolean.- See Also:
-
CLASSIFICATION
The Classification property; aByte.- See Also:
-
USER_DATA
The User Data property; aByte.- See Also:
-
SCAN_ANGLE
The Scan Angle Rank property; aFloat.- See Also:
-
POINT_SOURCE_ID
The Point Source ID property; anInteger.- See Also:
-
GPS_TIME
The GPS Time property; aDouble.- See Also:
-
COLOR
The R; G and B properties; as aColor.- See Also:
-
INFRARED
The NIR property; anInteger.- See Also:
-
RETURN_POINT_WAVEFORM_LOCATION
The Return Point Waveform Location property; aFloat.- See Also:
-
XT
The Xt property; aFloat.- See Also:
-
YT
The Yt property; aFloat.- See Also:
-
ZT
The Zt property; aFloat.- See Also:
-
EXTRA_BYTES
Any extra bytes for a point; abyte array.- See Also:
-
-
Method Details
-
getDataModel
Returns the data model that describes the individual points in this model.See
class javadocfor more details on the data model.- Specified by:
getDataModelin interfaceILcdDataModelDescriptor- Overrides:
getDataModelin classALcdLIDARModelDescriptor- Returns:
- the data model that describes the elements of the model
-
getModelElementTypes
Since the elements in the model are notILcdDataObjectthemselves, this method returnsnull.See
class javadocfor more details on the data model.- Specified by:
getModelElementTypesin interfaceILcdDataModelDescriptor- Overrides:
getModelElementTypesin classALcdLIDARModelDescriptor- Returns:
null, as the elements in the model are notILcdDataObjectthemselves.
-
getModelTypes
Returns a single data type that describes the individual points in the elements of this model.See
class javadocfor more details on the data model.- Returns:
- The single data type that describes the individual points in the elements of this model.
-
getDataType
Returns the single data type that describes the individual points in the elements of this model.This is the same data type as in
getModelTypes().See
class javadocfor more details on the data model.- Returns:
- The single data type that describes the individual points in the elements of this model.
-
getPropertyRange
Returns the range of values for the given property for this model. The ranges are based on 10% of the points, randomly chosen. Only returns an interval for properties with numeric values, otherwise returnsnull. Also returnsnullif the property is not available in the data type of this model.- Specified by:
getPropertyRangein classALcdLIDARModelDescriptor- Parameters:
aProperty- the property to get the range for.- Returns:
- The range, or
nullif the property is not available in the file, or if the property does not have a range.
-
getSourceId
public int getSourceId()Returns the File Source ID as specified in the.lasheader.- Returns:
- The source id.
-
getProjectId1
public long getProjectId1()Returns the Project ID - GUID data 1 as specified in the.lasheader.- Returns:
- The project id 1.
-
getProjectId2
public int getProjectId2()Returns the Project ID - GUID data 2 as specified in the.lasheader.- Returns:
- The project id 2.
-
getProjectId3
public int getProjectId3()Returns the Project ID - GUID data 3 as specified in the.lasheader.- Returns:
- The project id 3.
-
getProjectId4
public int[] getProjectId4()Returns the Project ID - GUID data 4 as specified in the.lasheader.- Returns:
- The project id 4.
-
getVersion
Returns the version of the.lasfile (combined from major and minor for example, "1.3").- Returns:
- The version.
-
getSystemIdentifier
Returns the System Identifier as specified in the.lasheader.- Returns:
- The system identifier.
-
getGeneratingSoftware
Returns the Generating Software as specified in the.lasheader.- Returns:
- The generating software.
-
getCreationDate
Returns the date of creation as specified in the.lasheader, combined from day of year and year.- Returns:
- The creation date.
-
getNumberOfPoints
public long getNumberOfPoints()Returns the Number Of Point Records as specified in the.lasheader. Note: the actual amount of points in the model may be different, for example due to filtering orsetting a maximum.- Returns:
- The number of points in the file.
-
getVariableLengthRecords
Returns the variable-length records (including extended) available in the.lasfile.- Returns:
- The variable-length records.
-