[Community] Re: FW: Re: [PrimaGIS and Cartographic Objects for Zope] #99: Style Validation Check for Combined Min/Max Scales wrong

Kai Hänninen kai.hanninen at mbconcert.fi
Mon Jul 3 14:37:50 EEST 2006

Sean Gillies wrote:
> On Jul 2, 2006, at 5:26 AM, Ludwig Max Brinckmann wrote:
>> >#99: Style Validation Check for Combined Min/Max Scales wrong
>> >-------------------------------------------+-------------------------------- 
>> >   Reporter:   ludwigbrinckmann at hotmail.com  |       Owner:  dokai
>> >       Type:  defect                        |      Status:  assigned
>> >   Priority:  minor                         |   Milestone:  PrimaGIS-0.6
>> >  Component:  PrimaGIS                      |     Version:  SVN
>> >Resolution:                                |    Keywords:  Styling
>> >-------------------------------------------+-------------------------------- 
>> >Comment (by dokai):
>> >
>> >  Revision r742 has a fix for this.
>> >
>> >  Note that the validation of the min/max scale values has not been 
>> changed
>> >  though. If we have two scales, say 1:20000 (the smaller scale) and
>> >1:10000
>> >  (the larger scale), then to have features rendered only within these
>> >  scales one would set
>> >
>> >   min scale = 1:20000
>> >   max scale = 1:10000
>> >
>> >  The problem was that PCL deals with scale denominators where the
>> >semantics
>> >  of min and max are the opposite.
>> I must say that I find this notation confusing, although technically 
>> of course you are right as we are dealing in fractions. I adapted my 
>> script to create my map to the new notation and it took me a few 
>> attempts to get it all right. I like to think it as a to-from range, 
>> eg. from 1:10000 to 1:20000, where min is 1:10000 and max is 1:20000.
>> If you are going to the edit pages, their layout suggests this: we 
>> like to have the smaller numbers (min) on the left, the larger numbers 
>> (max) on the right. Only if I read the columns right to left, they 
>> make sense to me.
>> As I said I cannot argue against the logic on a mathematical level and 
>> maybe it is just me. I would argue though that PCL and Primagis should 
>> come to an agreement on the meaning of this.
>> I had hoped that this would also solve the problem I reported a few 
>> days ago with rules (on the way to primagis 0.6). It doesn't, but I 
>> think the problem might be related.
>> Ludwig
> Yes, it's confusing. I suggest that when possible we try to have large 
> scales and increasing magnification to the left and small scales 
> (decreasing magnification) to the right. A map scale slider should be 
> presented like
>   [+].............[-]
>   zoom in    zoom out
> Ludwig, if we did the same for ranges
>   [zoomed_in, zoomed_out]
> would that help?
> I chose to have PCL deal in terms of denominators mainly because of the 
> SLD specification, but also because there is a tradition among GIS 
> practitioners of referring to the denominator when speaking about map 
> scale.

For me the issue of map scales is also a source of confusion sometimes 
particularly as I don't have a strong GIS backround. I really don't have 
a strong oppinion here and would gladly have PrimaGIS present the matter 
of configuring the scale thresholds in the most simple and easy-to-grasp 
way to the user (or Plone administrator).

The biggest problems concerning map scales (at least from my 
perspective) is the concept of ordering. So is the scale of 1:1000 less 
or more than 1:20000? I believe the official view is the same as the 
mathematical view where 1:1000 (= 0.0001) > 1:20000 (= 0.00005).

For the average user the 1:1000 (with the number 1000 in it) can easily 
seem less than 1:20000 (with the number 20000 in it) and that would lead 
one to assert that 1:1000 < 1:20000. I guess this is the reason for the 
tradition of using just the scale denominators, as Sean mentioned above.

This brings us to the next problem :) PCL uses the terms "min scale 
denominator" and "max scale denominator" to refer to the thresholds, but 
their meaning (at least to me) is somewhat ambigous and I believe this 
was what originally confused my and introduced the bug in PrimaGIS.

"min scale denominator" can (imo) be interpreted either as:

  1) The minimum of scale denominators
     >>> min_of_scale_denominators("1:1000", "1:20000")

  2) The denominator of the minimum scale
     >>> denominator_of_min_scale("1:1000", "1:20000")

Using just the denominators is fine by me as the fractional 
representation is mostly redundant. I do believe that the terminology 
should be made clearer though.

UI wise, the reason why I chose to represent the the min/max scale 
thresholds in the "1:XXXXX" format in the PrimaGIS UI is that this is 
what you see on paper maps. I felt that it would make it easier for 
users to manage them if they were similar to maps they might have had 
experience before. (It seems that I was wrong).

To me, PrimaGIS should currently works "right" when using the semantics 
of mathematical ordering, (e.g 1:1000 > 1:20000) and users would use 
something like:

   min scale threshold = 1:20000
   max scale threshold = 1:1000

Until we can agree on how to interpret and present the map scale 
thresholds to the users I don't see there's much we can do to "fix" it :)


Kai Hänninen                  +358-50-558-7935
Software engineer             www.mbconcert.fi
MB Concert Ky                 kai.hanninen at mbconcert.fi

More information about the Community mailing list