Lidar Services

Overview


Mapspace serves Lidar cloud points under de 3D Tile standard format defined by the Cesium project in ECEF projection system (EPSG:4978) in 3D tiled system: regular Octree.

The transfer format of the Web Services will based on the open 3D Tiles Cesium specs:

https://github.com/AnalyticalGraphicsInc/3d-tiles

The format is composed by a Json file with the index and location (RTC anchor) info of each 3D tile and set of 3D tiles, and a binary file with the geographic and feature information of the Lidar cloud of points.

The binary format is based on the GLTF standard.

https://github.com/AnalyticalGraphicsInc/3d-tiles/blob/master/TileFormats/PointCloud/README.md

Octree

An octree is a tree data structure in which each internal node has exactly eight children. Octrees are most often used to partition a three-dimensional space by recursively subdividing it into eight octants. Octrees are the three-dimensional analog of quadtrees.

This octree will have global extension where the first level of the Octree, cube 0, will contain the whole world.

The maximum level of resolution of the Octree will be a cube with a size of 1 m3.

According this cube minimum size it will be necessary to implement 25 octree levels (0 to 24) to contain the whole world, where level 0 is the biggest cube and level 24 is smallest and detailed cube.

Earth Radius WGS84: 6378137 meters

Earth Diameter WGS84: 12756274 meters

Octree Level 0 size: 224 = 16777216 meters

Octree naming

The Octree naming system will use the existing QTree Mapspace definition.

Each cube will be split in 8 children cubes.

The children cubes of the Z bottom level will use the QTree naming system: 0,1,2,3

The children cubes of the Z top leve will use the ‘extended’ naming system: 4,5,6,7

Projection system

The projection system for each 3D tile of the Octree will be the ECEF system.

This system is a geographic coordinate system and Cartesian coordinate system, and is sometimes known as a "conventional terrestrial" system. It represents positions as an X, Y, and Z coordinate. The point (0,0,0) is defined as the center of mass of the earth, hence the name "earth-centered." Its axes are aligned with the international reference pole (IRP) and international reference meridian (IRM) that are fixed with respect to the surface of the earth, hence the description "earth-fixed." This term can cause confusion since the earth does not rotate about the z-axis (unlike an inertial system such as ECI), and is therefore alternatively called ECR.

The z-axis extends through True north, which does not coincide with the instantaneous earth rotational axis. The slight "wobbling" of the rotational axis is known as polar motion. The x-axis intersects the sphere of the earth at 0° latitude (the equator) and 0° longitude (prime meridian in Greenwich). This means that ECEF rotates with the earth, and therefore coordinates of a point fixed on the surface of the earth do not change. Conversion from a WGS84 datum to ECEF can be used as an intermediate step in converting velocities to the north east down coordinate system.

INWFSLidarProjects

The WFS Lidar Projects Info service is a web service based in the WFS standard protocol for serving vector information.

Mapspace offers the WFS service to allow users to access to vector information related with the Lidar Projects coverage and metadata information following OGC's regulation and directives.

The service uses the http protocol with the parameters normalized by OGC, which define version, type of request, coordinate system, bounding box, etc.

The service supports several input projection systems, but vector information will provided on EPSG:4326 projection.

The WFS supported versions are 1.0.0 & 1.1.0.

Connection

To connect to the Mapspace INWFSLidarProjects service from a GIS client, it is necessary to setup the following URL:

http://your.mapspace.com/mapSvcs/INWFSLidarProjects?REQUEST=GetCapabilities&SERVICE=WFS&ServiceName=WFS&version=1.1.0&userkey=XXXXXX

In this request, userkey string must be replaced by the unique platform access key provided by Field Group.

GetCapabilities returns information about available features, capabilities and spatial operators.

In order to support SSL web protocol (HTTPS) it has been added a new clone service on this URL:

https://your.mapspace.com/mapSvcs/INWFSLidarProjectsSSL?REQUEST=GetCapabilities&SERVICE=WFS&ServiceName=WFS&version=1.1.0&userkey=XXXXXX

Parameters

Parameters defined by OGC standard are:

  • Version [mandatory]: This parameter is the WFS version that is used for this request. Only two values are accepted in the current API version:
    • 1.0.0
    • 1.1.0
  • Request [mandatory]: Possible values are:
    • GetCapabilites: used to obtain the web services descriptor xml file
    • DescribeFeatureType: returns the feature descriptor xml file.
    • GetFeature: used to retrieving a feature query.
  • Service [mandatory]: The service name: WFS
  • Typename: mandatory for GetFeature and DescribeFeatureType requests. It is the name of the feature layer provided by the service. Lidar project informationwill be provided by the name of ‘lidarproject’.
  • Userkey [mandatory]: User’s key for authentication purposes. This key is unique for each client and must be requested from Field Group.
  • Bbox [optional]: Optional for GetFeature request. It defines the bounding box extent of the query.
  • SrsName [optional]: it defines the projection system of the input information (i.e. bbox).

Usage

The result of the GetCapabilities & DescribeFeatureType will be a Xml file according the OGC standard definition.

There are available two types of features: lidarblock & lidarproject.

  • Lidarblock: it returns the available blocks polygons of Lidar projects.
  • Lidarproject: It returns the Lidar project extents.

The output of GetFeature request is a Gml file with next parameters:

  • Geometry: Polygon of the requested feature. Provided in EPSG:4326 projection
  • Name (lidarproject): project name
  • code (lidarproject): project code.
  • Init_date (lidarproject): project starting capture date.
  • End_date (lidarproject): project ending capture date.
  • Scanner_description (lidarproject): scanner type.
  • Block_id (lidarblock): Lidar block identifier.
  • Project_name (lidarblock): Lidar project name
  • Extended_properties: Additional parameters in Json format.(optional)

https://your.mapspace.com/mapSvcs/INWFSLidarProjectsSSL?service=WFS&version=1.1.0&request=GetFeature&srsname=EPSG:4326&typename=lidarproject&userkey=XXXXXX&bbox=9.664722459331024,59.6455935671672,11.694446580424776,60.174358735208216

DAGetLidarTile

This service returns the Lidar tile information requested, in pnts or Json format.

The load of the Lidar model must be handled by the first request of the main Json file of the project. An Alias has been generated for this purpose.

The HTTPS support is available under DAGetLidarTileSSL service alias.

DAGetLidarTile Parameters

Parameters of the service are described below:

  • id [mandatory]: Tile ID, it will be a sequence of digits, which only will be able to contain 0, 1, 2, 4, 5, 6, and 7. This nomenclature corresponds to the way of codifying the Tiles for octrees.
  • layer [mandatory]: Code for the layer requested. Layers are different data sources of data.
  • project [mandatory]: Code for the project requested. Projects are different blocks of data.
  • type [mandatory]: Request format type. Allowed values are ‘json’, ‘pnts’ and ‘root’. The Json and root format will be valid for the Json files of the 3D Tile format. Root type will obtain the main Json file of the project, necessary for the accessing of the next json files. Pnts format will return the binary cloud points.
  • userkey [mandatory]: User’s key for authentication purposes. This key is unique for each client and must be requested to Field Group.

Usage

The result of the request will be json & pnts files. If the user is not authorized to obtain the requested data or if the requested tile is not available, then an empty file will be returned.

Next request will return a .pnts model file with gzip compression.

https://your.mapspace.com/mapSvcs/DAGetLidarTile?userkey=XXXXXX&layer=blom_lidar_st&project=nooslocdmb_171127&id=74143157576506440671&type=pnts

Next request will return a Json model file.

https://your.mapspace.com/mapSvcs/DAGetLidarTile?userkey=XXXXXX=&layer=blom_lidar_st&project=nooslocdmb_171127&id=74143157576506442&type=json

It has been added an ‘Alias’ for the accessing of the project Json file:

https://your.mapspace.com/mapSvcs/DAGetLidarTile?userkey=XXXXXX&layer=blom_lidar_st&project=nooslocdmb_171127&id=0&type=root

DAGetDtm3DTile

This service returns the Dtm layer in 3D format for the Lidar & 3D Mesh services based on the TMS system (https://en.wikipedia.org/wiki/Tile_Map_Service) in a geodetic model.

It returns the Dtm3D tile information requested, in terrain or Json format.

The load of the Dtm3D model must be handled by the first request of the main Json file of the project. An Alias has been generated for this purpose.

DAGetDtm3DTile parameters

The parameters for this service are:

  • x [optional]: X axis value on TMS schema.
  • y [optional]: Y axis value on TMS schema.
  • z [optional]: Z axis value on TMS schema. The absence of X,Y or Z values will handled as a Json request.
  • layer [mandatory]: Code for the layer requested. Layers are different data sources of data.
  • time [optional]: A date following the structure YYYYMMDD or YYYYMM or YYYY. The service will use the most current images available, whose date is previous to the requested date. It is also possible to use a range of dates with the structure YYYYMMDD-YYYYMMDD, in this case the images used will be the most current ones available in the specified date range. If the parameter is omitted the system will submit the most recent version of the tile.
  • userkey [mandatory]: User’s key for authentication purposes. This key is unique for each client and must be requested to Field Group.

Usage

The result of the request will be json & terrain files. If the user is not authorized to obtain the requested data or if the requested tile is not available, then an empty file will be returned.

Next request will return a .terrain model file.

https://your.mapspace.com/mapSvcs/DAGetDtm3DTile?userkey=XXXXXX&z=0&x=1&y=0&layer=srtm15&time=2014

Next request will return the Json model file.

https://your.mapspace.com/mapSvcs/DAGetDtm3DTile?userkey=XXXXXX&layer=srtm15&time=2014

SELidarProjectBbox

This service will locate all the Lidar projects whose extents intersects a given extent.

SELidarProjectBbox Parameters

The parameters needed in the request URL are the following:

  • bbox [mandatory]: Bounding Box defined by four coordinates that specify the area in the specified projection system. Coordinates are provided in the following order: minimum X coordinate, minimum Y coordinate, maximum X coordinate, maximum Y coordinate.
  • crs [mandatory]: Projection system used, It must follow OGC nomenclature. For example EPSG:32630 for WGS84 UTM 30 North or EPSG:3785 for Spherical Mercator projection.
  • output [mandatory]: Response format. Possible values are:
    • txt: Response is a text string with comma-separated values (“,”).
    • Xml: Response is an XML file.
    • Json: Response is Json format.
  • date [optional] : A date following the structure YYYYMMDD or YYYYMM or YYYY. The service will use the most current images available, whose date is previous to the requested date. It is also possible to use a range of dates with the structure YYYYMMDD-YYYYMMDD, in this case the images used will be the most current ones available in the specified date range.If the parameter is omitted the system will submit the most recent version of the tile.
  • layer [optional]: This parameter indicates the Lidar layer where searching will be performed.
  • userkey [mandatory]: User’s key for authentication purposes. This key is unique for each client and must be requested to Field Group.

Error messages

If no images are found for the specified point an Error message is returned. If the response format was specified as a text, the response message is:

ERROR, Error message text

If the response format is XML the error XML file is:

<?xml version="1.0" encoding="ISO-8859-1" standalone="no" ?> 
<result> 
	<Error> 
		ERROR, Error message text 
	</Error> 
</result>

Usage

The https request for searching the available lidar projects in a bounding box would be like this:

https://your.mapspace.com/mapSvcs/SELidarProjectBbox?crs=EPSG:4326&bbox=10.218658438246603,60.153809133223405,10.220031729266088,60.15449257649393&userkey=XXXXXX&output=xml&layer=blom_lidar_st

For each Lidar Project located the following information is provided:

  • Code: Lidar project code.
  • Name: Lidar project name.
  • Init_date: Starting capture date.
  • End_date: Ending capture date.
  • Layer: Lidar project layer.
  • Xcp: X location of the project centroid (EPSG:4978).
  • Ycp: Y location of the project centroid (EPSG:4978).
  • Zcp: Z location of the project centroid (EPSG:4978).
  • Dtm_3d_layer: Dtm 3D layer name to be used for this proyect.
  • Copyright: Lidar project copyright.
  • Bbox: Project bbox geometry in WKT format (EPSG:4326).