this bug's URL: http://intevation.de/rt/webrt?serial_num=5454
Request number 5454 was commented on by 'hbowman' (Hamish Bowman).
Responding to this message will send mail to the requestor.
Request Tracker
rt@intevation.de
--------------------------------------------------------------
Cc: grass-dev@grass.itc.it
here it is:
ps.map/map_setup.c
/* set the scale */
if (!PS.scaletext[0]) sprintf(PS.scaletext, "1 : %.0f",
39.37 * 72.0 * (PS.w.east - PS.w.west) / PS.map_pix_wide);
that assumes east-west is in meters. It should be using the distance()
fn to return distance in meters like ps.map/scale.c does.
39.37 is meters->inches; 72.0 is inches to PostScript units (points, as
in font size of 10 is 10/72" tall when printed)
do_scalebar.c was assuming input segment length was in meters too.
should be:
/* convert scale size to map inches */
length = (sb.length / scale_size) *
G_database_units_to_meters_factor() * METERS_TO_INCHES;
This could very well be what is breaking the scale for lat/lon:
http://intevation.de/rt/webrt?serial_num=3096
(although due to curvature that will never be correct for both dims)
Hamish
-------------------------------------------- Managed by Request Tracker