From ef480fbaea191485ba847f4a721a18d2fb0ab50f Mon Sep 17 00:00:00 2001
From: ElenaGallo <56537133+ElenaGallo@users.noreply.github.com>
Date: Tue, 26 Sep 2023 09:51:47 +0200
Subject: [PATCH] update_9482
---
docs/user-guide/catalog.md | 30 ++++++++++++--------
docs/user-guide/img/catalog/cog_service.jpg | Bin 0 -> 19615 bytes
2 files changed, 18 insertions(+), 12 deletions(-)
create mode 100644 docs/user-guide/img/catalog/cog_service.jpg
diff --git a/docs/user-guide/catalog.md b/docs/user-guide/catalog.md
index c4eacc4835..5225edea15 100644
--- a/docs/user-guide/catalog.md
+++ b/docs/user-guide/catalog.md
@@ -274,15 +274,15 @@ When the user saves this custom catalog service and clicks on search, he will se
Browse custom TMS service. It contains only one result
-## Sample custom
+##### Sample custom
```text
url: https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png
```
-## Sample custom with advanced options
+##### Sample custom with advanced options
- ```text
+```text
url: https://nls-{s}.tileserver.com/nls/{z}/{x}/{y}.jpg
```
@@ -299,7 +299,7 @@ url: https://nls-{s}.tileserver.com/nls/{z}/{x}/{y}.jpg
}
```
-### TMS 1.0.0
+#### TMS 1.0.0
Selecting the "TMS 1.0.0" provider the user can insert the URL of the Tile Map Service (see [TMS Specification](https://wiki.osgeo.org/wiki/Tile_Map_Service_Specification)). For instance, in GeoServer, it is the URL of the "TMS" link in the home page.
@@ -314,7 +314,7 @@ When saved this, the user will be allowed to browse and add to the map the TMS l
Browse TMS 1.0.0 layers
-#### sample TMS 1.0.0 services
+##### Sample TMS 1.0.0 services
```text
https://public.sig.rennesmetropole.fr/geowebcache/service/tms/1.0.0
@@ -322,7 +322,7 @@ https://osm.geobretagne.fr/gwc01/service/tms/1.0.0
https://gs-stable.geosolutionsgroup.com/geoserver/gwc/service/tms/1.0.0
```
-#### TMS Known Services
+##### TMS Known Services
The other known services are listed as providers below "custom" and "TMS 1.0.0". They are a static list configured inside the application. Selecting one of the provider listed and saving the new catalog service allows to browse al the variants known for that service. For more information about the list of available providers, see the developer documentation about [Tile Providers](../../developer-guide/maps-configuration/#tileprovider)
@@ -334,10 +334,11 @@ The other known services are listed as providers below "custom" and "TMS 1.0.0".
### 3D Tiles Catalog
-3D Tiles is an [OGC specification](https://www.ogc.org/standards/3DTiles) designed for streaming and rendering massive 3D geospatial content such as Photogrammetry, 3D Buildings, BIM/CAD, and Point Clouds across desktop, web and mobile applications.
-MapStore allows to publish 3D Tiles contents in its 3D mode on top of the [CesiumJS capabilities](https://github.com/CesiumGS/3d-tiles). Through the Catalog tool, a specific source type to load 3D Tiles in the Cesium Map can be configured as follows by specifying the URL of a reachable *tileset.json*.
+**3D Tiles** is an [OGC specification](https://www.ogc.org/standards/3DTiles) designed for streaming and rendering massive 3D geospatial content such as Photogrammetry, 3D Buildings, BIM/CAD, and Point Clouds across desktop, web and mobile applications.
+
+MapStore allows to publish 3D Tiles contents in its 3D mode on top of the [CesiumJS capabilities](https://github.com/CesiumGS/3d-tiles). Through the *Catalog* tool, a specific source type to load 3D Tiles in the Cesium Map can be configured as follows by specifying the URL of a reachable `tileset.json`.
-In **general settings of** 3D Tiles service, the user can specify the title to assign to this service and the URL of the service.
+In **General Settings** of 3D Tiles service, the user can specify the title to assign to this service and the URL of the service.
@@ -347,7 +348,12 @@ In **general settings of** 3D Tiles service, the user can specify the title to a
(some [FAQs](https://cloud.google.com/blog/products/maps-platform/commonly-asked-questions-about-our-recently-launched-photorealistic-3d-tiles) are also available online for this purpose) before providing Google Photorealistic 3D Tile in your MapStore maps in order to enable only allowed tools (e.g. *Measurement* and *Identify* tools should be probably disabled).
For this purpose it is possible to appropriately set the [configuration of MapStore plugins](../../developer-guide/maps-configuration/#map-options) to exclude tools that could conflict with Google policies. Alternatively, it is possible to use a dedicated [application context](application-context.md#configure-plugins) to show Photorealistic 3D Tiles by including only the permitted tools within it.
-### Cloud Optimized GeoTIFF
+### COG Catalog
+
+A **Cloud Optimized GeoTIFF** ([COG](https://www.cogeo.org)) is a regular GeoTIFF file, aimed at being hosted on a HTTP file server, with an internal organization that enables more efficient workflows on the cloud environment. It does this by leveraging the ability of clients issuing HTTP GET range requests to ask for just the parts of a file they need.
+
+MapStore allows to add COG layers (also as a background) through its *Catalog* tool where a specific source type can be configured as follows by specifying the URL of a reachable COG `.tif` resource.
+
+In **General Settings** of a COG source type, it is possible to specify the service `Title` and its `URL`.
-A Cloud Optimized GeoTIFF (COG) is a regular GeoTIFF file, aimed at being hosted on a HTTP file server, with an internal organization that enables more efficient workflows on the cloud. It does this by leveraging the ability of clients issuing HTTP GET range requests to ask for just the parts of a file they need.
-MapStore allows to add COG as layers and backgrounds. Through the Catalog tool, a multiple url sources of COG are obtained and converted to layers as each url corresponds to a layer
+
diff --git a/docs/user-guide/img/catalog/cog_service.jpg b/docs/user-guide/img/catalog/cog_service.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..05b7797b9c1a62ff197536b829974b6b0cc0a77f
GIT binary patch
literal 19615
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