-
Notifications
You must be signed in to change notification settings - Fork 381
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
ArcGIS Interoperability #10040
Comments
These two public services have been used during development of the arcgis support so far: More specifically:
These can also be used for easier testing when development is concluded. |
The current state of development is the following (updating this post as progress is made):
Specific issues:
|
@tdipisa @Igi-ID Some feedback:
just pushed some initial code to support arcgis mapserver layer on Cesium and Leaflet see 92eadf0 on dev_10040 so please push the code locally. The Leaflet implementation is not currently supporting tiling but for the moment we could skip this but we should ensure the Cesium implementation is working properly.
If the mapserver does not support pagination we should use a similar approach to the WMS one where we simulate the pagination and filter client side
Do you have an url example? Probably this case need to use a sort of TMS approach, looking at the Cesium code it is possible to request cached tiles stored in the tileInfo property. We should verify if it's the case.
I think it's fine for the moment to prevent the selection of the identify but I would like to understand where it has been hardcoded, could you please share the hardcoded part?
Did you try to use a point geometry without reconstruct a small bbox based on scale level? I'm seeing this implementation with an implementation similar to WMS but probably it's not needed maybe we could use lat and long from center property and use the supported geometry point available in MapServer query
Could you provide steps to reproduce this?
Could you double check if this has been solved with my new commit? I think this is not needed because we are not rendering features client side, the source is based on image tiles and not vector
I think it's missing an additionl request to the layer id endpoint to get layer metadata, we can place this request in the addLayerAndDescribeEpic. This action is triggered when the layer is added from catalog so we can add an if statement for arcgis with the request to layer.url/layer.name. This endpoint should contain all the needed info for bounding box and probably also if the layer is queryable or not, at the moment we expect at minimum the following information for the layer: {
type: 'arcgis',
url: '/rest/MapServer',
name: '0',
visibility: true,
opacity: 1,
bbox: { ... }
} Note: please does not pass the id of the layer so mapstore is able to create a uuid
Zoom to feature is not working because is missing the bbox property in the layer options
Could you explain this issue with replicable steps? |
I'll update this post when some answers are better formed.
Noted on both points above. Thank you for bringing up server side pagination, I'll re-check that and proceed accordingly.
http://www.pcn.minambiente.it/arcgis/rest/services/immagini/IGM_25000/MapServer
Good pointer, will retest
My report on the issue is incomplete and badly phrased. It's essentially this reported bug: #10227 namely, when we put layers into a group and select the group in the panel, GFI will resolve with 'No active queryable layer'.
Solved indeed.
Great pointer, making the adjustments.
So related to the point above as expected, will retest when bbox is available
This is also a case of bad phrasing, the issue is related to the
add.layer.to.selected.group.mp4 |
…upport (#10330) --------- Co-authored-by: Igor Dimov <[email protected]>
This also is another one available for testing: |
Description
It is requested to improve on the interoperability to support better ArcGIS services in MapStore. This issue involves two main activities for which the following task is in common:
ArcGIS WMS Server interoperability for GetFeatureInfo requests
Thanks to #9048, the
serverType
property has been recently added in MapStore to define which type of server is providing the WMS service.It should be possible to use this option to exclude the
exceptions
parameter not supported in an ArcGIS WMS service.During the development phase it is requested to evaluate if it is necessary an additional serverType or the
NO_VENDOR
type used also by other services is enough.Possibly also hide some functionalities not supported by WMS endpoint that does not support GetFeatureInfo application/json responses with geometry, to do so it is necessary also to store the information related to the list of supported get feature info responses.
Some notes about findings from the preliminary investigation:
agsnotfed2/rest/services/Test/country_4m/MapServer
show that the WMS/WFS capabilities endpoint used two different name for the layer (0/country_4m:apgispaudw.common_data.country_4m) and this makes even difficult to associate them manually (but maybe this is only a configuration problem).Involved sub tasks are:
ArcGIS MapServer Catalog and Layer support
The work for this task focus on the support of ArcGIS MapServer endpoints inside MapStore. The task should include following improvement inside MapStore:
Some notes about findings from the preliminary investigation:
subLayerIds
andparentLayerId
have effect on the visualization in mapmaxScale
andminScale
properties of a layer to set the visibility limits. In general we should take a look to all the property available in the layer object/MapServer/{layerId}
to get additional information about the specific layer/MapServer/{layerId}/query
(POST) for Get Feature InfoInvolved sub tasks are:
Acceptance criteria
Other useful information
Here a branch where a base implementation sa been tested during the preliminary evaluation of this work. That should be completely refactored to be accepted in MapStore, take this just as a prototype.
The text was updated successfully, but these errors were encountered: