From aeb6e7ed58c7f327a958d3b7f7d84152fa770219 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C5=99emysl=20Janouch?= Date: Fri, 10 Dec 2010 23:27:45 +0100 Subject: [PATCH] Add a few symbols for testing. The lucky ones are: capacitor, resistor and diode. More symbols can be expected later, when more cairo functions are exported to Lua and relevant standards become accessible to me. --- share/library/Passive/capacitor.lua | 38 ++++++++++++++++++++++++++ share/library/Passive/diode.lua | 41 +++++++++++++++++++++++++++++ share/library/Passive/resistor.lua | 37 ++++++++++++++++++++++++++ 3 files changed, 116 insertions(+) create mode 100644 share/library/Passive/capacitor.lua create mode 100644 share/library/Passive/diode.lua create mode 100644 share/library/Passive/resistor.lua diff --git a/share/library/Passive/capacitor.lua b/share/library/Passive/capacitor.lua new file mode 100644 index 0000000..2263786 --- /dev/null +++ b/share/library/Passive/capacitor.lua @@ -0,0 +1,38 @@ +-- Symbol name +names = +{ + en = "Capacitor", + cs = "Kondenzátor" +} + +-- Render area in base units (X1, Y1, X2, Y2) +area = {-2, -1, 2, 1} + +-- Terminals +terminals = {{-2, 0}, {2, 0}} + +-- Rendering +render = function (cr) + -- The vertical lines + cr.move_to (-0.2, -1) + cr.line_to (-0.2, 1) + cr.stroke () + + cr.move_to (0.2, -1) + cr.line_to (0.2, 1) + cr.stroke () + + -- The contacts + cr.move_to (-2, 0) + cr.line_to (-0.2, 0) + cr.stroke () + + cr.move_to (0.2, 0) + cr.line_to (2, 0) + cr.stroke () +end + +-- Register the symbol +logdiag.register ("Capacitor", names, area, terminals, render) + + diff --git a/share/library/Passive/diode.lua b/share/library/Passive/diode.lua new file mode 100644 index 0000000..f363b45 --- /dev/null +++ b/share/library/Passive/diode.lua @@ -0,0 +1,41 @@ +-- Symbol name +names = +{ + en = "Diode", + cs = "Dioda" +} + +-- Render area in base units (X1, Y1, X2, Y2) +area = {-2, -1, 2, 1} + +-- Terminals +terminals = {{-2, 0}, {2, 0}} + +-- Rendering +render = function (cr) + -- The triangle + cr.move_to (-1, -1) + cr.line_to (1, 0) + cr.line_to (-1, 1) + cr.line_to (-1, -1) + cr.stroke () + + -- The vertical line + cr.move_to (1, 1) + cr.line_to (1, -1) + cr.stroke () + + -- The contacts + cr.move_to (-2, 0) + cr.line_to (-1, 0) + cr.stroke () + + cr.move_to (1, 0) + cr.line_to (2, 0) + cr.stroke () +end + +-- Register the symbol +logdiag.register ("Diode", names, area, terminals, render) + + diff --git a/share/library/Passive/resistor.lua b/share/library/Passive/resistor.lua new file mode 100644 index 0000000..6173e0c --- /dev/null +++ b/share/library/Passive/resistor.lua @@ -0,0 +1,37 @@ +-- Symbol name +names = +{ + en = "Resistor", + cs = "Rezistor" +} + +-- Render area in base units (X1, Y1, X2, Y2) +area = {-2, -0.5, 2, 0.5} + +-- Terminals +terminals = {{-2, 0}, {2, 0}} + +-- Rendering +render = function (cr) + -- The rectangle + cr.move_to (-1.5, -0.5) + cr.line_to (1.5, -0.5) + cr.line_to (1.5, 0.5) + cr.line_to (-1.5, 0.5) + cr.line_to (-1.5, -0.5) + cr.stroke () + + -- The contacts + cr.move_to (-2, 0) + cr.line_to (-1.5, 0) + cr.stroke () + + cr.move_to (1.5, 0) + cr.line_to (2, 0) + cr.stroke () +end + +-- Register the symbol +logdiag.register ("Resistor", names, area, terminals, render) + +