GREYHOUND
A point cloud streaming framework for dynamic web services and native applications.
See it in action with the dynamic Plas.io client at speck.ly and the Potree client at potree.entwine.io.
Getting started
Obtaining Greyhound
Using Docker
docker pull connormanning/greyhound
docker run -it -p 8080:8080 connormanning/greyhound
Natively
Prior to installing natively, you must first install PDAL and its dependencies, and then install Entwine. Then you can install Greyhound via NPM.
npm install -g greyhound-server
greyhound
Indexing some data
Greyhound uses data indexed by Entwine. See the instructions for how to use Entwine. By default, Greyhound will look for indexed data in ~/greyhound
(natively) and /opt/data
(dockerized). If you are eager to get started, we have some publicly hosted data you can index and serve locally:
docker pull connormanning/entwine
mkdir ~/greyhound
docker run -it -v ~/greyhound:/opt/data connormanning/entwine \
entwine build \
-i https://entwine.io/sample-data/red-rocks.laz \
-o /opt/data/red-rocks
Viewing the data
You've just indexed a LAZ file from the internet (data credit to DroneMapper) and created a local Entwine dataset. It's sitting at ~/greyhound/red-rocks
. Now let's start Greyhound and take a look at the data. We'll be mapping that output directory into Greyhound's default search path at /opt/data
within the container:
docker run -it -p 8080:8080 -v ~/greyhound:/opt/data connormanning/greyhound
Now that Greyhound is awake, you should be able to browse your data with Plasio or Potree.
Further reading
See the client documentation if you are interested in developing an application that streams data from Greyhound. For instructions regarding configuring and deploying Greyhound, see the administrator documentation.