Egej Vencelj Senior software engineer

Work / Point-cloud slices on demand

Point-cloud slices on demand

Panarch's reports and web maps get their cross-sections from this service, which cuts a slice out of the LiDAR point cloud on request. I wrote it, and it runs in Docker.

Re-creation. It runs in your browser, not on the service I built at work. The data is public: Slovenian Environment Agency (ARSO), LiDAR point cloud GKOT, tile TM_426_66, survey 2014-2015, CC BY 4.0.

Public LiDAR point cloud of a transmission-line corridor, coloured by class, with a section plane across it.
Fig. 1 Public LiDAR point cloud of a transmission-line corridor, coloured by class, with a section plane across it.

What the real one does

A small service I wrote cuts a slice out of the LiDAR point cloud on request. The reports and web maps call it whenever they need a cross-section, and it runs in Docker.

How the demo works

A kilometre of transmission-line corridor from Slovenia's public LiDAR. Drag the section plane and the profile updates.

The tile is near Senožeče, where the 220 kV Kleče-Divača and the 400 kV Beričevo-Divača lines run side by side across a valley. I cut a corridor 1 km long and 260 m wide along them and thinned it from 8.7 million points to about 400,000, so it loads in a browser.

ARSO classifies ground and three heights of vegetation, but not wires, so I picked the conductor points myself. A candidate had to be unclassified or high vegetation, at least 6 m above the ground and within 12 m of either line's centre. It also needed nothing solid in the 6 m under it. A treetop always has branches under it. A wire doesn't, which also catches wire returns the survey had filed as trees.

A slice is the simplest useful question you can ask a point cloud: what is between me and the wire, here? The section takes every point within a few metres of the plane and draws it flat.