Skip to content

Commit

Permalink
Merge branch 'master' of github.com:PDAL/PDAL
Browse files Browse the repository at this point in the history
  • Loading branch information
hobu committed Apr 2, 2019
2 parents 1a6cc69 + e406e7e commit 6ace071
Show file tree
Hide file tree
Showing 136 changed files with 2,401 additions and 2,523 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ script:

after_success: |
if [[ "$TRAVIS_SECURE_ENV_VARS" == "true" &&
"$TRAVIS_BRANCH" == "1.8-maintenance" &&
"$TRAVIS_BRANCH" == "1.9-maintenance" &&
-n "$encrypted_6a5172b96922_key" ]]
then
cd scripts/ci
Expand Down
6 changes: 3 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,14 @@ mark_as_advanced(CMAKE_VERBOSE_MAKEFILE)

# the next line is the ONLY place in the entire pdal system where
# the version info is hard-coded
set(PDAL_VERSION_STRING "1.8.0" CACHE STRING "PDAL version")
set(PDAL_VERSION_STRING "1.9.0" CACHE STRING "PDAL version")

DISSECT_VERSION()
GET_OS_INFO()
SET_INSTALL_DIRS()

set(PDAL_API_VERSION "7")
set(PDAL_BUILD_VERSION "8.0.0")
set(PDAL_API_VERSION "8")
set(PDAL_BUILD_VERSION "9.0.0")

# Name of C++ library

Expand Down
94 changes: 94 additions & 0 deletions RELEASENOTES.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,97 @@
================================================================================
1.9.0
================================================================================

Changes of Note
===============

- PDAL now requires at least version 2.2 of GDAL.
- Pipelines can optionally be specified as an array of stages (without
an encapsulating “pipeline” object).
- The location of installed cmake files has been changed to match the
cmake convention.
- ``filters.delaunay`` now uses the delaunator library instead of
geogram.
- PDAL no longer depends on the GEOS library. However, some polygon
functions will not work if PDAL isn’t built with a version of the
GDAL library that has GEOS support.
- PDAL now uses the standard cmake script to locate the necessary GDAL
files when building.
- ``readers.sbet`` now reads angles as degrees rather than radians.
(#2354)
- The ``tindex`` command now requires one of the subcommands ``create``
or ``merge``. It no longer accepts the ``merge`` option, which has
been replaced by the ``merge`` subcommand.
- The argument for the function ``PipelineManager::executeStream`` is
now of type ``StreamPointTable&`` instead of ``FixedPointTable&``.

Enhancements
============

- All readers now accept the ``default_srs`` and ``override_srs``
options. ``override_srs`` is an alias for the existing
``spatialreference`` option. ``default_srs`` applies only if no
spatial reference exists in the source file. (#2194, #2195)
- Added some dimension detection capability to ``readers.pts``. (#2317)
- Hardened API use of LASzip in ``writers.las`` for points with data
format 6 and above and set the extended_point_type variable. (#2320,
#2329)
- Support the ``libgeotiff`` path suffix when searching for the geotiff
library with cmake.
- Added a ``resolution`` option to ``readers.ept`` to limit the number
of points read. (#2331)
- ``readers.rxp`` now supports stream mode.
- Added the ``invert`` option to ``filters.head`` and ``filters.tail``.
- Added support for subcommands in kernels. (#2293)

New stages
==========

- ``filters.mongo`` - Filtering of points using the mongo expression
language.
- ``readers.tiledb`` - Reads points from the tileDB database.
- ``writers.tiledb`` - Writes points to the tileDB database.
- ``writers.ept_addon`` - Adds sidecar data to an existing EPT dataset.

Deprecated stages
=================

- ``filters.kdistance`` - Replaced by ``filters.nndistance``.
``filters.kdistance`` will be removed in the next PDAL release.
- ``filters.mongus`` - Replaces by ``filters.pmf`` and ``filters.smrf``

Bug fixes
=========

- The tindex command now uses sufficient precision when using the
``fast_boundary`` option (#2271)
- ``filters.smrf`` and ``filters.pmf`` now process all points if the
``NumberOfReturns`` or ``ReturnNumber`` dimension is missing. This
fixes a regression introduced with PDAL 1.8. (#2275)
- The density command is now found by pdal. This fixes a regression
introduced with PDAL 1.8. (#2378)
- The ``scale=auto`` and ``offset=auto`` options now work with
``writers.bpf`` in stream mode. (#1983)
- Pipelines with diamond shapes now properly re-execute ancestor
stages. This fixes a regression introduced with PDAL 1.8. (#2290)
- ``filters.crop`` now uses the correct logic when the ``outside``
option is used in standard mode. (#2305)
- A bug in ``writers.gdal`` with streaming mode that caused an improper
location shift in some instances has been fixed. (#2292)
- Added an explicit dependency on the arbiter library for curl. This
fixes build issues on some Unix platforms. (#1822)
- Fixed a bug in ``filters.icp`` introduced by a change in PCL (see:
https://github.com/PointCloudLibrary/pcl/issues/2724) that improperly
removed a function call. (#2319)
- ``readers.tindex`` now provides a default of “EPSG:4326” for the
``filter_srs`` option. (#2316)
- Points in buffer corners are now properly placed in tiles in
``filters.splitter``. (#2372)
- Fixed reference counting in ``filters.python`` that might have caused
a crash in some circumstances.
- Generalized the python library re-loaded by PDAL when being used as a
python extension. This is only relevant on some Unix distributions.

================================================================================
1.8.0
================================================================================
Expand Down
2 changes: 1 addition & 1 deletion cmake/modules/FindOracle.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ if(DEFINED ENV{ORACLE_HOME})
${ORACLE_HOME}/OCI/include) # Oracle XE on Windows

set(ORACLE_OCI_NAMES clntsh libclntsh oci)
set(ORACLE_NNZ_NAMES nnz10 libnnz10 nnz11 nnz12 libnnz11 libnnz12 ociw32)
set(ORACLE_NNZ_NAMES nnz10 libnnz10 nnz11 nnz12 nnz18 libnnz11 libnnz12 libnnz18 ociw32)
set(ORACLE_OCCI_NAMES libocci occi oraocci10 oraocci11)

set(ORACLE_LIB_DIR
Expand Down
10 changes: 0 additions & 10 deletions doc/development/compilation/dependencies.rst
Original file line number Diff line number Diff line change
Expand Up @@ -104,15 +104,6 @@ Point Cloud read/write support.
.. note::
MSVC should only require the oci.lib and oci.dll library and dlls.

Hexer
..............................................................................

`Hexer`_ is a library with a simple `CMake`-based build system that
provides simple hexagon gridding of large point sets for density surface
generation and boundary approximation. It can be obtained via github.com at
https://github.com/hobu/hexer It is used by :ref:`filters.hexbin` to output
density surfaces and boundary approximations.

Nitro
..............................................................................

Expand Down Expand Up @@ -186,7 +177,6 @@ used by :ref:`writers.tiledb` and :ref:`readers.tiledb`.
.. _`KyngChaos`: http://www.kyngchaos.com/software/unixport
.. _`Conda Forge`: https://anaconda.org/conda-forge/pdal

.. _Boost: http://www.boost.org
.. _GDAL: http://www.gdal.org
.. _Proj.4: http://trac.osgeo.org/proj
.. _GeoTIFF: http://trac.osgeo.org/geotiff
Expand Down
1 change: 1 addition & 0 deletions doc/development/compilation/unix.rst
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,7 @@ location of our test file. This is similar to the :ref:`same command
:alt: Setting the arguments for lasinfo


.. _optional-libraries:

Configure :ref:`Optional Libraries <dependencies>`
------------------------------------------------------------------------------
Expand Down
21 changes: 12 additions & 9 deletions doc/development/overview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,9 @@ PDAL Architecture Overview

PDAL is a set of applications and library to facilitate translation of point
cloud data between various formats. In addition, it provides some facilities
for transformation of data between various geometric projections and
manipulations and can calculate some statistical, boundary and density data.
for transformation of data between various geometric projections
and can calculate some statistical, boundary and density data. PDAL also
provides point classification algorithms.
PDAL provides an API that can be used by programmers for integration into their
own projects or to allow extension of existing capabilities.

Expand All @@ -25,13 +26,14 @@ PDAL reads data from a set of input sources using format-specific readers.
Point data can be passed through various filters that transform data or create
metadata. If desired, points can be written to an output stream using a
format-specific writer. PDAL can merge data from various input sources into a
single output source, preserving attribute data where supported by the input and
output formats.
single output source, preserving attribute data where supported by the input
and output formats.

.. image:: pipeline.png

The above diagram shows a possible arrangement of PDAL readers, filters and
writers, all of which are known as stages. Any merge operation or filter may be
writers, all of which are known as stages. Any merge operation or filter
may be
placed after any reader. Output filters are distinct from other filters only in
that they may create more than one set of points to be further filtered or
written. The arrangement of readers, filters and writers is called a PDAL
Expand Down Expand Up @@ -175,7 +177,8 @@ pipeline.
implement the no-argument version. Whether to place initialization code
at this step or in prepared() or ready() (see below) is a judgement call,
but detection of errors earlier in the process allows faster termination of
a command..
a command. Files opened in this step should also be closed before
returning.

3) void addDimensions(PointLayoutPtr layout)

Expand Down Expand Up @@ -222,9 +225,9 @@ is called once for each point view to be processed by the stage.
3) void done(PointTablePtr table)

This function allows a stage to clean up resources not released by a
stage’s destructor. It also allows other termination functions, such
a closing of databases, writing file footers, rewriting headers or
closing or renaming files.
stage’s destructor. It also allows other execution of termination
functions, such a closing of databases, writing file footers,
rewriting headers or closing or renaming files.

Streaming Stage Execution
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down
51 changes: 51 additions & 0 deletions doc/development/release-notes/1.9.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@

# Changes of Note

- PDAL now requires at least version 2.2 of GDAL.
- Pipelines can optionally be specified as an array of stages (without an encapsulating "pipeline" object).
- The location of installed cmake files has been changed to match the cmake convention.
- `filters.delaunay` now uses the delaunator library instead of geogram.
- PDAL no longer depends on the GEOS library. However, some polygon functions will not work if PDAL isn't built with a version of the GDAL library that has GEOS support.
- PDAL now uses the standard cmake script to locate the necessary GDAL files when building.
- `readers.sbet` now reads angles as degrees rather than radians. (#2354)
- The `tindex` command now requires one of the subcommands `create` or `merge`. It no longer accepts the `merge` option, which has been replaced by the `merge` subcommand.
- The argument for the function `PipelineManager::executeStream` is now of type `StreamPointTable&` instead of `FixedPointTable&`.

# Enhancements

- All readers now accept the `default_srs` and `override_srs` options. `override_srs` is an alias for the existing `spatialreference` option. `default_srs` applies only if no spatial reference exists in the source file. (#2194, #2195)
- Added some dimension detection capability to `readers.pts`. (#2317)
- Hardened API use of LASzip in `writers.las` for points with data format 6 and above and set the extended_point_type variable. (#2320, #2329)
- Support the `libgeotiff` path suffix when searching for the geotiff library with cmake.
- Added a `resolution` option to `readers.ept` to limit the number of points read. (#2331)
- `readers.rxp` now supports stream mode.
- Added the `invert` option to `filters.head` and `filters.tail`.
- Added support for subcommands in kernels. (#2293)

# New stages

- `filters.mongo` - Filtering of points using the mongo expression language.
- `readers.tiledb` - Reads points from the tileDB database.
- `writers.tiledb` - Writes points to the tileDB database.
- `writers.ept_addon` - Adds sidecar data to an existing EPT dataset.

# Deprecated stages

- `filters.kdistance` - Replaced by `filters.nndistance`. `filters.kdistance` will be removed in the next PDAL release.
- `filters.mongus` - Replaces by `filters.pmf` and `filters.smrf`

# Bug fixes

- The tindex command now uses sufficient precision when using the `fast_boundary` option (#2271)
- `filters.smrf` and `filters.pmf` now process all points if the `NumberOfReturns` or `ReturnNumber` dimension is missing. This fixes a regression introduced with PDAL 1.8. (#2275)
- The density command is now found by pdal. This fixes a regression introduced with PDAL 1.8. (#2378)
- The `scale=auto` and `offset=auto` options now work with `writers.bpf` in stream mode. (#1983)
- Pipelines with diamond shapes now properly re-execute ancestor stages. This fixes a regression introduced with PDAL 1.8. (#2290)
- `filters.crop` now uses the correct logic when the `outside` option is used in standard mode. (#2305)
- A bug in `writers.gdal` with streaming mode that caused an improper location shift in some instances has been fixed. (#2292)
- Added an explicit dependency on the arbiter library for curl. This fixes build issues on some Unix platforms. (#1822)
- Fixed a bug in `filters.icp` introduced by a change in PCL (see: https://github.com/PointCloudLibrary/pcl/issues/2724) that improperly removed a function call. (#2319)
- `readers.tindex` now provides a default of "EPSG:4326" for the `filter_srs` option. (#2316)
- Points in buffer corners are now properly placed in tiles in `filters.splitter`. (#2372)
- Fixed reference counting in `filters.python` that might have caused a crash in some circumstances.
- Generalized the python library re-loaded by PDAL when being used as a python extension. This is only relevant on some Unix distributions.

0 comments on commit 6ace071

Please sign in to comment.