API reference¶
SpaceLiDAR._download
SpaceLiDAR.angle
SpaceLiDAR.angle
SpaceLiDAR.angle!
SpaceLiDAR.classify
SpaceLiDAR.download_curl
SpaceLiDAR.gedi_info
SpaceLiDAR.granule_from_file
SpaceLiDAR.granules_from_folder
SpaceLiDAR.in_bbox
SpaceLiDAR.info
SpaceLiDAR.info
SpaceLiDAR.netrc!
SpaceLiDAR.points
SpaceLiDAR.s3!
SpaceLiDAR.shift
SpaceLiDAR.splitline
SpaceLiDAR.track_power
#
SpaceLiDAR._download
— Method.
This is a method because it will segfault if precompiled.
#
SpaceLiDAR.angle
— Function.
Rough approximation of the track angle on a Euclidian lon/lat plot.
#
SpaceLiDAR.angle!
— Method.
Calculatitudee angle of direction in degrees where North is 0° for a DataFrame.
#
SpaceLiDAR.angle
— Method.
angle(longitude::Vector{Number}, latitude::Vector{Number})
Calculate the angle of direction from previous points in degrees where North is 0°. Points are given as longitude
and latitude
pairs in their own vector. The angle for the first point is undefined and set to the second.
Returns a Vector{Number}
of angles
#
SpaceLiDAR.classify
— Function.
Retrieve all points as classified as ground in ATL08.
#
SpaceLiDAR.download_curl
— Method.
Hacked version of Base.download which adds cookies and (optional) netrc parsing.
#
SpaceLiDAR.gedi_info
— Method.
Derive info based on file id.
The id is built up as follows, see section 2.4 in the user guide GEDI02A2019110014613O01991T049050200101.h5 or newer (V2) GEDI02A2019242104318O0404601T023430200302V002.h5
#
SpaceLiDAR.granule_from_file
— Method.
Generate granule from .h5 file.
#
SpaceLiDAR.granules_from_folder
— Method.
Generate granules from folder filled with .h5 files.
#
SpaceLiDAR.in_bbox
— Method.
Filter with bbox.
#
SpaceLiDAR.info
— Method.
Derive info based on file id.
The id is built up as follows, see 1.2.5 in the user guide ATL03[yyyymmdd][hhmmss][ttttccss][vvvrr].h5
#
SpaceLiDAR.info
— Method.
Derive info based on file id.
The id is built up as follows, see 1.2.5 in the user guide ATL03[yyyymmdd][hhmmss][ttttccss][vvvrr].h5
#
SpaceLiDAR.netrc!
— Method.
Writes/updates netrc file for ICESat-2 and GEDI downloads.
#
SpaceLiDAR.points
— Method.
points(g::ICESat2_Granule{:ATL06})
Retrieve the points for a given ATL06 (Land Ice) granule as a list of namedtuples, one for each beam. The names of the tuples are based on the following fields:
Column | Field | Description |
---|---|---|
longitude |
land_ice_segments/longitude |
Longitude of segment center, WGS84, East=+ |
latitude |
land_ice_segments/latitude |
Latitude of segment center, WGS84, North=+ |
height |
land_ice_segments/h_li |
Standard land-ice segment height |
height_error |
land_ice_segments/sigma_geo_h |
Total vertical geolocation error |
datetime |
land_ice_segments/delta_time |
+ ancillary_data/atlas_sdp_gps_epoch + gps_offset |
quality |
land_ice_segments/atl06_quality_summary |
Boolean flag indicating the best-quality subset |
track |
gt1l - gt3r groups |
- |
power |
- |
"strong" or "weak" laser power |
detector_id |
atlas_spot_number attribute |
- |
height_reference |
land_ice_segments/dem/dem_h |
Height of the (best available) DEM |
You can combine the output in a DataFrame
with reduce(vcat, DataFrame.(points(g)))
.
#
SpaceLiDAR.s3!
— Function.
Change default download locatio n to a S3 bucket.
#
SpaceLiDAR.shift
— Method.
shift(longitude, latitude, angle, distance)
Shift longitude
and latitude
with distance
m in direction angle
, where North is 0°. Returns a tuple of the shifted coordinates: (longitude, latitude)
#
SpaceLiDAR.splitline
— Function.
Split a linestring if the next point is further than distance
. Not using Haversine here, as we want to split on meridians and such.
#
SpaceLiDAR.track_power
— Method.
Return whether track is a strong or weak beam. See Section 7.5 The Spacecraft Orientation Parameter of the ATL03 ATDB.