Module:Infobox MOS: Difference between revisions

Ganaram inukshuk (talk | contribs)
bugfix incorrectly passing the long string as the input mos
Ganaram inukshuk (talk | contribs)
adopt mos operation functions
Line 279: Line 279:
-- a larger array.
-- a larger array.
function p.related_scales(input_mos)
function p.related_scales(input_mos)
local input_mos = input_mos or mos.new(5, 5)
local input_mos = input_mos or mos.new(5, 2)
local parent_mos = mos.new(math.min(input_mos.nL, input_mos.ns), math.abs(input_mos.nL-input_mos.ns), input_mos.equave)
local parent_mos, sister_mos, soft_child_mos, hard_child_mos, neutral_mos, soft_flought_mos, hard_flought_mos
local sister_mos = mos.new(input_mos.ns, input_mos.nL, input_mos.equave)
local soft_child_mos = mos.new(input_mos.nL+input_mos.ns, input_mos.nL, input_mos.equave)
parent_mos = mos.parent_mos(input_mos)
local hard_child_mos = mos.new(input_mos.nL, input_mos.nL+input_mos.ns, input_mos.equave)
sister_mos = mos.sister_mos(input_mos)
local neutral_mos = input_mos.nL>input_mos.ns and mos.new(input_mos.nL-input_mos.ns, input_mos.ns*2, input_mos.equave) or mos.new(input_mos.nL*2, input_mos.ns-input_mos.nL, input_mos.equave)
soft_child_mos, hard_child_mos = mos.child_mosses(input_mos)
local soft_floght_mos = mos.new(input_mos.nL*2+input_mos.ns, input_mos.ns, input_mos.equave)
neutral_mos = mos.neutralized_mos(input_mos)
local hard_floght_mos = mos.new(input_mos.nL, input_mos.ns*2+input_mos.nL, input_mos.equave)
soft_flought_mos, hard_flought_mos = mos.interleaved_mosses(input_mos)
local parent_scalesig = string.format("[[%s|%s]]", mos.as_long_string(parent_mos), mos.as_string(parent_mos))
local parent_scalesig = string.format("[[%s|%s]]", mos.as_long_string(parent_mos), mos.as_string(parent_mos))
Line 294: Line 294:
local hard_scalesig = string.format("[[%s|%s]]", mos.as_long_string(hard_child_mos), mos.as_string(hard_child_mos))
local hard_scalesig = string.format("[[%s|%s]]", mos.as_long_string(hard_child_mos), mos.as_string(hard_child_mos))
local neutral_scalesig = string.format("[[%s|%s]]", mos.as_long_string(neutral_mos), mos.as_string(neutral_mos))
local neutral_scalesig = string.format("[[%s|%s]]", mos.as_long_string(neutral_mos), mos.as_string(neutral_mos))
local soft_floght_scalesig = string.format("[[%s|%s]]", mos.as_long_string(soft_floght_mos), mos.as_string(soft_floght_mos))
local soft_floght_scalesig = string.format("[[%s|%s]]", mos.as_long_string(soft_flought_mos), mos.as_string(soft_flought_mos))
local hard_floght_scalesig = string.format("[[%s|%s]]", mos.as_long_string(hard_floght_mos), mos.as_string(hard_floght_mos))
local hard_floght_scalesig = string.format("[[%s|%s]]", mos.as_long_string(hard_flought_mos), mos.as_string(hard_flought_mos))
local number_of_periods = mos.period_count(input_mos)
local number_of_periods = mos.period_count(input_mos)