Opened 5 years ago
Last modified 3 years ago
#2255 closed enhancement
WMS does not work with two partially overlapping layers — at Version 5
Reported by: | Bang Pham Huu | Owned by: | Bang Pham Huu |
---|---|---|---|
Priority: | major | Milestone: | 11.0 |
Component: | petascope | Version: | 9.8 |
Keywords: | Cc: | Dimitar Misev, Vlad Merticariu | |
Complexity: | Medium |
Description (last modified by )
If two WMS layers are overlaid from WMS clients but they don't intersect completely from grid domains, then rasql will show error, e.g:
sdom(BlueMarbleCov): [0:17999,0:8999] sdom(Germany_2D_B04_10m): [0:5000,0:5000]
SELECT ENCODE( ( Scale( ( ( c1[5473:5972, 1145:1787] ) ), [0:255, 0:255] ) ) OVERLAY ( Scale( ( ( c0[9984:10054, 1828:1898] ) ), [0:255, 0:255] ) ) , "png", FROM BlueMarbleCov AS c0, Germany_2D_B04_10m AS c1
with error
Reason: The subset extent [5473:5972,1145:1787] extends outside the array extent [0:5000,0:5000]
It will need to enhance in WMS with:
- If a subset is within the collection's grid domain, use the current implementation.
- If a subset only intersects with the collection's grid domain, it needs to use extend, e.g:
rasql -q 'select extend(c[0:20,0:50], [0:255,0:255]) from BlueMarbleCov as c'
- If a subset is outside of collection's grid domain, then no need to create a null grid domains for this collection as it is not used.
Change History (5)
comment:1 by , 5 years ago
Owner: | set to |
---|---|
Status: | new → assigned |
Summary: | WMS - does not work with two partially overlapping layers → WMS does not work with two partially overlapping layers |
comment:2 by , 5 years ago
Milestone: | 10.0 → 11.0 |
---|---|
Priority: | critical → minor |
Type: | defect → enhancement |
comment:3 by , 5 years ago
WMS client can support this case by adding separated layers (the overlaying will be done by WMS client), e.g: with openlayers to request 2 different layers with different UTM zones:
new ol.layer.Tile({ source: new ol.source.TileWMS({ url: "http://localhost:8082/rasdaman/ows", params: {'LAYERS': 'utm31_2d_wgs84,'} }) }), new ol.layer.Tile({ source: new ol.source.TileWMS({ url: "http://localhost:8082/rasdaman/ows", params: {'LAYERS': 'utm32_2d_wgs84'} }) })
comment:4 by , 3 years ago
Priority: | minor → major |
---|
comment:5 by , 3 years ago
Description: | modified (diff) |
---|
Note:
See TracTickets
for help on using tickets.
This is a new feature actually in WMS which allows to return result from 2 layers in different domains.