From b7875c361f6a4f07897960b3cb30f2ab28cf3e67 Mon Sep 17 00:00:00 2001 From: Přemysl Janouch Date: Fri, 11 Feb 2011 23:21:04 +0100 Subject: Update the symbol library, add trivial text API. --- share/library/Misc/cell.lua | 36 +++++++++++++++ share/library/Misc/meters.lua | 83 +++++++++++++++++++++++++++++++++++ share/library/Misc/power-source.lua | 36 --------------- share/library/Misc/voltage-source.lua | 75 +++++++++++++++++++++++++++++++ 4 files changed, 194 insertions(+), 36 deletions(-) create mode 100644 share/library/Misc/cell.lua create mode 100644 share/library/Misc/meters.lua delete mode 100644 share/library/Misc/power-source.lua create mode 100644 share/library/Misc/voltage-source.lua (limited to 'share') diff --git a/share/library/Misc/cell.lua b/share/library/Misc/cell.lua new file mode 100644 index 0000000..8057da8 --- /dev/null +++ b/share/library/Misc/cell.lua @@ -0,0 +1,36 @@ +-- Symbol name +local names = +{ + en = "Cell", + cs = "Článek" +} + +-- Render area in base units (X1, Y1, X2, Y2) +local area = {-1, -2, 1, 2} + +-- Terminal points +local terminals = {{-1, 0}, {1, 0}} + +-- Rendering +local render = function (cr) + -- The vertical lines + cr.move_to (-0.2, -1) + cr.line_to (-0.2, 1) + + cr.move_to (0.2, -2) + cr.line_to (0.2, 2) + + -- The terminals + cr.move_to (-1, 0) + cr.line_to (-0.2, 0) + + cr.move_to (0.2, 0) + cr.line_to (1, 0) + + cr.stroke () +end + +-- Register the symbol +logdiag.register ("Cell", names, area, terminals, render) + + diff --git a/share/library/Misc/meters.lua b/share/library/Misc/meters.lua new file mode 100644 index 0000000..6cd4045 --- /dev/null +++ b/share/library/Misc/meters.lua @@ -0,0 +1,83 @@ +-- Symbol names +local names_A = +{ + en = "Ammeter", + cs = "Ampérmetr" +} + +local names_mA = +{ + en = "Milliammeter", + cs = "Miliampérmetr" +} + +local names_V = +{ + en = "Voltmeter", + cs = "Voltmetr" +} + +local names_ohm = +{ + en = "Ohmmeter", + cs = "Ohmmetr" +} + +local names_W = +{ + en = "Wattmeter", + cs = "Wattmetr" +} + +-- Render area in base units (X1, Y1, X2, Y2) +local area = {-3, -2, 3, 2} + +-- Terminal points +local terminals = {{-3, 0}, {3, 0}} + +-- Rendering +local render = function (cr, name) + -- The circle + cr.arc (0, 0, 2, 0, math.pi * 2) + + -- The contact + cr.move_to (-3, 0) + cr.line_to (-2, 0) + + cr.move_to (2, 0) + cr.line_to (3, 0) + + cr.stroke () + + cr.move_to (0, 0) + cr.show_text (name) +end + +local render_A = function (cr) + render (cr, "A") +end + +local render_mA = function (cr) + render (cr, "mA") +end + +local render_V = function (cr) + render (cr, "V") +end + +local render_ohm = function (cr) + render (cr, "Ω") +end + +local render_W = function (cr) + render (cr, "W") +end + +-- Register the symbols +logdiag.register ("Ammeter", names_A, area, terminals, render_A) +logdiag.register ("Milliammeter", names_mA, area, terminals, render_mA) +logdiag.register ("Voltmeter", names_V, area, terminals, render_V) +logdiag.register ("Ohmmeter", names_ohm, area, terminals, render_ohm) +logdiag.register ("Wattmeter", names_W, area, terminals, render_W) + + diff --git a/share/library/Misc/power-source.lua b/share/library/Misc/power-source.lua deleted file mode 100644 index c79b0ac..0000000 --- a/share/library/Misc/power-source.lua +++ /dev/null @@ -1,36 +0,0 @@ --- Symbol name -local names = -{ - en = "Power source", - cs = "Zdroj napětí" -} - --- Render area in base units (X1, Y1, X2, Y2) -local area = {-1, -2, 1, 2} - --- Terminal points -local terminals = {{-1, 0}, {1, 0}} - --- Rendering -local render = function (cr) - -- The vertical lines - cr.move_to (-0.2, -1) - cr.line_to (-0.2, 1) - - cr.move_to (0.2, -2) - cr.line_to (0.2, 2) - - -- The terminals - cr.move_to (-1, 0) - cr.line_to (-0.2, 0) - - cr.move_to (0.2, 0) - cr.line_to (1, 0) - - cr.stroke () -end - --- Register the symbol -logdiag.register ("PowerSource", names, area, terminals, render) - - diff --git a/share/library/Misc/voltage-source.lua b/share/library/Misc/voltage-source.lua new file mode 100644 index 0000000..1f41bf1 --- /dev/null +++ b/share/library/Misc/voltage-source.lua @@ -0,0 +1,75 @@ +-- Symbol names +local names_ac = +{ + en = "AC voltage source", + cs = "Střídavý zdroj napětí" +} + +local names_dc = +{ + en = "DC voltage source", + cs = "Stejnosměrný zdroj napětí" +} + +-- Render area in base units (X1, Y1, X2, Y2) +local area_ac = {-3, -0.5, 3, 0.5} +local area_dc = {-3, -1.25, 3, 0.5} + +-- Terminal points +local terminals = {{-3, 0}, {3, 0}} + +-- Rendering +local render = function (cr) + -- The circles + cr.arc (-2, 0, 0.3, 0, math.pi * 2) + cr.new_sub_path () + cr.arc (2, 0, 0.3, 0, math.pi * 2) + + -- The terminals + cr.move_to (-3, 0) + cr.line_to (-2.3, 0) + + cr.move_to (2.3, 0) + cr.line_to (3, 0) + + cr.stroke () +end + +local render_ac = function (cr) + render (cr) + + -- The AC symbol + cr.move_to (-1, 0.25) + cr.curve_to (-0.4, -1.5, 0.4, 1.5, 1, -0.25) + + cr.stroke () +end + +local render_dc = function (cr) + render (cr) + + -- The DC symbol + cr.move_to (-1, -0.25) + cr.line_to (1, -0.25) + + cr.move_to (-1, 0.25) + cr.line_to (-0.2, 0.25) + + cr.move_to (0.2, 0.25) + cr.line_to (1, 0.25) + + -- Polarity sign + cr.move_to (2, -0.75) + cr.line_to (2, -1.25) + + cr.move_to (1.75, -1) + cr.line_to (2.25, -1) + + cr.stroke () +end + +-- Register the symbol +logdiag.register ("ACSource", names_ac, area_ac, terminals, render_ac) +logdiag.register ("DCSource", names_dc, area_dc, terminals, render_dc) + + -- cgit v1.2.3-70-g09d2