|
CartoType API
|
#include <cartotype_projection.h>
Public Member Functions | |
| TCoordinateTransformParam (int32 aScale) | |
| TResult | Read (TDataInputStream &aInput) |
Public Attributes | |
| TTransformFP | iTransform |
| int32 | iScale |
| bool | iInputIn64ths |
| bool | iProjectFromMeters |
The generic coordinate transform parameter class, with parameters valid for and settable by all projections and other coordinate transformations.
True if input is in 64ths of degrees, not whole degrees.
True if projecting from meters, not from latitude and longitude.
The ratio between input units and output units (pixels). Input units are interpreted as 16.16 fixed-point numbers. Thus they will either be whole degrees or units of 65,536 meters or 65.536 km.
If input units are degrees, and there are 40 pixels to a centimetre, and 111 km to a degree (say), if we want a scale of 1:100000 the scale should be 4440: that is, one degree = 4440 pixels. Thus, in general, we calculate iScale = (size of degree / size of pixel / desired scale ratio), using the same units for size of degree and size of pixel.
If input units are meters, use the same calculation but use a false degree size of 65,536 meters. Thus iScale = 2621 for 1:100000 in these circumstances.
Transformation applied after the projection, for example, to move pixels to their correct place in the display coordinate system.
1.7.5.1