[pdal-commits] [PDAL/PDAL] cda458: Add native PCD I/O (removing reader/writer from PC...

chambbj noreply at github.com
Wed Jul 31 07:56:58 PDT 2019


  Branch: refs/heads/pcd-io
  Home:   https://github.com/PDAL/PDAL
  Commit: cda458ac3be3996d2ace8d7afa515948b515797f
      https://github.com/PDAL/PDAL/commit/cda458ac3be3996d2ace8d7afa515948b515797f
  Author: Bradley J Chambers <brad.chambers at gmail.com>
  Date:   2019-07-31 (Wed, 31 Jul 2019)

  Changed paths:
    M doc/stages/readers.pcd.rst
    M doc/stages/writers.pcd.rst
    A io/PcdHeader.cpp
    A io/PcdHeader.hpp
    A io/PcdReader.cpp
    A io/PcdReader.hpp
    A io/PcdWriter.cpp
    A io/PcdWriter.hpp
    A io/point_types.hpp
    M plugins/pcl/CMakeLists.txt
    R plugins/pcl/io/PcdCommon.hpp
    R plugins/pcl/io/PcdHeader.cpp
    R plugins/pcl/io/PcdHeader.hpp
    R plugins/pcl/io/PcdReader.cpp
    R plugins/pcl/io/PcdReader.hpp
    R plugins/pcl/io/PcdWriter.cpp
    R plugins/pcl/io/PcdWriter.hpp
    R plugins/pcl/io/point_types.hpp
    A test/data/pcd/missingheader.pcd
    A test/data/pcd/utm17_comma.pcd
    A test/data/pcd/utm17_space.pcd
    A test/data/pcd/utm17_tab.pcd
    M test/unit/CMakeLists.txt
    A test/unit/io/PcdReaderTest.cpp
    A test/unit/io/PcdWriterTest.cpp

  Log Message:
  -----------
  Add native PCD I/O (removing reader/writer from PCL plugin)

- Supports reading and writing ASCII
- Supports reading and writing binary
- Readers are streamable, while writers are not
- Does NOT yet support binary compressed
- Removes need for PcdCommon header
- Adds rudimentary tests for PCD reader/writer

A note about the PCD writer. Similar to other writers, the PCD writer can
output a subset of the dimensions if keep_unspecified is set to false. In that
case, only the dimensions specified in the order parameter are written in the
output. The dimension type ("F", "I", or "U") and size (in bytes) can also be
specified, along with precision in the case of ASCII output.

This native driver for PCD will remove a long-standing issue with the previous
PCL-backed drivers, which required a conversion to a fixed, single-precision
point schema, that resulted in loss of extra dimensions (beyond XYZRGBA) and
confusion surrounding subtraction of offsets to avoid loss of precision for
certain coordinate systems.


  Commit: 8c870da1d032838ca55edcec20c9ce10d843a72b
      https://github.com/PDAL/PDAL/commit/8c870da1d032838ca55edcec20c9ce10d843a72b
  Author: Bradley J Chambers <brad.chambers at gmail.com>
  Date:   2019-07-31 (Wed, 31 Jul 2019)

  Changed paths:
    M doc/stages/writers.pcd.rst
    M io/PcdWriter.cpp
    M test/unit/io/PcdWriterTest.cpp

  Log Message:
  -----------
  Change PCD writer specification of output dimensions

Users may now specify a valid PDAL type, e.g., Unsigned16, and precision as
part of the `order` argument. For example, "X=Float:3,Y=Double:4,Z=Unsigned32".
Dimension type default is double precision floating point.


  Commit: 7da7a2d205885c776c1c366868527ec03b5aaeb1
      https://github.com/PDAL/PDAL/commit/7da7a2d205885c776c1c366868527ec03b5aaeb1
  Author: Bradley J Chambers <brad.chambers at gmail.com>
  Date:   2019-07-31 (Wed, 31 Jul 2019)

  Changed paths:
    M io/PcdReader.cpp

  Log Message:
  -----------
  Replace boost is_any_of with lambda as predicate in split


Compare: https://github.com/PDAL/PDAL/compare/b24232831a62...7da7a2d20588


More information about the pdal-commits mailing list