Module:Coordinates: Difference between revisions

Jump to navigation Jump to search
Content added Content deleted
(kill DM and D versions, don't need to repeat the same logic over and over)
No edit summary
Line 36: Line 36:
-- @frame
-- @frame
-- @returns a table with all information needed to display coordinates
-- @returns a table with all information needed to display coordinates
function parseDec( lat, long, spec, format )
function parseDec( lat, long, format )
local coordinateSpec = {}
local coordinateSpec = {}
local errors = {}
local errors = {}
Line 50: Line 50:
coordinateSpec["dms-lat"] = convert_dec2dms( lat, "N", "S", mode) -- {{coord/dec2dms|{{{1}}}|N|S|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}
coordinateSpec["dms-lat"] = convert_dec2dms( lat, "N", "S", mode) -- {{coord/dec2dms|{{{1}}}|N|S|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}
coordinateSpec["dms-long"] = convert_dec2dms( long, "E", "W", mode) -- {{coord/dec2dms|{{{2}}}|E|W|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}
coordinateSpec["dms-long"] = convert_dec2dms( long, "E", "W", mode) -- {{coord/dec2dms|{{{2}}}|E|W|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}
coordinateSpec.param = lat .."_N_" .. long .. "_E_" .. spec
if format ~= "" then
if format ~= "" then
Line 89: Line 88:
end
end


function parseDMS( lat_d, lat_m, lat_s, lat_f, long_d, long_m, long_s, long_f, format, spec )
function parseDMS( lat_d, lat_m, lat_s, lat_f, long_d, long_m, long_s, long_f, format )
local coordinateSpec = {}
local coordinateSpec = {}
local errors = {}
local errors = {}
Line 247: Line 246:
elseif args[4] == "" and args[5] == "" and args[6] == "" then
elseif args[4] == "" and args[5] == "" and args[6] == "" then
-- dec logic
-- dec logic
result, errors = parseDec( args[1], args[2], args['format'], args[3] )
result, errors = parseDec( args[1], args[2], args['format'] )
result.param = args[1] .."_N_" .. args[2] .. "_E_" .. args[3];
elseif dmsTest(args[4], args[8]) then
elseif dmsTest(args[4], args[8]) then
-- dms logic
-- dms logic
result, errors = parseDMS( args[1], args[2], args[3], args[4],
result, errors = parseDMS( args[1], args[2], args[3], args[4],
args[5], args[6], args[7], args[8], args['format'], args[9] )
args[5], args[6], args[7], args[8], args['format'] )
result.param = args[1] .. "_" .. args[2] .. "_" .. args[3] .. "_" .. args[4] .. "_".. args[5] .. "_" .. args[6] .. "_" .. args[7] .. "_" .. args[8] .. "_" .. args[9]
result.param = args[1] .. "_" .. args[2] .. "_" .. args[3] .. "_" .. args[4] .. "_".. args[5] .. "_" .. args[6] .. "_" .. args[7] .. "_" .. args[8] .. "_" .. args[9]
elseif dmsTest(args[3], args[6]) then
elseif dmsTest(args[3], args[6]) then
-- dm logic
-- dm logic
result, errors = parseDMS( args[1], args[2], nil, args[3],
result, errors = parseDMS( args[1], args[2], nil, args[3],
args[4], args[5], nil, args[6], args['format'], args[7] )
args[4], args[5], nil, args[6], args['format'] )
result.param = args[1] .. "_" .. args[2] .. "_" .. args[3] .. "_" .. args[4] .. "_".. args[5] .. "_" .. args[6] .. "_" .. args[7];
result.param = args[1] .. "_" .. args[2] .. "_" .. args[3] .. "_" .. args[4] .. "_".. args[5] .. "_" .. args[6] .. "_" .. args[7];
elseif dmsTest(args[2], args[4]) then
elseif dmsTest(args[2], args[4]) then
-- d logic
-- d logic
result, errors = parseDMS( args[1], nil, nil, args[2],
result, errors = parseDMS( args[1], nil, nil, args[2],
args[3], nil, nil, args[4], args['format'], args[5] )
args[3], nil, nil, args[4], args['format'] )
result.param = args[1] .. "_" .. args[2] .. "_" .. args[3] .. "_" .. args[4] .. "_".. args[5];
result.param = args[1] .. "_" .. args[2] .. "_" .. args[3] .. "_" .. args[4] .. "_".. args[5];
else
else