Modulo:Maplink: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m aggiornati esempi
Riga 87:
if ((t[4] == 'S') or (t[4] == 'W')) then s = -1 end
return (s*(t1+t2/60+t3/3600))
end
 
-- Calcola gradi decimali
-- esempio chiamata di funzione {{#invoke:Maplink|gradi|numero gradi|numero primi|numero secondi|punto cardinale}}
function p.gradi(frame)
local t = getArgs(frame)
local t1 = tonumber(t[1]) or 0
local t2 = tonumber(t[2]) or 0
local t3 = tonumber(t[3]) or 0
local s = 1;
if ((t[4] == 'S') or (t[4] == 'W')) then s = -1 end
return (s*(t1+t2/60+t3/3600))
end
 
-- Genera il tag di maplink per un punto
--
-- Questo metodo è stato convertito da un template.
-- Per vedere il codice originale:
-- [[Speciale:PermaLink/88514901]]
function p.tagPunto( frame )
local args = getArgs( frame )
local lat = tonumber( args.lat )
local lon = tonumber( args.lon )
local zoomRaw = args.zoom
local zoom = zoomRaw and tonumber( zoomRaw ) or 13
local nome = args.nome or 'Posizione'
local icona = args.icona or 'circle'
local data = {
["type"] = "Feature",
["geometry"] = {
["type"] = "Point",
["coordinates"] = { lon, lat },
},
["properties"] = {
["title"] = nome,
["marker-symbol"] = icona,
["marker-color"] = "b80000",
},
}
local dataJson = mw.text.jsonEncode( data )
local tag = frame:callParserFunction{ name = '#tag:maplink', args = {
dataJson,
["zoom"] = zoom,
["latitude"] = lat,
["longitude"] = lon,
} }
return tag
end