Mark added a ReferencedEnvelopeCache; that produced a bounds for a given CoordianteReferenceSystem. We are using it to great effect for the generic GeoTools service/georesource.
Specifically it allows us to return some bounds from the info object quickly; rather then watch GeoTools do a table scan.
I will also cut WFS Service over to use these CRS bounds; so that WFS layers behave better when you draw new content outside of their origional "area".
Other changes made: - data can formally indicate it does not know its bounds (an empty ReferencedEnvelope) - If bounds are unknown the basic feature renderer will draw the current screen bounds
Remaining work: - check the map creation start up code and ensure it is happy with the idea of an empty ReferencedEnvelope
Discussion point/idea: - return bounds based on CRS quickly, start a thread to fetch the bounds in the background - cache bounds between runs - Service interceptor to allow applications feed in their own service title / bounds / etc... rather then rely on those produced
|