Daniel Werner | 10 Oct 01:50 2011

Openlayers image layer enhancements


recently I have been fixing the Maps extension openlayers image feature 
to use images as maps again (the feature was broken around Maps 1.0).

Besides fixing the feature for the next version of maps, I also have 
implemented the following features:
* Additional parameters on layer pages (unit, maxScale, minScale) to 
better control how the map is being displayed.
* Markers can have a group, each group is represented as one overlay 
layer and has its own marker colour (for default markers).
* the display_ functions/tags using a layer: page store this in the 
database (didn't require any database extension!), layer: pages show 
which pages are using the layer and pages using a layer will be purged 
when the layer changes.

now I am writing because I am planing on implementing some more features 
which I need some opinion on:


1. I don't like that layer: pages only allows layer definitions but no 
wiki text around it. So I thought about wrapping all into one tag, 
Jeroen suggested something like this:
<layer type="image" service="openlayers">
(Continue reading)

Daniel Werner | 11 Oct 21:25 2011

Re: Openlayers image layer enhancements (4. layer groups)


I thought a little more about that:

> 4. Layer groups:
> All the other map types like bing or google already bring several maps
> if you write
> <display_map service="openlayers" layers="bing"></display_map>
> for example, you get the Bing Streets, Bing Satellite and Bing Hybrid.
> For some image layers, I want the same. Think about a image of a
> location from different time periods for example. Instead of listing
> them all in 'layers', you should just have to call the group name and
> all of them should be available as base layers.

I think instead of a db or subpage solution, perhaps a solution where 
you could define several <layer> sections in one page would be even 
better. We could introduce a attribute vor <layer> called 'name' which 
gives the layer a name within the group.

if you write

<display_map layers="moon">0,0</display_map>

you will get all the layers defined on 'Layer:Moon' as base layers for 
this map. If you write

<display_map layers="moon|name">0,0</display_map>

you will just get the map defined on 'Layer:Moon' which has the 
attribute 'Name' with the value 'name' like:
(Continue reading)