In Implement TCRS subclass of CoordinateReferenceSystem we will implement a GeoTools class that allows (a developer) to encode the parameters of a custom TCRS and add it to GeoServer so that it is part of the Capabilities of WMS, WMTS and WFS services.
The MapML extension should allow the end user of WMS, WFS and WMTS to make standard protocol requests (GetMap, GetFeatureInfo, GetFeature, GetTile) using the relevant crs, srsName parameters with the custom TCRS name as the value, obtaining correct results in the designated TCRS.
The GeoServer MapML extension user interface should (already) allow the user to define a "custom projection" and assign it to the relevant services (WMS, WFS, WMTS), so that any layer that is requested as "text/mapml" will be serialized according to that TCRS. The MapML interface should allow layers associated to that gridset / tilematrixset to be accessed with that custom projection as an alternate, pretty much like a "well known" TCRS.
It must be possible to obtain an "application/mapml" response (i.e., with a text/html Content-type) from GeoServer that embeds the required client application (JavaScript) code to view data in the custom projection. It should be made possible for the user to designate such a response as the default layer preview MapML link from the Layer Preview page.
Background
In Implement TCRS subclass of CoordinateReferenceSystem we will implement a GeoTools class that allows (a developer) to encode the parameters of a custom TCRS and add it to GeoServer so that it is part of the Capabilities of WMS, WMTS and WFS services.
The \ implements the "Custom Projections" API, with examples here and here.
Requirement
The MapML extension should allow the end user of WMS, WFS and WMTS to make standard protocol requests (GetMap, GetFeatureInfo, GetFeature, GetTile) using the relevant crs, srsName parameters with the custom TCRS name as the value, obtaining correct results in the designated TCRS.
The GeoServer MapML extension user interface should (already) allow the user to define a "custom projection" and assign it to the relevant services (WMS, WFS, WMTS), so that any layer that is requested as "text/mapml" will be serialized according to that TCRS. The MapML interface should allow layers associated to that gridset / tilematrixset to be accessed with that custom projection as an alternate, pretty much like a "well known" TCRS.
It must be possible to obtain an "application/mapml" response (i.e., with a text/html Content-type) from GeoServer that embeds the required client application (JavaScript) code to view data in the custom projection. It should be made possible for the user to designate such a response as the default layer preview MapML link from the Layer Preview page.