Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
Changes of Note
--visualizecapability of the
pdalcommand line application has been removed.
writer.derivativehas been removed. Use gdaldem for faster and more featureful equivalent functionality.
- GeoTIFF and Proj.4 are now required dependencies.
writers.p2ghas been removed. It was replaced by
writers.gdalin 1.4, but the P2G writer was essentially unmaintained and we will be using the GDAL one going forward.
filters.attributewas split into
filters.overlayto separate their functionalities
filters.outlierhave dropped the
extractoptions. They now only classify points and leave it downstream filters to ignore/extract classifications as needed.
filters.outlierhas changed the default classification for noise points from
7to match the LAS classification code for "Low point (noise)".
pdal pipelinenow supports a
--streamoption which will default to one-at-a-time or chunk-at-a-time point processing when all stages in the pipeline support it. You can use this option to control memory consumption -- for example when interpolating a very large file with
filters.cropwas enhanced to support transformed filter polygons, streaming, and radius cropping.
readers.greyhoundupdated to support greyhound.io 1.0 release, with the most significant enhancement being support for passing downstream JSON filters.
user_dataJSON object can be applied to any PDAL pipeline object and it will be carried through processing. You can use this mechanism for carrying your own information in PDAL pipelines without having to sidecar data. #1427
writers.lasnow can write
pdal_pipelineVLRs for processing history tracking. #1509 #1525
spatialreferenceobjects added to global module for
filters.predicateallow you to pass in a JSON dictionary to your Python module for override or modification of your script
- Stage tags can be used in pipeline override scenarios
- User-settable VLRs in
filters.sortnow supports descending order and uses
std::stable_sort#1530 (Thanks to new contributor @wrenoud )
pdal tindexwill now use data bounds if
filters.hexbincannot be loaded for boundaries #1533
filters.smrfimproved performance #1531 and #1541
filters.assignnow supports Range-based filters
filters.outliernow accepts a user-specified
classto override the default value of
7for points deemed outliers. #1545
filters.smrfnow accept a Range via the
ignoreoption to specify values that should be excluded from ground segmentation. #1545
filters.smrfnow consider only last returns (when return information is available) as the default behavior. The
lastoption can be set to
falseto consider all returns. #1545
- New About page adapted from workshop
- New LAS reading and writing tutorial
- Consolidation of Python information
filters.cluster- Perform Euclidean cluster extraction, and label each point by its cluster ID. By @chambbj.
filters.groupby- Split incoming PointView into individual PointViews categorically, e.g., by Classification. By @chambbj.
filters.locate- Locate and return the point with the minimum or maximum value for a given dimension. By @chambbj.
filters.emf- Extended Local Maximum filter. By @chambbj.
readers.mbioBathymetric point cloud support for formats supported by the MB-System software library
writers.pgpointcloudneeded to treat table schema correctly #1540 (thanks @elemoine)
pdal densitykernel now supports overriding
- Arbiter embedded library updated to support setting Curl options (certificate settings, etc).
- Provided a default value for
writers.plybroken for non-standard dimensions #1556
- No EVLRs for
writers.lasfor files < LAS 1.4 #1551
- LAS extra dims handling for standard PDAL dimension names #1555
- LASzip defines #1549