Extension:MapSources

From Linux Web Expert

Revision as of 15:46, 26 July 2023 by imported>Yaron Koren (Another class fix)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

MediaWiki extensions manual
MapSources
Release status: stable
Implementation Parser function , Tag
Description Gives access to several data and mapping sources.
Author(s) Roland Unger
Latest version 1.8.0
MediaWiki 1.33+
Database changes No
License GNU General Public License 2.0 or later
Download
Quarterly downloads Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin').
Public wikis using Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin').
Translate the MapSources extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

The MapSources extension gives access to several data and mapping sources. It is one of the Wikivoyage extensions.

Installation

  • <translate> [[<tvar name=2>Special:ExtensionDistributor/MapSources</tvar>|Download]] and move the extracted <tvar name=name>MapSources</tvar> folder to your <tvar name=ext>extensions/</tvar> directory.</translate>
    <translate> Developers and code contributors should install the extension [[<tvar name=git>Special:MyLanguage/Download from Git</tvar>|from Git]] instead, using:</translate>cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/MapSources
  • <translate> Add the following code at the bottom of your <tvar name=1>LocalSettings.php </tvar> file:</translate>
    wfLoadExtension( 'MapSources' );
    
  • File:OOjs UI icon check-constructive.svg <translate> Done</translate> – <translate> Navigate to <tvar name=special>Special:Version</tvar> on your wiki to verify that the extension is successfully installed.</translate>


Special page

Customization

The Map Sources special page uses project:map sources as a form of template for the Special:MapSources page output. This project page uses place holders as described below. The base name of this project page is taken from the mapsources message string (MediaWiki:Mapsources) of the content language.

The text language will not be changed by the user language, it depends only on the content language. Therefore, you must have only one project page per wiki. If the project page does not exist, the extension will fail with an error:

Error messages:

  • No project page Источники карт available


URL and search parameters

Two different types of input parameter sets are accepted:

  • The Wikipedia Georeference code like
    • 51.5_N_0.125_W_scale:10000_region:UK
  • A comma- or semicolon-separated list of latitude, langitude, and parameters. Latitude and langitude can be written in decimal or sexagesimal forms, ie deg[°] [min['] [sec['']]] [N|S|E|W]. The parameters must be separated by spaces or underscores. The parameter name and its value are separated by a colon “:” or an equal sign “=”. Example:
    • 51.5,-0.125,scale:10000 region=UK

Parameters

scale:N

Sets the desired map scale as 1:N. This will override the default scale 1:100.000 or the type.

type:T

Sets the type of this location, which will be used for the reverse mapping of the points. Will also set the default map scale. Types are:

Type Description Scale
country (e.g. "type:country") 1:10,000,000
state Where applicable 1:3,000,000
adm1st Administrative unit of country, 1st level (province, county) 1:1,000,000
adm2nd Administrative unit of country, 2nd level 1:300,000
city City, town or village, unspecified population. Will be treated as a minor city. 1:100,000
mountain peaks, mountain passes 1:100,000
isle 1:100,000
waterbody Bays, fjords, lakes, glaciers, inland seas... 1:100,000
airport 1:30,000
landmark Cultural landmark, building of special interest, tourist attraction and other points of interest. 1:10,000

dim:D

Specifies the size of a location by meters. Not yet supported.

region:R

Sets the preferred map region of coverage, used in selecting appropriate map resources for the area. The region should be supplied as either a two character ISO 3166-1 alpha-2 country code, or an ISO 3166-2 region code. Examples:

  • US
  • DE
  • DE-BB (Brandenburg state in Germany)

globe:G

Specifies other worlds than earth. Such as Moon or other planets.

precision:P

Specifies the number of valid decimal places of the coordinate. Default value is 6.

Placeholders

Type Description
{latdegdec} Decimal value of the latitude like -0.125 or 51.5.
{latdegabs} Unsigned value of the latitude like 0.125 or 51.5.
{latdegint} Integer value of the latitude like 0 or 51.
{latmindec} Decimal value of the latitude's minute like 30.0 or 7.5.
{latminint} Integer value of the latitude's minute like 30 or 7.
{latsecdec} Decimal value of the latitude's second like 30.0 or 7.5.
{latsecint} Integer value of the latitude's second like 30 or 7.
{latNS} Latitude direction N or S.
{londegdec} Decimal value of the longitude like -0.125 or 51.5.
{londegabs} Unsigned value of the longitude like 0.125 or 51.5.
{londegneg} Negative decimal value of the longitude like 0.125 or -51.5.
{londegint} Integer value of the longitude like 0 or 51.
{lonmindec} Decimal value of the longitude's minute like 30.0 or 7.5.
{lonminint} Integer value of the longitude's minute like 30 or 7.
{lonsecdec} Decimal value of the longitude's second like 30.0 or 7.5.
{lonsecint} Integer value of the longitude's second like 30 or 7.
{lonEW} Longitude direction E or W
{scale} Scale
{mmscale} Multimap fixed scales
{altitude} MSN altitude = scale * 143/1000000
{zoom} Mapquest zoom 0 ... 9, 9 is approximately 1:6,000, 5 (default) is approximately 1:333,000, 2 is approximately 1:8,570,000
{span} Google and Tiger span = scale/1000000
{osmzoom} OSM zoom 0 ... 18, osmzoom = round (ld (5E8 / scale))
{osmzoommap} osmzoom - 1
{type} Location type (see above)
{region} Region code (see above)
{globe} Globe type (see above)
{params} Wikipedia Georeference parameter, for instance used by Geohack
{utmzone} Universal Transverse Mercator coordinate system using the WGS84 ellipsoid
UTM zone
{utmnorthing} UTM northing
{utmeasting} UTM easting
{utmerror} UTM out-of-range error message
{utm33northing} UTM for zone 33
UTM northing
{utm33easting} UTM easting
{utm33error} UTM out-of-range error message
{osgb36ref} OSGB36, British national grid reference system using the Airy 1830 ellipsoid
UK Ordnance Survey reference
{osgb36northing} OSGB36 northing
{osgb36easting} OSGB36 easting
{osgb36error} OSGB36 out-of-range error message
{ch1903northing} CH1903, Swiss coordinate system (Swiss grid) using the 1841 Bessel ellipsoid
CH1903 northing
{ch1903easting} CH1903 easting
{ch1903error} CH1903 out-of-range error message
{nztmnorthing} New Zealand NZTM2000, New Zealand coordinate system using the WGS84 ellipsoid
NZTM2000 northing
{nztmeasting} NZTM2000 easting
{nztmerror} NZTM2000 out-of-range error message


Approximation of the Universal Transverse Mercator conversion

This program uses Redfearn’s formulae to convert a given latitude and longitude into the equivalent Transverse Mercator (TM) coordinates.

Meridian Distance

The Meridian Distance m from the equator is given approximately by:

<math>\begin{align} m &= r \left( \left( 1 - \frac{e^2}{4} - \frac{3}{64}e^4 - \frac{5}{256}e^6 \right) \varphi - \left( \frac{3}{8}e^2 + \frac{3}{32}e^4 + \frac{45}{1024}e^6 \right) \sin(2 \varphi) \right. \\ &+ \left. \left( \frac{15}{256}e^4 + \frac{45}{1024}e^6 \right) \sin(4 \varphi) - \left( \frac{35}{3072}e^6 \right) \sin(6 \varphi) \right) \end{align} </math>

where are

  • r - the size of the major semi axis
  • e - the eccentricity of the reference ellipsoid
  • φ - the latitude in radian

Calculation of Northing and Easting

Parser functions

Usage

dd2dms

  • dd2dms converts degrees to degree-minute-second format. It uses the required coordinate and the optional plus, minus and precision values.
    • Application: {{#dd2dms: 14.5|plus=String for the positive cardinal direction|minus=String for the negative cardinal direction|precision=decimal places}}
    • Example: {{#dd2dms: 14.58|precision=4}} gives {{#dd2dms: 14.58|precision=4}}
    • Example: {{#dd2dms: 14.58|precision=2}} gives {{#dd2dms: 14.58|precision=2}}

Degree values can be both sexagesimal and decimal.

Strings for the cardial directions will be added to the dms value. They can be empty, single letters or strings and will be added at the end of the conversion result. If the original value is graeter or equal zero, the plus string is added, otherwise the minus string is used.

deg2dd

  • deg2dd converts degrees to decimal-degree format.
    • Application: {{#deg2dd: 14° 23' 45''|precision=decimal places}}
    • Example: {{#deg2dd: 14° 23' 45'' S|precision=3}} gives {{#deg2dd: 14° 23' 45'' S|precision=3}}


Sexagesimal coordinate format

You can enter coordinates in the sexagesimal system in the following way:

deg[°] [min['] [sec['']]] [N|S|E|W]

deg, min, sec mean the degree, minute and second values, respectively. The designations can be omitted, but the succession must be kept.

There are alternative characters for the designations in the following way:

Meaning Characters
Degree °
Minute ' ‘ ’ ′
Second " '' “ ”
Minus - −


External links


References

  • Redfearn’s formulae
    Redfearn, J.C.B. : Transverse Mercator Formulae. In: Empire Survey Review <London> 9,69 (July 1948), pp. 318 ‒ 322.
  • Approximation using power series
    Hofmann-Wellenhof, Bernhard ; Lichtenegger, Herbert ; Collins, James : Global positioning system : theory and practice. – Wien [u.a.] : Springer, 2001.