public class TLcdLASModelDescriptor extends ALcdLIDARModelDescriptor
.las
) file.
.las
header.variable-length records
.ILcdDataModelDescriptor
and getPropertyRange
to see what properties are available in this 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.
See also http://www.asprs.org/Committee-General/LASer-LAS-File-Format-Exchange-Activities.html for more details on the LAS specification.
Modifier and Type | Class and Description |
---|---|
static class |
TLcdLASModelDescriptor.VariableLengthRecord
Describes a variable-length record from a
.las file. |
Modifier and Type | Field and Description |
---|---|
static String |
CLASSIFICATION
The Classification property; a
Byte . |
static String |
CLASSIFICATION_FLAGS
The Classification Flags property; a
Byte . |
static String |
COLOR
The R; G and B properties; as a
Color . |
static String |
EDGE_OF_FLIGHT_LINE
The Edge of Flight Line property; a
Boolean . |
static String |
EXTRA_BYTES
Any extra bytes for a point; a
byte array . |
static String |
GPS_TIME
The GPS Time property; a
Double . |
static String |
HEIGHT
The height of the point; in meters above ellipsoid; a
Float . |
static String |
INFRARED
The NIR property; an
Integer . |
static String |
INTENSITY
The Intensity property; an
Integer . |
static String |
LAS_TYPE_NAME
The type name of the data source.
|
static String |
NUMBER_OF_RETURNS
The Number of Returns property; an
Integer . |
static String |
POINT_SOURCE_ID
The Point Source ID property; an
Integer . |
static String |
RETURN_NUMBER
The Return Number property; an
Integer . |
static String |
RETURN_POINT_WAVEFORM_LOCATION
The Return Point Waveform Location property; a
Float . |
static String |
SCAN_ANGLE
The Scan Angle Rank property; a
Float . |
static String |
SCAN_DIRECTION
The Scan Direction Flag property; a
Boolean . |
static String |
SCANNER_CHANNEL
The Scanner Channel property; a
Byte . |
static String |
USER_DATA
The User Data property; a
Byte . |
static String |
XT
The Xt property; a
Float . |
static String |
YT
The Yt property; a
Float . |
static String |
ZT
The Zt property; a
Float . |
Modifier and Type | Method and Description |
---|---|
Date |
getCreationDate()
Returns the date of creation as specified in the
.las header, combined from day of year and year. |
TLcdDataModel |
getDataModel()
Returns the data model that describes the individual points in this model.
|
TLcdDataType |
getDataType()
Returns the single data type that describes the individual points in the elements of this model.
|
String |
getGeneratingSoftware()
Returns the Generating Software as specified in the
.las header. |
Set<TLcdDataType> |
getModelElementTypes()
Since the elements in the model are not
ILcdDataObject themselves, this method returns null . |
Set<TLcdDataType> |
getModelTypes()
Returns a single data type that describes the individual points in the elements of this model.
|
long |
getNumberOfPoints()
Returns the Number Of Point Records as specified in the
.las header. |
long |
getProjectId1()
Returns the Project ID - GUID data 1 as specified in the
.las header. |
int |
getProjectId2()
Returns the Project ID - GUID data 2 as specified in the
.las header. |
int |
getProjectId3()
Returns the Project ID - GUID data 3 as specified in the
.las header. |
int[] |
getProjectId4()
Returns the Project ID - GUID data 4 as specified in the
.las header. |
ILcdInterval |
getPropertyRange(TLcdDataProperty aProperty)
Returns the range of values for the given property for this model.
|
int |
getSourceId()
Returns the File Source ID as specified in the
.las header. |
String |
getSystemIdentifier()
Returns the System Identifier as specified in the
.las header. |
Collection<TLcdLASModelDescriptor.VariableLengthRecord> |
getVariableLengthRecords()
Returns the variable-length records (including extended) available in the
.las file. |
String |
getVersion()
Returns the version of the
.las file (combined from major and minor for example, "1.3"). |
getDisplayName, getSourceName, getTypeName, setDisplayName, setSourceName, setTypeName, sourceNameToDisplayName
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getDisplayName, getSourceName, getTypeName
public static final String LAS_TYPE_NAME
public static final String HEIGHT
Float
.public static final String INTENSITY
Integer
.public static final String RETURN_NUMBER
Integer
.public static final String NUMBER_OF_RETURNS
Integer
.public static final String CLASSIFICATION_FLAGS
Byte
.public static final String SCANNER_CHANNEL
Byte
.public static final String SCAN_DIRECTION
Boolean
.public static final String EDGE_OF_FLIGHT_LINE
Boolean
.public static final String CLASSIFICATION
Byte
.public static final String USER_DATA
Byte
.public static final String SCAN_ANGLE
Float
.public static final String POINT_SOURCE_ID
Integer
.public static final String GPS_TIME
Double
.public static final String COLOR
Color
.public static final String INFRARED
Integer
.public static final String RETURN_POINT_WAVEFORM_LOCATION
Float
.public static final String XT
Float
.public static final String YT
Float
.public static final String ZT
Float
.public static final String EXTRA_BYTES
byte array
.public TLcdDataModel getDataModel()
See class javadoc
for more details on the data model.
getDataModel
in interface ILcdDataModelDescriptor
getDataModel
in class ALcdLIDARModelDescriptor
public Set<TLcdDataType> getModelElementTypes()
ILcdDataObject
themselves, this method returns null
.
See class javadoc
for more details on the data model.
getModelElementTypes
in interface ILcdDataModelDescriptor
getModelElementTypes
in class ALcdLIDARModelDescriptor
null
, as the elements in the model are not ILcdDataObject
themselves.public Set<TLcdDataType> getModelTypes()
See class javadoc
for more details on the data model.
public TLcdDataType getDataType()
This is the same data type as in getModelTypes()
.
See class javadoc
for more details on the data model.
public ILcdInterval getPropertyRange(TLcdDataProperty aProperty)
null
.
Also returns null
if the property is not available in the data type of this model.getPropertyRange
in class ALcdLIDARModelDescriptor
aProperty
- the property to get the range for.null
if the property is not available in the file, or if the property does not have a range.public int getSourceId()
.las
header.public long getProjectId1()
.las
header.public int getProjectId2()
.las
header.public int getProjectId3()
.las
header.public int[] getProjectId4()
.las
header.public String getVersion()
.las
file (combined from major and minor for example, "1.3").public String getSystemIdentifier()
.las
header.public String getGeneratingSoftware()
.las
header.public Date getCreationDate()
.las
header, combined from day of year and year.public long getNumberOfPoints()
.las
header.
Note: the actual amount of points in the model may be different, for example due to filtering or setting a maximum
.public Collection<TLcdLASModelDescriptor.VariableLengthRecord> getVariableLengthRecords()
.las
file.