An apache module that converts a geospatial tile service from one projection and tiling grid to another
Requires apache httpd, libapr-1, libjpeg, libpng and zlib to be available for linking and at runtime. In linux this means the runtime and the development packages have to be installed. In Windows, the header files are expected to be in the zlib, png and jpeg subfolders in the same directory as the project files, and the httpd and apr in \Apache24\include. The libraries for all the above packages should be available in \Apache24\lib and \Apache24\bin
When reprojecting from GCS to WM or backwards, the input level gets chosen based on the relative resolution of the output tile and the input levels. There are two such values, calculated on the two axis. The lowest output resolution axis figure is chosen, it will fall between two input levels. By default, the slightly lower resolution input level is chosen, which will lead to the minimum number of input tiles, thus maximum performance. When the Oversample parameter is on, it chooses the next higher resolution input level, which in general will improve the output image sharpness, while degrading the performance slightly. At hight latitudes, for GCS to WM reprojection it might be necessary to use an even higher input resolution level. This can be done by using the ExtraLevels parameter, which takes a positive numerical value (defaults to 0). The allowed extra levels are only used when needed (at high latitudes). Use this setting with care, as it decreases performance considerably and increasing latency, processing and memory usage per request. The Oversample and ExtraLevels have slightly different purpose and can be combined, for example having oversample off while allowing one or two extra levels. They do interact however, the extra level implicit in the Oversample is added to the ones provided by ExtraLevels.
Implements two apache configuration directives:
Can be present more than once, one of the existing regular expressions has to match the request URL for the request to be considered
The first file contains the source raster information, while the second the desired configuration for the output
- Mandatory, at least x and y, the raster size in pixels, in both files
- Optional, the pagesize in pixels, in both files, defaults to 512x512
- Optional, WM and GCS are recognized.
- Required if not unsigned byte. Valid values are Byte, Int16, UInt16, Int32, UInt32. Case insensitive
- Optional, defaults to 0, counted from the top of the pyramid, in both files
- Optional, WMS style bounding box, defaults to 0 to 1 in both x and y. Floating point using decimal dot format, comma separated
- Mandatory, the location of the tile source, up to the numerical arguments, as a local web path suitable for a subrequest
- Optional, a literal string that gets appended to the source URL tile requests
- Size is required, Offset defaults to zero and filename defaults to sourcepath
- Output mime type, defaults to input format. image/jpeg or image/png. If specified, forces the output type
- A base32 64bit number, to be used as a seed for ETag generation
- Default is 1MB, should be larger than the maximum expected input tile size
- Default is 1MB, should be larger than the maximum expected output tile size
- A floating point figure, format dependent. Default for JPEG is 75. Default for PNG is 6
- If on and the output resolution falls between two available input resolution levels, the lower resolution input will be chosen instead of the higher one
- By default, mod_reproject avoids oversampling, which can generate stretched pixels in one direction. Turning oversample on picks the next higher resolution level. This parameter lets it use more higer resolution levels. It defaults to 0, the value is in addition to the one added by oversample (if on).
- If on, use nearest neighbor resampling instead of bilinear interpolation
- The planet radius in meters. Used in reprojection calculations. Defaults to earth major radius
If the input and output size and alignment match, it can be used to change quality or the format