Skip to content

PDAL/python-plugins

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PDAL Python Plugins

PDAL Python plugins allow you to process data with PDAL into Numpy arrays. They support embedding Python in PDAL pipelines with the readers.numpy and filters.python stages.

Installation

PyPI

PDAL Python plugins are installable via PyPI:

uv pip install pdal-plugins

If you are not using uv, pip install pdal-plugins works too.

GitHub

The repository for PDAL's Python plugins is available at https://github.com/PDAL/python-plugins

Requirements

  • PDAL 2.6+
  • Python >=3.9
  • uv
  • Numpy
  • scikit-build-core
  • pybind11
  • CMake and Ninja

Development

The project uses uv for Python package installation and builds, with scikit-build-core driving the CMake build.

Create a development environment with the same dependencies used by CI:

mamba env create -f .github/environment.yml
mamba activate test

Install the plugins into that environment and build the C++ tests:

PYTHON=$(python -c 'import sys; print(sys.executable)')
uv pip install --python "$PYTHON" --no-build-isolation -Ccmake.define.WITH_TESTS=ON .

Run the tests from the scikit-build output directory:

export PYTHONHOME=$CONDA_PREFIX
export PATH=$CONDA_PREFIX/bin:$PATH
export WHEEL_DIR=$(python -m scikit_build_core.builder.wheel_tag)
export PDAL_DRIVER_PATH=$(pwd)/build/$WHEEL_DIR/Release
pdal --drivers
$PDAL_DRIVER_PATH/pdal_filters_python_test
$PDAL_DRIVER_PATH/pdal_io_numpy_test

Build source and wheel distributions with uv:

PYTHON=$(python -c 'import sys; print(sys.executable)')
uv build --python "$PYTHON"

About

filters.python and readers.numpy for PDAL

Resources

License

Stars

9 stars

Watchers

5 watching

Forks

Packages

 
 
 

Contributors

Languages