Modulo:Discendenza/sandbox: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
mNessun oggetto della modifica
mNessun oggetto della modifica
Riga 1:
-- Modulo per la creazione di albero di discendenza
 
require('Module:No globals')
local getArgs = require('Module:Arguments').getArgs
Line 7 ⟶ 5:
local pers = {}
local tabella = {}
--[[
pers.padre = identificativo dell'elemento genitore
pers.testo = testo dell'elemento
pers.nota = informazioni aggiuntive
pers.id = numero d'ordine come figlio
pers.x = posizione orizzontale
pers.y = posizione verticale
pers.sp = spostamento relativo della ramificazione
pers.figli = identificativi dei figli
 
tabella[y] = { id1, id2, id3, ... }
elenco degli elementi sulla riga y della tabella
]]--
 
local function dividi(dati)
Line 131 ⟶ 116:
 
local function calcolaX1(pid) -- prima verifica di posizionamento
for i_, v in pairs(pers[pid].figli) do
local tt = 0
for i, v in pairs(pers[pid].figli) do
calcolaX1(v)
tt = i
end
if (tt#pers[pid].figli == 0) then -- non ha figli
if (pers[pid].padre == -1) then -- è capostipite
pers[pid].x = 0
Line 145 ⟶ 128:
pers[pid].x = pers[pers[pers[pid].padre].figli[pers[pid].id - 1]].x + 2
end
elseif (tt#pers[pid].figli == 1) then -- ha un figlio
if (pers[pid].padre == -1) then -- è capostipite
pers[pid].x = pers[pers[pid].figli[1]].x