Opened 17 years ago
Closed 17 years ago
#128 closed enhancement (fixed)
PATCH: OGR Provider,slight speedup and override of projections
Reported by: | traianstanev | Owned by: | traianstanev |
---|---|---|---|
Priority: | minor | Milestone: | 3.3.0 |
Component: | OGR Provider | Version: | 3.2.0 |
Severity: | 3 | Keywords: | |
Cc: | External ID: |
Description
This ticket reflects a patch submission by Kenneth. Here is his summary:
The attached file contains an improvement to the OGR Provider. The patch will avoid checking intersection in cases where the query type is a EnvelopIntersect. The current intersection check was added to ensure that the AJAX Viewers select and tooltip operations works. However, this check slows down the renderer because it performs an actual intersection test, which is not required for rendering.
Aditionally I have removed all "printf" commands from a non-debug build.
Lastly, I have added an option to supply coordinate system overrides on the provider. This is necessary for certain MI_TAB files, which use non standard WKT projections. It will read in a file named "projections.txt" from the server folder. The "projections.txt" file should be constructed like this (wkt is supposed to be full):
#System 34 S PROJCS....... 1.0] PROJCS....... 1.0]
Any blank line or line starting with # is ignored. Every two accepted lines are treated as a pair, where the first line is the WKT translated from, and the second line is the WKT translated to. It uses a std::map which will run in O(1) to find the projections.