Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local gui = require("/apis/gui")
- function attachDisplays()
- -- attach monitors for displaying status
- local monitors = {
- "monitor_27",
- "monitor_26",
- "monitor_25",
- }
- local function prepareMonitor(monitor)
- monitor.setCursorPos(1, 1)
- monitor.setTextScale(0.5)
- monitor.clear()
- end
- local displays = {}
- for _, monitor in ipairs(monitors) do
- local device = peripheral.wrap(monitor)
- prepareMonitor(device)
- table.insert(displays, gui.initializeDisplay(device))
- end
- return displays
- end
- function mainDisplay(display, reactor_dataset)
- local reactor_graph = gui.Graph:new {
- width = display.width,
- height = display.height,
- draw_axes = true,
- type = gui.Graph.type.line,
- u_min = -4,
- u_max = 4,
- v_min = -1,
- v_max = 1,
- }
- reactor_graph:attachDataSet(sineDataSet())
- reactor_graph:attachDataSet(reactor_dataset)
- reactor_graph:pollDataSets()
- display.window:addElement(reactor_graph)
- return display
- end
- function sineDataSet()
- local data_set = gui.DataSet:new()
- for u = -5, 5, 0.1 do
- table.insert(data_set.data, {u = u, v = math.sin(u)})
- end
- return data_set
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement