Comments (2)
Just a clarification for the case "mapmlmultiextent: false; mapmlusefeatures:true; mapmlusetiles:true", specifically for the situation where multiple layers have been requested (not a single layer group).
In this case, one cannot use WMTS, even if each single layer is cached, because the protocol only allows one tile at a time, one cannot ask for a list of layers. This forces falling back to tiled WMS.
However, if the request is a group, and the group is tile cached, then yes, it can be handled as a single WMTS request instead.
from geoserver.
However, if the request is a group, and the group is tile cached, then yes, it can be handled as a single WMTS request instead.
Say a request comes in as follows: request=GetMap&format_options=mapmlmultiextent: false; mapmlusefeatures:true; mapmlusetiles:true&layers=a,b,c (your scenario above, basically)
where b is a layer group. I believe that I've specified that b should be de-nested and rendered as features within the one tile in order in the a,b,c stack, just as it would be if it was being rendered to a bitmap in a traditional WMS request (that was being cached as a tile).
What I wrote above for this situation is:
create singleton map-extent
if no tile cache
-> use tile-shaped GetMap as URL template
-> rel=tile type=text/mapml
-> URL template contains mapmlfeatures:true
-> generate rel=query map-link over WMS GetFeatureInfo, infoformat=text/mapml
else
-> use GetTile for text/mapml
-> generate rel=query map-link over WMTS GetFeatureInfo, infoformat=text/mapml
The map-extent would be generated to create 'tile-shaped GetMap requests'
<map-link rel=tile type=text/mapml tref="...GetMap&layers=a,b,c&format_options:mapmlfeatures:true...">
but I see that there is an 'else' above that says to use GetTile and I believe that is your concern. I think I could clarify that with further logic to clarify that using GetTile is only possible in the single-layer case. Am I correct, that's what you're saying?
from geoserver.
Related Issues (20)
- Feature type customization can prevent correct <featurecaption> serialization
- Update the <mapml-viewer> component to 0.11.0
- Add / change the default `<map-geometry cs="p|gcrs">` to include the correct `cs` attribute and value HOT 1
- Generate bounds from CRS does not work for MapML: CRS
- Style Group zoom bounds set by first NamedLayer in group. HOT 1
- A Style Group is only visible at the zoom range allowed by the first NamedLayer in the group
- Add the ability to serve tiles encoded with integer tile coordinates (pixels)
- Add the ability to change / set where the <map-style> element goes: in the tile or in the referencing text/mapml document
- Add the ability to 'unpack' and serve a layer group's layers as individual <map-extent> elements HOT 1
- Add the ability to send CSS that will render (some selected part of) a <map-feature> as a text label.
- Add the ability to render points as SLD-specified icons or symbols
- Add the ability to send CSS that intends to render the same geometry > 1 time, in different ways, to support e.g. double-line street casing
- Enable Transformation Functions for MapML styles
- Clip the feature returned by GetFeatureInfo
- Enable rel=features to return scale-appropriate features HOT 1
- Add the ability to request/view the GetCapabilities response as text/html with embedded MapML application(s)
- GetFeatureInfo on raster layer returns no feature
- Make "Use Tiles", "Use Features" and "Use Multiple Extents" into GetMap `format_options` values to text/mapml format, values passed by HTML preview generator HOT 1
- In response to GetMap, GetFeatureInfo with the `format_options=mapmlfeatures:true` parameter, add ability to recursively 'de-layer' a layergroup into a text/mapml document composed of its composite layers as features and tiles HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from geoserver.