From 6c84515275049bdc6a6cccdb26c52e5e602b8606 Mon Sep 17 00:00:00 2001 From: Torsten Paul Date: Tue, 4 Feb 2014 19:06:50 +0100 Subject: [PATCH] Add positional parameters for text(). Positional parameters are t, size, font. Example: text("OpenSCAD", 30, "Liberation Mono"); --- .gitignore | 2 ++ src/text.cc | 2 ++ .../scad/experimental/text-font-tests.scad | 6 ++++++ .../cgalpngtest/text-font-tests-expected.png | Bin 3943 -> 4338 bytes .../opencsgtest/text-font-tests-expected.png | Bin 10853 -> 11658 bytes .../text-font-tests-expected.png | Bin 10868 -> 11658 bytes 6 files changed, 10 insertions(+) diff --git a/.gitignore b/.gitignore index fc30933f..fabdca63 100644 --- a/.gitignore +++ b/.gitignore @@ -15,6 +15,8 @@ parser_yacc.h */#*# /nbproject /openscad +/mingw32 +/mingw64 /tests/openscad_nogui testdata/scad/features/import_dxf-tests.scad testdata/scad/features/import_stl-tests.scad diff --git a/src/text.cc b/src/text.cc index 1dd626e7..e15d0d40 100644 --- a/src/text.cc +++ b/src/text.cc @@ -49,6 +49,8 @@ AbstractNode *TextModule::instantiate(const Context *ctx, const ModuleInstantiat TextNode *node = new TextNode(inst); AssignmentList args; + args += Assignment("t", NULL), Assignment("size", NULL), Assignment("font", NULL); + Context c(ctx); c.setVariables(args, evalctx); diff --git a/testdata/scad/experimental/text-font-tests.scad b/testdata/scad/experimental/text-font-tests.scad index db4084ec..6c03893d 100644 --- a/testdata/scad/experimental/text-font-tests.scad +++ b/testdata/scad/experimental/text-font-tests.scad @@ -17,4 +17,10 @@ rotate([45, 0, -45]) { translate([0, -40, 0]) text(t = t3, font="PT Serif:style=Regular", size=20, language="ru"); + + translate([0, -80, 0]) + text("positional", 30, "PT Serif:style=Regular"); + + translate([0, -100, 0]) + text("parameters", 12, "Amiri:style=Bold"); } \ No newline at end of file diff --git a/tests/regression/cgalpngtest/text-font-tests-expected.png b/tests/regression/cgalpngtest/text-font-tests-expected.png index 6f620a88df9ac8e27ead1bf74cbda84a57c89ae9..8df89d7ef683a3d126283857dc141407b82eec80 100644 GIT binary patch delta 2915 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 delta 2517 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�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 literal 10853 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 r@k8#bhU)I(vB4hyb6;PB@ldYDv`10QXa_GI_ diff --git a/tests/regression/throwntogethertest/text-font-tests-expected.png b/tests/regression/throwntogethertest/text-font-tests-expected.png index 755c15eaeac162ec7b0c2cf72ffd283134574f02..e4621b67055f13594fe4e48a56a51adaf6e933b5 100644 GIT binary patch literal 11658 zcmdsdWmsI#^5z)`5)?m_UF4fe_r?6WrY)K(N7eAh-^$ z1MK8?@9uwhpWSCa-~Dn<9jmUcu6p0DJ{_i}B8!Vfh6MlsuDqPI1^}QSMHB$@@5zTu zsuTb?)a9imG(AE4Q#_y!8iEdS{RfpNAVM<#U+IDN*CTV-kcf9 zvlueVuzdBVlod96aGFnc?@Kn)SnX<7fS`}q!GGK4;d8ma zhM&f?$UX0_a7v5NoJdcv*Gg7 zkz!U>j_hI~oZDDM=)g4Koe zG5+)9Mdr*JNA8@lAZ(`yyUhWeclQ60W_xvMA>4~_RJr@)|DHagk3-)rL9U(HQ2K+PxPc@iK$M9ERp8F-C*rEB9m8B81|o zWDs)PZ+&=_58sx*Cb#C<)l8U?tCU0~!X~&7Ui}}$<{H@V&IRCJ1tS%Z$&mfJ>I+z@ zV8=mGeSpD7j1X5)G#ymUXXE@dcU(!TmbmMGDeJZ0MNRZsSC-IR+D znbv50rB$5nod%9jEM7k|rc&AsFkWfXJ@)5Re zqRz*_+K2{sCHC5l(<7_0E3!clnfe3OdwNde2r)$Nr`HM8oUK1HOZIbHK&APn>xQ?+ z`@P_H@PVOB=Bi%T2^~{^u)}d_)TaeFc;D`^M)gg@7P)IUF(aGZFO8nm$qB>6$PZf_ zLiDY4o!F985~z@`@2JCCFD~)Tg9c~g=Wb_CcPKqPSLm+Cz8W2?^Id&5Z4iyD>P)Ns zG|2+R?|OxHj{S_o@YWrV^^t%S^6Qoxk|1Uh-Vxsw+u>LHY$+`u2M@aX2wn2%ot?6w zyKF!KX9uMt^33eAt=Hm$dIuXb;G=(dif-@yRnE_(GlPgQJ8$c2!3m4mY)g~PL#A$cwME2`Io(`@KK9=> zUoY?#`O?K%DH;{>XWQ(~720Yso$WVrj?`SH3jV>C63db&0U9eT%+jYApak#QHG7b0n?x31_!sd=(kF!%o$%4Zdy~vRjr)1xjbYn zUY9sHyqPa%9(8Ca3fM@oE%4bR4f1C9e-ry`*|2GIhp^5b%^?VV#k8BP_*hz`>)X=T zP$t4|fj?{YPZg=WhCZezy&HH(?gb%>T*6{vWV-(TZB2@>gybq*vL0Dw3;QidoZ^OetD_Qx(Suuh3TivPU~bP}Y!=yFf60|jU(tpStH z*&U0)&hR>as2fOJ_#b)-XEa2zRP-lw09etmMv9!l|0VWDa{}T~2iD4>ACXG*0W4DG zCIDj7bA|!2mqG8y_Blzq|$0uYGH?sF;x;iH~$DW2l4H_DM@GsPY@<2$V zhJD{riHK$7lTDWv4}J_i@ww^Un%L^9gHh6mS_3QWi)H9@Uj`^d+;?-&o{`xaIra2m zqvIJ>I0-bDS#g~vxwBD*lRo{BnM3N@~ zJMcf)KfP`~I}0X~fJmUWz=PHQm`oY*lgQE2N9TPBG$p40;8(1{7KmpOLx@%isr@6E z-Ft;0Q3>UIX3T09T&k}xFUyo(ti6DjJ3Yc3#Xx)Y=4sBOE(5L=Y>Y&b4hTqL`S8On z1vzJ8YjbOB>w;fGE8NO~|Mo=W7LlRV2A1P0j`ZJng(Ir$Io^^@MPPI>s#E(5T_s~8 zt6!&S6@xCmzPQB>mu!}b`8j8+8<(K~ZX&5fKF_R{~QH&Y$gx1px@=@@DkY~oqqWNdX(=wr4tdqt- z#MiE&s-za2HfZUIowOh8p6we4EGQ`%q*wlvM)h$1(d5*jJmVc<3H`~th={%C1-kG+ zvqsw(zn$1-ItTn|!rzBx^#Kbz!-M7n`AZ{~mQ{!*vt2OWvF`O$fcF|uiYs{|j#}}O zMLY0&-u3~0o5JSZ%Y_sl%jKk8%XKvA5}2jgblaxp?D+J7RZu|RR3xduew$kQtSqML zL+IhK&uQ!18Ze+sh_r~9xaUEYf=bD$Sw>KzA#Q6yDiPc!c8fhDzE(yD#n#$flFdw4 zww4t>k13*-sMDq)usYxLJ6w-&r9KZa_8%Sp)#CBKUX`2U6)+U@ayyLV!ZwK^42E-J z7wpD>D8b_k`at@7UMKx)f2U59lz{wAKwE!lb_;&$i2v0kTSoZ}qgJM(E^kIa0q+T& z^}RRNGgxe*XcxcpBgK*G{mxv`i3G1hSk8|ngLl)>CCVUXGnvW=cib#&mal&{tDG%+ z;UJ!8;l2kIAS(sZ@`lxT#{_V_?8Yr2hsMT5=nl&owWHY?kC{Hd(1=fiUiZ7I#2$W> zEWE$*#h%1osF3XFCzjc8lfTB|a}W}SaK5b2>e`r&=|0&yThbRNB20~bOQ$JxrBFY( z8ny6dm~~(yb64#-@7^ZGH=Q)&@t<&Q(5v_VHmNN~SNMBq`EHo)ra}C_pTny*^$HuK8c7asO+)(~{T>mj3DH>jOV{_S$}d7%iAKbLT8 ziWI0Aljj-F3$Jxz43R&_gl�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 literal 10868 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