Class: module:Manager service:gmflidarprofileManager

gmf.lidarprofile.module:Manager.gmf.lidarprofile.module:Manager

new module:Manager($http, $filter, gettextCatalog, ngeoDebounce)

Provides a service to manage a D3js component to be used to draw an lidar point cloud profile chart. Requires access to a Pytree webservice: https://github.com/sitn/pytree

Parameters:
Name Type Description
$http angular.$http

Angular http service.

$filter angular.$filter

Angular filter.

gettextCatalog angularGettext.Catalog

Gettext catalog.

ngeoDebounce ngeo.misc.Debounce

ngeo debounce service.

Members

$filter: angular.$filter

$http: angular.$http

cartoHighlight: ol.Overlay

The hovered point attributes in d3 profile highlighted on the 2D map

config: gmf.lidarprofile.Config

gettextCatalog: angularGettext.Catalog

lidarBuffer: ol.layer.Vector

The profile footpring represented as a LineString represented with real mapunites stroke width

lidarPointHighlight: ol.layer.Vector

The hovered point geometry (point) in d3 profile highlighted on the 2D map

measure: gmf.lidarprofile.Measure

plot: gmf.lidarprofile.Plot

profilePoints: gmfx.LidarprofilePoints

The variable where all points of the profile are stored

utils: gmf.lidarprofile.Utils

Methods

clearBuffer()

Clears the profile footprint

getProfileByLOD(clippedLine, distanceOffset, resetPlot, minLOD)

Load profile data (lidar points) by succesive Levels Of Details using asynchronous requests

Parameters:
Name Type Description
clippedLine Array

an array of the clipped line coordinates

distanceOffset number

the left side of d3 profile domain at current zoom and pan configuration

resetPlot boolean

wether to reset d3 plot or not

minLOD number

minimum level of detail

init(config, map)

Parameters:
Name Type Description
config gmf.lidarprofile.Config

Instance of gmf.lidarprofile.Config

map ol.Map

The map.

setLine(line)

Set the line for the profile

Parameters:
Name Type Description
line ol.geom.LineString

that defines the profile

setMap(map)

Set the map used by the profile

Parameters:
Name Type Description
map ol.Map

The map.

updateData()

Update the profile data according to d3 chart zoom and pan level The update will wait on a 200ms pause on the actions of users before to do the update.