com.esri.arcgis.geodatabaseextensions
Class LasHeaderInfo

java.lang.Object
  extended by com.esri.arcgis.geodatabaseextensions.LasHeaderInfo
All Implemented Interfaces:
ILasHeaderInfo, com.esri.arcgis.interop.RemoteObjRef, Serializable

public class LasHeaderInfo
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, ILasHeaderInfo

Esri LAS header info object.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

See Also:
Serialized Form

Constructor Summary
LasHeaderInfo(Object obj)
          Construct a LasHeaderInfo using a reference to such an object returned from ArcGIS Engine or Server.
 
Method Summary
 boolean equals(Object o)
          Compare this object with another
 IEnvelope getExtent()
          The XYZ extent of points in the LAS file.
 int getFileSourceID()
          The LAS file's source ID.
 int getFlightDateJulian()
          The flight date based on the Julian calendar.
 String getGeneratingSoftware()
          The software used to create the LAS file.
 double getNumberOfPointRecords()
          The number of points in the LAS file.
 double getNumberOfPointsByReturn(int returnNumber)
          The number of points in the LAS file based on the specified LiDAR return number.
 double getNumberOfVariableLengthRecords()
          The number of variable length records in the LAS file.
 void getOffsets(double[] pOffsetX, double[] pOffsetY, double[] pOffsetZ)
          The coordinate offsets.
 int getPointDataFormat()
          The record format for points in the LAS file
 IUID getProjectID()
          The LAS file's project ID.
 void getScaleFactors(double[] pFactorX, double[] pFactorY, double[] pFactorZ)
          The coordinate scale factors.
 ISpatialReference getSpatialReference()
          The spatial reference of the LAS file.
 String getSystemID()
          The hardware system used to collect the LiDAR data in the LAS file.
 void getVariableLengthRecords(IStringArray[] ppUserIDs, ILongArray[] recordIDs, IDoubleArray[] ppRecordLengths, IStringArray[] ppDescriptions, boolean[] pbOverLimit)
          The variable length record info.
 void getVersion(int[] pMajor, int[] pMinor)
          The version of the LAS file.
 int getYear()
          The year the data in the LAS file was collected.
 int hashCode()
          the hashcode for this object
 boolean isHasGpsTime()
          Indicates GPS time is available.
 boolean isHasRGB()
          Indicates if RGB is availabe.
 boolean isStandardGpsTime()
          Indicates if the GPS time is standard GPS Time.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

LasHeaderInfo

public LasHeaderInfo(Object obj)
              throws IOException
Construct a LasHeaderInfo using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to LasHeaderInfo.
Casting to this class from the return value of a method will not work, as this class represents an abstract class in ArcObjects.
*
LasHeaderInfo o = (LasHeaderInfo)obj; // will not work

LasHeaderInfo o = new LasHeaderInfo(obj); // Use this constructor instead
* @param obj an object returned from ArcGIS Engine or Server

Throws:
IOException - if there are interop problems LasHeaderInfo theLasHeaderInfo = (LasHeaderInfo) obj;
Method Detail

equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

getVersion

public void getVersion(int[] pMajor,
                       int[] pMinor)
                throws IOException,
                       AutomationException
The version of the LAS file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getVersion in interface ILasHeaderInfo
Parameters:
pMajor - The pMajor (out: use single element array)
pMinor - The pMinor (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPointDataFormat

public int getPointDataFormat()
                       throws IOException,
                              AutomationException
The record format for points in the LAS file

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getPointDataFormat in interface ILasHeaderInfo
Returns:
The pFormat
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSystemID

public String getSystemID()
                   throws IOException,
                          AutomationException
The hardware system used to collect the LiDAR data in the LAS file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getSystemID in interface ILasHeaderInfo
Returns:
The pID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getGeneratingSoftware

public String getGeneratingSoftware()
                             throws IOException,
                                    AutomationException
The software used to create the LAS file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getGeneratingSoftware in interface ILasHeaderInfo
Returns:
The pName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFlightDateJulian

public int getFlightDateJulian()
                        throws IOException,
                               AutomationException
The flight date based on the Julian calendar.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getFlightDateJulian in interface ILasHeaderInfo
Returns:
The pDate
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getYear

public int getYear()
            throws IOException,
                   AutomationException
The year the data in the LAS file was collected.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getYear in interface ILasHeaderInfo
Returns:
The pYear
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNumberOfPointRecords

public double getNumberOfPointRecords()
                               throws IOException,
                                      AutomationException
The number of points in the LAS file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getNumberOfPointRecords in interface ILasHeaderInfo
Returns:
The pcRecords
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNumberOfPointsByReturn

public double getNumberOfPointsByReturn(int returnNumber)
                                 throws IOException,
                                        AutomationException
The number of points in the LAS file based on the specified LiDAR return number.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getNumberOfPointsByReturn in interface ILasHeaderInfo
Parameters:
returnNumber - The returnNumber (in)
Returns:
The pcPoints
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getProjectID

public IUID getProjectID()
                  throws IOException,
                         AutomationException
The LAS file's project ID.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getProjectID in interface ILasHeaderInfo
Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFileSourceID

public int getFileSourceID()
                    throws IOException,
                           AutomationException
The LAS file's source ID.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getFileSourceID in interface ILasHeaderInfo
Returns:
The pID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isHasRGB

public boolean isHasRGB()
                 throws IOException,
                        AutomationException
Indicates if RGB is availabe.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
isHasRGB in interface ILasHeaderInfo
Returns:
The pbHasRGB
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isHasGpsTime

public boolean isHasGpsTime()
                     throws IOException,
                            AutomationException
Indicates GPS time is available.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
isHasGpsTime in interface ILasHeaderInfo
Returns:
The pbHasGpsTime
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isStandardGpsTime

public boolean isStandardGpsTime()
                          throws IOException,
                                 AutomationException
Indicates if the GPS time is standard GPS Time.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
isStandardGpsTime in interface ILasHeaderInfo
Returns:
The pbIsAStandard
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExtent

public IEnvelope getExtent()
                    throws IOException,
                           AutomationException
The XYZ extent of points in the LAS file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getExtent in interface ILasHeaderInfo
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSpatialReference

public ISpatialReference getSpatialReference()
                                      throws IOException,
                                             AutomationException
The spatial reference of the LAS file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getSpatialReference in interface ILasHeaderInfo
Returns:
A reference to a com.esri.arcgis.geometry.ISpatialReference
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getOffsets

public void getOffsets(double[] pOffsetX,
                       double[] pOffsetY,
                       double[] pOffsetZ)
                throws IOException,
                       AutomationException
The coordinate offsets.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getOffsets in interface ILasHeaderInfo
Parameters:
pOffsetX - The pOffsetX (out: use single element array)
pOffsetY - The pOffsetY (out: use single element array)
pOffsetZ - The pOffsetZ (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getScaleFactors

public void getScaleFactors(double[] pFactorX,
                            double[] pFactorY,
                            double[] pFactorZ)
                     throws IOException,
                            AutomationException
The coordinate scale factors.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getScaleFactors in interface ILasHeaderInfo
Parameters:
pFactorX - The pFactorX (out: use single element array)
pFactorY - The pFactorY (out: use single element array)
pFactorZ - The pFactorZ (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNumberOfVariableLengthRecords

public double getNumberOfVariableLengthRecords()
                                        throws IOException,
                                               AutomationException
The number of variable length records in the LAS file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getNumberOfVariableLengthRecords in interface ILasHeaderInfo
Returns:
The pcRecords
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVariableLengthRecords

public void getVariableLengthRecords(IStringArray[] ppUserIDs,
                                     ILongArray[] recordIDs,
                                     IDoubleArray[] ppRecordLengths,
                                     IStringArray[] ppDescriptions,
                                     boolean[] pbOverLimit)
                              throws IOException,
                                     AutomationException
The variable length record info.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getVariableLengthRecords in interface ILasHeaderInfo
Parameters:
ppUserIDs - A reference to a com.esri.arcgis.system.IStringArray (out: use single element array)
recordIDs - A reference to a com.esri.arcgis.system.ILongArray (out: use single element array)
ppRecordLengths - A reference to a com.esri.arcgis.system.IDoubleArray (out: use single element array)
ppDescriptions - A reference to a com.esri.arcgis.system.IStringArray (out: use single element array)
pbOverLimit - The pbOverLimit (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.