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):

  1. Create a new map image and upload it to Wikimedia commons or find an existing map on the same site.
  2. Create a module named Module:Location map/data/location, copy the content below into it and substitute the appropriate values.
  3. 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.

return {

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 relief parameter.

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}}