-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add map components documentation #97
Changes from 13 commits
5d25591
150f6d3
80f5f51
43b8877
dba78b4
343ce10
2542170
49a9567
9fe36d8
176e6e4
6c86d4b
694db46
e6fd90e
fabeb34
f4bd84b
b7069a6
d1f51dd
67adb0c
fa2fbf4
89649ea
00832e2
1523ba8
48d0ba9
39d0c64
9f4f2ef
b0af347
8f3dd7e
c833919
1f20040
302b0b9
9868cb7
c76f66c
371f9f8
c5a2909
73a7f60
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Add short summary of the common map viewers There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Added. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
--- | ||
id: map-viewers-overview | ||
slug: map-viewers-overview | ||
title: Map viewers | ||
sidebar_position: 1 | ||
tags: | ||
- map-viewers | ||
- viewers | ||
- overview | ||
--- | ||
|
||
There are so many map viewers out there, how do you choose the best one for your needs? | ||
Here we attempt to help you make this decision. | ||
|
||
Disclaimer: | ||
Everything written in this knowledge base is based on our research of selected well known map viewers. We do not attempt to recommend one as the best, but give you all the information we believe you need in order to make a better decision based on your use case. | ||
Some of the viewers may be incompatible with some of our data or services and will require additional adjustments in order to consume them (for some it may not be possible at all). | ||
|
||
So lets get started! | ||
|
||
## What is a map viewer / component? | ||
|
||
A map viewer is a visual component to help us display `geographic` data such as raster, vector, 3D and DEM. It does all of the heavy-lifting in fetching, calculating and displaying the data correctly. | ||
|
||
There are many features that a map viewer could implement, please read more about the different libraries and features [here](/docs/KnowledgeBase/MapViewers/map-components.md). |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
{ | ||
"position": 2 | ||
} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. N There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. A |
netanelC marked this conversation as resolved.
Show resolved
Hide resolved
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Change this map to be There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Start the page with inline TOC There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I tried it out and I think that adding a There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I made the change with |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,134 @@ | ||
--- | ||
id: map-viewers-features | ||
slug: map-viewers-features | ||
title: Map viewers Features | ||
sidebar_position: 2 | ||
tags: | ||
- map-viewers | ||
--- | ||
|
||
In this page we list some features that you may be interested in and show which map viewers support them. | ||
|
||
## Map viewers reviewed in this page | ||
shimoncohen marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Cesium - [Docs](https://cesium.com/learn/cesiumjs-learn/), [Playground](https://sandcastle.cesium.com/) | ||
|
||
Leaflet - [Docs](https://leafletjs.com/reference.html), [Examples](https://leafletjs.com/examples.html), [Playground](https://codesandbox.io/s/leaflet-playground-8riog) | ||
|
||
OpenLayers - [Docs](https://openlayers.org/en/latest/apidoc/), [Examples](https://openlayers.org/en/latest/examples/), [Playground](https://codesandbox.io/examples/package/openlayers) | ||
|
||
EsriJS - [Docs](https://developers.arcgis.com/javascript/latest/), [Examples](https://developers.arcgis.com/javascript/latest/sample-code/), [Playground](https://developers.arcgis.com/javascript/3/samples/playground/) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. arcgis sdk not esrijs There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fixed. |
||
|
||
iTowns - [Docs](https://www.itowns-project.org/), [Examples](http://www.itowns-project.org/itowns/examples/index.html) | ||
|
||
Mapbox - [Docs](https://docs.mapbox.com/mapbox-gl-js/guides/), [Examples](https://docs.mapbox.com/mapbox-gl-js/example/), [Playground](https://docs.mapbox.com/playground/) | ||
|
||
deck.gl - [Docs](https://deck.gl/docs), [Examples](https://deck.gl/examples) | ||
|
||
Maplibre-gl-js - [Docs](https://maplibre.org/maplibre-gl-js/docs/API/), [Examples](https://maplibre.org/maplibre-gl-js/docs/examples/) | ||
|
||
## Projections | ||
|
||
If you don't know what a `projection` is, please read more [here](/docs/KnowledgeBase/terms#mapping), or on [wikipedia 🌐](https://en.wikipedia.org/wiki/Map_projection). | ||
|
||
| **Viewer** | **EPGS:4326** | **EPSG:3857** | **Supported projections** | **Can reproject** | **Notes** | | ||
| ----------- | ----------- | ----------- | ----------- | ----------- | | ||
| Cesium | ✅ | ✅ | [Projections](https://cesium.com/learn/cesiumjs/ref-doc/MapProjection.html) | ✅ | | | ||
| Leaflet | ✅ | ✅ | [Projections](https://leafletjs.com/reference.html#projection) | ❌ | | | ||
| OpenLayers | ✅ | ✅ | [Projections](https://openlayers.org/en/latest/apidoc/module-ol_proj_Projection-Projection.html) | ✅ | Supports all EPSG | | ||
| EsriJS | ✅ | ✅ | [Projections](https://pro.arcgis.com/en/pro-app/latest/help/mapping/properties/list-of-supported-map-projections.htm) | ✅ | Supports all EPSG | | ||
| iTowns | ✅ | ❌ | [Projections](https://www.itowns-project.org/itowns/docs/tutorials/Fundamentals.html) | | | | ||
| Mapbox v1 | ❌ | ✅ | [Projections](https://docs.mapbox.com/mapbox-gl-js/guides/projections/) | | | | ||
| Mapbox v2 | ➖ Not tested yet go to projection https://docs.mapbox.com/mapbox-gl-js/api/map/ | ✅ | [Projections](https://docs.mapbox.com/mapbox-gl-js/guides/projections/) | ❌ | | | ||
| deck.gl | ❌ | ✅ | [Projections](https://deck.gl/docs/developer-guide/views) | | | | ||
| Maplibre-gl-js | ❌ | ✅ | | | | | ||
|
||
## Raster | ||
|
||
### Supported data types and protocols | ||
|
||
| **Viewer** | **WMS** | **Can read WMS capabilities** | **WMTS** | **Can read WMTS capabilities** | **Tile Layer** | **GeoTiff** | **COG** | | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. parse There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What do you mean? |
||
| ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | | ||
| Cesium | ✅ | ❌ | ✅ | ❌ | ✅ | | | | ||
| Leaflet | ✅ | ❌ | ✅ | ➖ Possible with package or TileLayer Hack | ✅ | | | | ||
| OpenLayers | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Added. |
||
| EsriJS | ✅ | | ✅ | ✅ | | | | ||
| iTowns | ✅ | | ✅ | ❌ | | | | ||
| Mapbox v1 | ✅ | | | | | | | ||
| Mapbox v2 | ✅ | | | | | | | ||
| deck.gl | ✅ | | ➖ With package or TileLayer Hack | | | | | ||
| Maplibre-gl-js | ✅ | | ➖ Through templating | | | | | ||
|
||
### Features | ||
|
||
| **Viewer** | **Bounds** | **Image Bands** | **Features** | | ||
| ----------- | ----------- | ----------- | ----------- | | ||
| Cesium | ✅ (By defining the layer's rectangle) | ➖ Supports opacity (Alpha) | ✅ GPUable | | ||
| Leaflet | ❌ | ➖ Supports opacity (Alpha) | ✅ GPUable (only via CSS animations) | | ||
| OpenLayers | ✅ (BBOX extent) | ✅ | ✅ Preload tiles <br/> ✅ GPUable | | ||
| EsriJS | ✅ (BBOX extent) | ➖ Supports opacity (Alpha) | | | ||
| iTowns | | ❌ | ✅ Immersive view (Street view) <br/> ✅ GPUable | | ||
| Mapbox v1 | | | ✅ GPUable | | ||
| Mapbox v2 | | | ✅ GPUable | | ||
| deck.gl | | | ✅ GPUable | | ||
| Maplibre-gl-js | ✅ (Array of numbers) | ➖ Supports opacity (Alpha) | ✅ GPUable | | ||
|
||
## 3D | ||
|
||
| **Viewer** | **3D Tiles** | **I3S** | **Point cloud** | **Features** | | ||
| ----------- | ----------- | ----------- | ----------- | ----------- | | ||
| Cesium | ✅ | ✅ | ✅ | - Control sun and atmosphere<br/>- Custom lightings | | ||
| Leaflet | ❌ | ❌ | ❌ | | | ||
| OpenLayers | ❌ | ❌ | ❌ | | | ||
| EsriJS | ❌ | ✅ | ✅ | Custom lightings | | ||
| iTowns | ✅ | ❌ | ✅ | Sun simulation | | ||
| Mapbox v1 | ❌ | ❌ | ❌ | | | ||
| Mapbox v2 | ❌ | ❌ | ❌ | | | ||
| deck.gl | ✅ | ✅ | ✅ | Custom lightings | | ||
| Maplibre-gl-js | | | | | | ||
|
||
## DEM | ||
|
||
### Terrain | ||
|
||
| **Viewer** | **QMesh** | **Raster DEM** | **Skyline terrain** | | ||
| ----------- | ----------- | ----------- | ----------- | | ||
| Cesium | ✅ | ❌ | ✅ (With plugin) | | ||
| Leaflet | ❌ | ❌ | | | ||
| OpenLayers | ❌ | ❌ | | | ||
| EsriJS | ❌ | ➖ (ESRI format) | | | ||
| iTowns | ❌ | ✅ | | | ||
| Mapbox v1 | ❌ | | | | ||
| Mapbox v2 | ❌ | ✅ | | | ||
| deck.gl | ❌ | ✅ | | | ||
| Maplibre-gl-js | | ✅ | | | ||
|
||
## Vector | ||
|
||
### Supported data types and protocols | ||
|
||
| **Viewer** | **WFS** | **GeoJSON** | **Features** | **Drawing** | | ||
| ----------- | ----------- | ----------- | ----------- | | ||
| Cesium | ❌ No native support but feasible | ✅ | ✅ | ✅ | | ||
| Leaflet | ❌ No native support but feasible | ✅ | ✅ 2D<br/>❌ 3D | ✅ | | ||
| OpenLayers | ✅ | ✅ | ✅ 2D<br/>❌ 3D<br/>✅ OpenLayers symbology<br/>✅ Mapbox symbology adapter | ✅ With complex symbology | | ||
| EsriJS | ✅ | ✅ | | | | ||
| iTowns | ✅ | ✅ | ✅ 2D<br/>✅ 2.5D<br/>❌ 3 | ✅ Simple symbolog | | ||
| Mapbox v1 | | ✅ | ✅ 2D<br/>✅ 2.5D<br/>❌ 3 | ✅ With complex symbolog | | ||
| Mapbox v2 | | ✅ | ✅ 2D<br/>✅ 2.5D<br/>❌ 3 | ✅ With complex symbolog | | ||
| deck.gl | ❌ | ✅ | | | | ||
| Maplibre-gl-js | | | | | | ||
|
||
### Vector Tiles | ||
|
||
| **Viewer** | **Query** | **Symbology** | **OGC Vector Tiles** | | ||
| ----------- | ----------- | ----------- | ----------- | | ||
| Cesium | ❌ | ❌ | ❌ | | ||
| Leaflet | ❌ | | ❌ | | ||
| OpenLayers | ✅ | ❌ | ✅ | | ||
| EsriJS | ✅ | ✅ | ❌ | | ||
| iTowns | ✅ | ❌ | ❌ | | ||
| Mapbox v1 | ✅ | ✅ But for v1 | ❌ | | ||
| Mapbox v2 | ✅ | ✅ | ❌ | | ||
| deck.gl | ✅ | ❌ | ❌ | | ||
| Maplibre-gl-js | | ✅ | | |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
{ | ||
"label": "Knowledge Base", | ||
"position": 1, | ||
"link": { | ||
"type": "generated-index", | ||
"description": "MapColonies Knowledge Base" | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Swap between
what is map compontent
and whining about so manyThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Swapped.