Draw trains

Trains get drawn now as small circles, the line number gets drawn next
to the train. Moving trains are green, stopped trains are orange.
This commit is contained in:
Gabriel Pérez-Cerezo 2019-02-21 12:29:00 +01:00
父節點 b6c5604dcf
當前提交 61fbbc5909

查看文件

@ -100,7 +100,7 @@ if type(tbl) ~= "table" then
error("not a table") error("not a table")
end end
if tbl.version then if tbl.version then
advtrains.trains = tbl.trains
advtrains.ndb.load_data(tbl.ndb) advtrains.ndb.load_data(tbl.ndb)
else else
@ -302,7 +302,23 @@ while stpos do
stpos, conns = advtrains.ndb.mapper_find_starting_point() stpos, conns = advtrains.ndb.mapper_find_starting_point()
end end
-- draw trains
trains = 0
for i,v in pairs(advtrains.trains) do
pos = v.last_pos
color = "green"
if v.velocity == 0 then
color = "orange"
end
svgfile:write("<circle cx=\""..pos.x.."\" cy=\""..-pos.z.."\" r=\"3\" stroke=\""..color.."\" stroke-width=\"1\" fill=\"none\" />")
if v.line then
svgfile:write(" <text x=\""..(pos.x+5).."\" y=\""..-pos.z.."\" class=\"trainline\">"..v.line.."</text>")
end
trains = trains+1
end
svgfile:write("</svg>") svgfile:write("</svg>")
svgfile:close() svgfile:close()
print("\nWrote",plcnt,"polylines. Processed", ndb_nodes_handled, "track,",ndb_nodes_notrack, "non-track nodes out of", ndb_nodes_total) print("\nWrote",plcnt,"polylines. Processed", ndb_nodes_handled, "track,",ndb_nodes_notrack, "non-track nodes out of", ndb_nodes_total)
print("Drew "..trains.." trains")