API panorames
Documentació API panorames. Aquesta API s’utilitza al visor de panorames i núvols de punts del geoportal i MapiaStreets.
Model
Campanyes
A la taula mapia_panoramas_project s’hi defineixen les diferents campanyes de Mobile Mapping. P.e. Panorames 2018, Panorames 2020, etc.
Camp | Definició |
---|---|
id | id autogenerat |
code | Codi de la campanya, p.e. pano-2020 |
name | Nom de la campanya, p.e. Panorames 2020 |
Panorames
La taula mapia_panoramas_panorama conté tota la informació dels panorames:
Camp | Definició |
---|---|
id | id autogenerat |
file_name | Nom de la imatge. Si es posa la ruta sencera (comença per http) hi accedeix directament, si no va al directori per defecte i li afegeix. Exemple: https://(…)/apps/giscube-admin/plugins/mapia_panoramas/files/(file_folder)/file_name |
file_type | Tipus (extensió) de la imatge |
file_folder | Directori on es troben les imatges. Si es posa la ruta sencera (comença per http) hi accedeix directament, si no va al directori per defecte i li afegeix. Exemple: https://(…)/apps/giscube-admin/plugins/mapia_panoramas/files/file_folder |
source_id | Id definit per l’usuari, pot servir per ordenar els panorames |
date | Data i hora de captura de la panoràmica |
altitude | Altura sobre el nivell del mar del panorama |
roll | Angle respecte l’eix longitudinal |
pitch | Angle respecte l’eix transversal |
pan | Angle respecte l’eix vertical (orientació amb el nord) |
geom | Geometria, coordenades del punt |
project_id | Projecte definit a la taula mapia_panoramas_project on es defineixen p.e. diferents campanyes de MoMa |
category | String per definir una categoria p.e. diferents plantes d’un edifici |
Laterals
La taula mapia_panoramas_lateral conté tota la informació de les imatges laterals:
Camp | Definició |
---|---|
id | id autogenerat |
file_name | Nom de la imatge. Si es posa la ruta sencera (comença per http) hi accedeix directament, si no va al directori per defecte i li afegeix. Exemple: https://(…)/apps/giscube-admin/plugins/mapia_panoramas/files/(file_folder)/file_name |
file_folder | Directori on es troben la imatge. Si es posa la ruta sencera (comença per http) hi accedeix directament, si no va al directori per defecte i li afegeix. Exemple: https://(…)/apps/giscube-admin/plugins/mapia_panoramas/files/file_folder |
file_type | Tipus (extensió) de la imatge |
pan | Orientacio de l’imatge respecte al Nord |
panorama_id | Id del panorama al que correspon |
Núvols de punts
La taula mapia_panoramas_pointcloud conté tota la informació dels núvols de punts al servidor:
Camp | Definició |
---|---|
id | id autogenerat |
code | Codi descriptiu núvol de punts |
name | Nom del núvol de punts |
file_folder | Directori on es troben els núvols de punts |
geom | Geometria, polígon que conté el núvol de punts |
project_id | Projecte definit a la taula mapia_panoramas_project on es defineixen p.e. diferents campanyes de MoMa |
Núvols de punts Local
La taula mapia_panoramas_localpointcloud conté tota la informació dels núvols de punts en local:
Camp | Definició |
---|---|
id | id autogenerat |
code | Codi descriptiu núvol de punts |
name | Nom del núvol de punts |
file_folder | Directori on es troben els núvols de punts en local |
geom | Geometria, polígon que conté el núvol de punts |
project_id | Projecte definit a la taula mapia_panoramas_project on es defineixen p.e. diferents campanyes de MoMa |
Autenticació
Es tracta d’una API pública, no cal autenticació
Endpoints
El projecte de panorames es tracta d’un mòdul extern al giscube-admin, per tant s’afegirà com un plug-in. Hi ha un endpoint per obtenir les campanyes definides. Per cada campanya hi ha un endpoint per obtenir els panorames, els núvols de punts al servidor (actualment no usat) i els núvols de punts en local.
Campanyes
Endpoint que retorna totes les campanyes definides.
URL
Endpoint | plugins/mapia_panoramas/api/projects/ | |
Exemple | https://xxxxxxx.xxxxxxx.xxx/apps/giscube-admin/plugins/mapia_panoramas/api/projects/ |
Parametres
No es necessiten parametres
Resultat
El resultat és un array amb les campanyes definides
"results": [
{
"code": "pano-2020",
"name":"Panorames 2020",
"description":null,
"zone":null,
"date_start":null,
"date_end":null,
"folder_panorama":"pano-2020",
"folder_images":"pano-2020",
"folder_point_cloud":null,
"layer_panorama":null
},
{...}
]
Panorames
L’Endpoint panorames depèn de la campanya en la que volguem fer la creca (introduint el codi de la campanya a la URL). S’obtenen els panorames a partir d’una coordenada i un radi de cerca
URL
Endpoint | plugins/mapia_panoramas/api/projects/{code}/panoramas/ | |
Exemple | https://xxxxxxx.xxxxxxx.xxx/apps/giscube-admin/plugins/mapia_panoramas/api/projects/pano/panoramas/ |
Paràmetres
Els paràmetres de cerca d’aquesta API són els següents
Paràmetre | Definició | Obligatori | Exemple |
---|---|---|---|
p | Coordenades (lat, lng) del punt que busquem | * | p=41.3997,2.1133 |
r | Radi de cerca en metres | * | r=15 |
c | Cerca els que tenen la mateixa categoria | c=planta_1 |
L’API retorna tots els panorames que es troben dins del radi de cerca (r) ordenats per distància respecte el punt(p)
Exemple | https://xxxxxxx.xxxxxxx.xxx/apps/giscube-admin/plugins/mapia_panoramas/api/projects/pano-2020/panoramas/?p=41.47379866069745,2.089445418340398&r=15 |
Resultat
[
{
"id": 11596,
"project": "pano-2020",
"category": null,
"file_name": "Track_C-Sphere-144.jpg",
"file_type": null,
"file_folder": "201028",
"source_id": 11596,
"date": "2020-10-28T07:01:13Z",
"altitude": 122.654,
"roll": -358.432473,
"pitch": 4.585543,
"pan": -93.647597,
"geom": {
"type": "Point",
"coordinates":[
2.089445418340398,
41.47379866069745
]
},
"laterals": [
{
"file_name": "Track_C-CAM1-144_2020.10.28_08.01.13(278).jpg",
"file_type": null,
"file_folder": "201028/Track_C01",
"pan": -48.647597000000005
},
{...},
{...}
]
},
{...},
{...}
]
Núvols de punts (actualment no usat)
Endpoint que retorna els núvols de punts que es troben sobre una coordenada.
URL
Endpoint | plugins/mapia_panoramas/api/projects/{code}/point_cloud/ | |
Exemple | https://xxxxxxx.xxxxxxx.xxx/apps/giscube-admin/plugins/mapia_panoramas/api/projects/pano-2020/point_cloud/ |
Paràmetres
Els paràmetres de cerca d’aquesta API són els següents
Paràmetre | Definició | Obligatori | Exemple |
---|---|---|---|
p | Coordenades (lat, lng) del punt que busquem | * | p=41.3997,2.1133 |
L’API retorna tots els núvols de punts que contenen la coordenada (els polígons que contenen el punt).
Resultat
El resultat és un array amb les campanyes definides
"results": [
{
"id": '',
"project": '',
"code": '',
"name": '',
"file_folder": '',
"geom" '':
},
{...}
]
Núvols de punts Local
Endpoint que retorna els núvols de punts que es troben sobre una coordenada.
URL
Endpoint | plugins/mapia_panoramas/api/projects/{code}/local_point_cloud/ | |
Exemple | https://xxxxxxx.xxxxxxx.xxx/apps/giscube-admin/plugins/mapia_panoramas/api/projects/pano-2020/local_point_cloud/ |
Paràmetres
Els paràmetres de cerca d’aquesta API són els següents
Paràmetre | Definició | Obligatori | Exemple |
---|---|---|---|
p | Coordenades (lat, lng) del punt que busquem | * | p=41.3997,2.1133 |
L’API retorna tots els núvols de punts que contenen la coordenada (els polígons que contenen el punt).
Resultat
El resultat és un array amb les campanyes definides
"results": [
{
"id": '',
"project": '',
"code": '',
"name": '',
"file_folder": '',
"geom" '':
},
{...}
]