From cfb52ab3ad65e2406141e6b86a1b482e0040d45a Mon Sep 17 00:00:00 2001 From: Thomas DAGES Date: Thu, 6 Dec 2018 16:22:55 +0100 Subject: [PATCH] new test file --- svg.lua | 2 +- svg.min.lua | 2 +- test.lua | 6 ++++++ 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 test.lua diff --git a/svg.lua b/svg.lua index e6d8adf..57112d0 100644 --- a/svg.lua +++ b/svg.lua @@ -88,7 +88,7 @@ end -- strokeWidth: string => lines width -- fill: string => fill color function svg:Circle(r, cx, cy, stroke, strokeWidth, fill) - return self.Element.create("circle", { + return self.Element:create("circle", { r = r or 25, cx = cx or 30, cy = cy or 30, diff --git a/svg.min.lua b/svg.min.lua index c950f3f..fdc81bd 100644 --- a/svg.min.lua +++ b/svg.min.lua @@ -1 +1 @@ -svg={}svg.__index=svg;function svg:create(a,b,c,d)local e={}setmetatable(e,svg)e.width=a or 100;e.height=height or 100;e.stroke=c or"#000000"e.fill=d or"transparent"e.elements={}e.Element={}e.Element.__index=svg.Element;function e.Element:create(f,g)local h={}setmetatable(h,e.Element)h.name=f;h.strElement="<"..f.." "for i,j in pairs(g)do h[i]=j;h.strElement=h.strElement..i.."=\""..j.."\" "end;h.strElement=h.strElement.."/>"return h end;return e end;function svg:add(k)table.insert(self.elements,k)end;function svg:draw()local l=""for m,n in pairs(self.elements)do l=l..n.strElement end;l=l..""return l end;function svg:Rect(o,p,a,height,c,q,d,r,s)return self.Element:create("rect",{x=o or 10,y=p or 10,width=a or 10,height=height or 10,stroke=c or self.stroke,fill=d or self.fill,["stroke-width"]=q or 1,rx=r or 0,ry=s or 0})end;function svg:Circle(t,u,v,c,q,d)return self.Element.create("circle",{r=t or 25,cx=u or 30,cy=v or 30,stroke=c or self.stroke,["stroke-width"]=q or 1,fill=d or self.fill})end \ No newline at end of file +svg={}svg.__index=svg;function svg:create(a,b,c,d)local e={}setmetatable(e,svg)e.width=a or 100;e.height=height or 100;e.stroke=c or"#000000"e.fill=d or"transparent"e.elements={}e.Element={}e.Element.__index=svg.Element;function e.Element:create(f,g)local h={}setmetatable(h,e.Element)h.name=f;h.strElement="<"..f.." "for i,j in pairs(g)do h[i]=j;h.strElement=h.strElement..i.."=\""..j.."\" "end;h.strElement=h.strElement.."/>"return h end;return e end;function svg:add(k)table.insert(self.elements,k)end;function svg:draw()local l=""for m,n in pairs(self.elements)do l=l..n.strElement end;l=l..""return l end;function svg:Rect(o,p,a,height,c,q,d,r,s)return self.Element:create("rect",{x=o or 10,y=p or 10,width=a or 10,height=height or 10,stroke=c or self.stroke,fill=d or self.fill,["stroke-width"]=q or 1,rx=r or 0,ry=s or 0})end;function svg:Circle(t,u,v,c,q,d)return self.Element:create("circle",{r=t or 25,cx=u or 30,cy=v or 30,stroke=c or self.stroke,["stroke-width"]=q or 1,fill=d or self.fill})end \ No newline at end of file diff --git a/test.lua b/test.lua new file mode 100644 index 0000000..13b5b8f --- /dev/null +++ b/test.lua @@ -0,0 +1,6 @@ +svg={}svg.__index=svg;function svg:create(a,b,c,d)local e={}setmetatable(e,svg)e.width=a or 100;e.height=height or 100;e.stroke=c or"#000000"e.fill=d or"transparent"e.elements={}e.Element={}e.Element.__index=svg.Element;function e.Element:create(f,g)local h={}setmetatable(h,e.Element)h.name=f;h.strElement="<"..f.." "for i,j in pairs(g)do h[i]=j;h.strElement=h.strElement..i.."=\""..j.."\" "end;h.strElement=h.strElement.."/>"return h end;return e end;function svg:add(k)table.insert(self.elements,k)end;function svg:draw()local l=""for m,n in pairs(self.elements)do l=l..n.strElement end;l=l..""return l end;function svg:Rect(o,p,a,height,c,q,d,r,s)return self.Element:create("rect",{x=o or 10,y=p or 10,width=a or 10,height=height or 10,stroke=c or self.stroke,fill=d or self.fill,["stroke-width"]=q or 1,rx=r or 0,ry=s or 0})end;function svg:Circle(t,u,v,c,q,d)return self.Element:create("circle",{r=t or 25,cx=u or 30,cy=v or 30,stroke=c or self.stroke,["stroke-width"]=q or 1,fill=d or self.fill})end + +mon_dessin = svg:create() +mon_dessin:add(mon_dessin:Rect()) +mon_dessin:add(mon_dessin:Circle()) +print(mon_dessin:draw()) \ No newline at end of file -- 2.51.2