Template:Location map/Creating a new map definition
{{Wikipedia how-to}}
This guides explains how to create map definitions for the {{tlf|Location map}} family of templates.
__TOC__
Map definition data
{{expand section|date=August 2011}}
The templates utilize any one of a set of map definitions. These are not forks but rather auxiliary pages and must have names following the pattern "Module:Location map/data/location" or "Template:Location map location", where location is the name of the area covered by the map. The template space is supported only for backward compatibility; all new map definitions should be created as modules. Important: If a new map has the same projection and boundaries as the old map (such as :File:Iraq location map.svg and :File:Iraq location map2.svg), a new definition should not be created; instead, the old definition should be used with the AlternativeMap parameter. To create a simple map definition module using an image of a map with an equirectangular projection having the equator as its standard parallel (aka plate carrée, “unprojected”, lat/lon projection):
- Create a new map image and upload it to Wikimedia commons or find an existing map on the same site.
- Create a module named Module:Location map/data/location, copy the content below into it and substitute the appropriate values.
- Create a page named Module:Location map/data/location/doc and follow the instructions under #Documentation.
As an example of a map that uses an equirectangular projection, we use Module:Location map/data/Belgium. Please do not experiment using active templates.
name = 'Belgium',
top = 51.8,
bottom = 49.2,
left = 2.2,
right = 6.9,
image = 'Belgium location map.svg',
image1 = 'Belgium relief location map.jpg'
}
class="wikitable" style="width: 50%;"
! Parameter ! Description |
name
| The name of the area covered |
top
| The latitude of the top edge of the image using decimal degrees |
bottom
| The latitude of the bottom edge of the image |
left
| longitude of the left edges of the image |
right
| longitude of the right edges of the image |
image
| The name of the image file on Commons |
image1
| The name of an alternate image, usually a relief map, which can be accessed using the |
Maps of this type will work for small to mid sized areas. Module:Location map/data/USA Alabama is another example of a map description that uses an equirectangular projection. Notice that the image of the country is not what most would expect.
= Advanced projections =
Maps that use other projections, such as Module:Location map/data/USA, which uses an equidistant conic projection. require formulas which are used to calculate the x
and y
coordinates for the location mark. Understanding these formulas requires a familiarity with the subject, so you are more than welcome to skip this section.
The input $1 is the latitude and $2 is the longitude, both in decimal form. The expression follows the syntax of ParserFunction "#expr". The two output coordinates are defined such that the formula for x
evaluates to 0 for the left edge of the image and 100 for the right edge; the formula for y
evaluates to 0 for the top edge and 100 for the bottom edge.
Documentation
It is easiest to use the de facto template at Template:Location map data documentation to generate the documentation page. Here is another example of what the documentation might look like:
{{#tag:pre|
{{Location map data documentation|image=File:Belgium-CIA WFB Map.png
|examples=
= Location map, using default map (image) =
{{Location map | Belgium
| width = 200
| lat_deg = 50.85
| lon_deg = 4.35
| label = Brussels
}}
{{Location map | Belgium
| width = 200
| lat_deg = 50.85
| lon_deg = 4.35
| label = Brussels
}}
{{clear}}
= Location map many, using relief map (image1) =
{{Location map many | Belgium
| relief = yes
| width = 200
| caption = Two locations in Belgium
| lat1_deg = 50.85
| lon1_deg = 4.35
| label1 = Brussels
| lat2_deg = 51.22
| lon2_deg = 4.40
| label2 = Antwerp
}}
{{Location map many | Belgium
| relief = yes
| width = 200
| caption = Two locations in Belgium
| lat1_deg = 50.85
| lon1_deg = 4.35
| label1 = Brussels
| lat2_deg = 51.22
| lon2_deg = 4.40
| label2 = Antwerp
}}
{{clear}}
= Location map+, using AlternativeMap =
{{Location map+ | Belgium
| AlternativeMap = Belgium relief location map.jpg
| width = 200
| caption = Two locations in Belgium
| places =
{{Location map~ | Belgium
| lat_deg = 50.85
| lon_deg = 4.35
| label = Brussels
}}
{{Location map~ | Belgium
| lat_deg = 51.22
| lon_deg = 4.40
| label = Antwerp
}}
}}
{{Location map+ | Belgium
| AlternativeMap = Belgium relief location map.jpg
| width = 200
| caption = Two locations in Belgium
| places =
{{Location map~ | Belgium
| lat_deg = 50.85
| lon_deg = 4.35
| label = Brussels
}}
{{Location map~ | Belgium
| lat_deg = 51.22
| lon_deg = 4.40
| label = Antwerp
}}
}}
}}
Belgium location map templates
}}
= Parameters =
{{Excerpt|Template:Location map data documentation/doc|Parameters}}