I've been trying to understand how to keep the SIZEUNITS at 200 while the circles appropriately adjust based on zoom level.

Thought I had this working properly but turns out I did not.

You can see here that the circles start out quite small at the default zoom level when you load the OpenLayers map. As you zoom in, the circles aren't changing size. They should be as SIZEUNITS is set to 200. Of course, since you are zooming in, it seems like the circles are getting bigger on your screen, but they really are not.

When you get pretty zoomed in, what should happen is that the circles should be quite large (as we want to keep the radius of 100miles...set SIZEUNITS to 200 as this is the diameter). However, that is not the case as you can see here.

Is it necessary to use SYMBOLSCALEDENOM with SIZEUNITS to acheive what I want: keeping the 200mile diameter whilst the circles are changing size based on zoom? If so/if not, how do I go about this?

Link to mapfile layer here.


SYMBOLSCALEDENOM has effect when SIZEUNITS is not given (or is pixels) and specifies the reference scale. If you then specify the symbol's SIZE to 50, the symbol will have the size (height) 50 pixels at the given reference scale. It will be scaled proportionally when you zoom.

The SIzEUNITS parameter specifies what kind of units to use. If you use anything else than pixels (for instance meters), all symbol sizes in the layer will be specified in real world units, and will therefore cover the same area on the ground, no matter what scale you use for viewing.

See also http://mapserver.org/mapfile/layer.html

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.