From 4190d4c7518028577c14ad4d20572f2cac2e3605 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thea=20Sch=C3=B6bl?= Date: Mon, 26 Feb 2024 22:06:14 +0100 Subject: [PATCH] feat: inserts --- README.md | 13 +++++++ assets/generated/AntiStudInsert.png | Bin 607 -> 588 bytes assets/generated/C15.png | Bin 710 -> 731 bytes assets/generated/C7.png | Bin 863 -> 849 bytes assets/generated/Classic Full Curve.png | Bin 476 -> 472 bytes assets/generated/Classic Full Straight.png | Bin 396 -> 384 bytes assets/generated/Classic Half Curve.png | Bin 651 -> 658 bytes assets/generated/Classic Half Straight.png | Bin 486 -> 493 bytes assets/generated/Classic Quarter Straight.png | Bin 664 -> 644 bytes assets/generated/S10.png | Bin 596 -> 569 bytes assets/generated/S25.png | Bin 391 -> 399 bytes assets/generated/S4.png | Bin 773 -> 700 bytes assets/generated/S5.png | Bin 761 -> 712 bytes assets/generated/StudInsert.png | Bin 644 -> 627 bytes track.scad | 34 +++++++++++------- 15 files changed, 34 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 08871a4..80c0bf3 100644 --- a/README.md +++ b/README.md @@ -82,6 +82,19 @@ To be compatible with standard bricks, the following print settings are strongly My prints were done on a modified SecKit SK-Go2 running Klipper, with 10k acceleration and 150mm/s print speed for a good balance of speed and quality. A short rail will take about an hour to print. +### Inserts + +_This is optional and increases difficulty and print time, but I highly recommened it._ + +Studs and anti-studs print rather inconsistently at the orientation of the rail. +To combat that, I added the option to pre-print stud and anti-stud inserts at perfect orientation and insert them mid-print. +Because the layer is immediately covered up, the plastic will adhere like it would if it was printed in one go. + +This also allows you to pre-select the best inserts without having to print a full rail only to have one bad stud. + +- In Cura, insert a "Pause at layer" at the last layer where the insert spots are not covered yet. +- If you use Klipper, use "Search and replace" with `; Layer 32` to `; Layer 32\nPAUSE`. + ### Filament | Color | RAL | PLA Supplier | ABS Supplier | diff --git a/assets/generated/AntiStudInsert.png b/assets/generated/AntiStudInsert.png index 33f7ef5b430f2cb2ad625255e1ba081db1cba8e4..929334f3272c278a52012f92003a5cf1758feb53 100644 GIT binary patch delta 563 zcmV-30?hs21k41GB!3f0L_t(|0qvDPN&`U@#>cRNh@^?wq!jT2k`oxL?L-tT>;%aH zEIoh-b{2vu1PeZ{_``8SvNzHYrrwyL`#rU#!X>u5KVE-#=y3-+ z=Rjol%=rEo!b6b*?j9WA{!~Ns+L=3taEXzIWp!f_{@-3avisY>T^tC5B})k3$$4LIQ#iO% zt35dk9^%$qPgsG_N~IS-3Eta>$G^7?R1Cj2WVOlxK&^bmnEqn9Ok0kiOM0L&g-OExREZA2K;sxfzn7{xfUK z(~vQYOe~HSOM!1{OlZ{#Hx!y$)c_GF0!5&*^8;l0M(r}cIZyxq002ovPDHLkV1o8z B36}r> delta 582 zcmV-M0=fOn1m6UZB!4DJL_t(|0qvE&N;5$ehUW|Wfr!Ln#U`bQHz2tJgIHP!A_^9E zg5&}$y#NvHECf>s7M3D-0T$kX1WOw+g%U(ij0aCLIXUyQv*T>mVqRpC&F<`zXWp~< z*Xuoszm!VZ01+qxMW6^&Hb8!$kNai#8yir@Plp!e|H5@?K!1n(i@RH?<$~aFPKLHm zDyKVNnQH}s(*x0++Pj>5?Yz@ZUEsX=l1v)Yod{}yqwBcCaYIlVIMUvzhA`E1f}VHO zmI=oVAqqeot-e|G*aMxjAhOA2d?SYNQsjVd4-W8rrXl)l@6I7yqNQP3TAzdC&G`d6 zuRh5xHM4d@Lw{8dhZN9L|AIM#0i(*e^lHUe?Gltbc9z?twV~ARtx?N6oP=V~3gt zcdmw9v<<#`e`nF+PxETh7V9!S30U}#Kak5PK=WGNd`pD^GL3>%B?fN|t)60m97ll$ z+k@f1_9B0~^G4Q%z7K7NByZ7V+Gq@^2}?!|F+IYuLq#~l{qi)VjW-+`0x_@xt@Cez zyvZa`U_V2CWOf=6_B}-Xdv9n+L)tJhb*xwld{blcPH5qV@}^QYKm>|F5op}`21Pqb U0<>e|>Hq)$07*qoM6N<$g2rD92LJ#7 diff --git a/assets/generated/C15.png b/assets/generated/C15.png index 28c39929130030f0d7894a13df2bc9ac35329316..a23917fa0fdab9aa88b4551d3060e34933344c67 100644 GIT binary patch delta 707 zcmV;!0zCc31=|IXB!8kwL_t(|0qxaaNK;W50PwSWuSKuY-}$^(#`7Mqn1aeQfPe^yfCwnl0Dl4^p#L7kq;Bh(k>aea zPPm2_VI}%gDd`YIAO~Fgho?hzP31>Niz@oFGM@KH=$K#Bn!Ni|a_5VwR?9|I*;V0p zIb92FBF&KrQtmwZLjOI0lHzRm6RPKBO-0#?k&x0mG+nrD8BFXC{g86_paSNl2Uelq zstq69Gb>?IRDYHqWy8deES%yR{IN5CIZQh4``)<&R^xi?W?hY!Te>)lD3k{v5ujnxg7QApu}JY3s)hGTBdBu{DXX8m8evnO-0dR5)0U);aTcr@Zb zf||xIR(CW9E1DWUbHUmCTGty0OXG~Kq*Ol6~As{{&QJR;% z-}e-*K#egRS7LWwzA=sxOUocgG-3?({NBJGD6(m-I^vk>Z%xciE`P!H8YB^nD2=&s z?7R*iURx)Nl5_R1K+?g)KQwSuYxL`|Vv~JVQ&l&Ryhg--S?2>ErhzXWG`~h`za$hC z0$=-%fqzq2#qRKHN+RBPH}CmSa^|9x8ex!H{yzNDXdOLrNP%?=B^BmAX*B>lGHi5C zo4phzyIQ>=RME6k`*SA$WHO*NNw2{{&33jguy)7N@w`n-+@7C79@ru^aDB$Exn27t z6_f>sdPKfif5HKihU$V)vHRPWqB2mvy(x7R6g;uN_K=mUWCFVj(x3r?LoFET(SUe5 pl;)r^4Im%_A|L|FG+@z#egpLU{i1w(4PF2M002ovPDHLkV1kz~R%-wN delta 686 zcmV;f0#W_j1;z!CB!7)bL_t(|0qxaGXcIvg0N~ll#$pAlw6+yJ6fb%a6sjVK7eNnR z?4<{(sE7w2sp$iR8Xpa5YeCY)8l}EsNd&6}D~hEDK|F}*LrV*yo&uVtue7P9N~@do zUk1Z=vWdIRZc=3a!|?AuO^i} zmC-;?AlW4PESVyu$`RhZJ-7T|9#tP*IgU^4HQA5c>F^uU%{uTX>E^Kj?$XTt}!8o zVxp8^Zy!?s3bh?lq`173*5d_KvEk;pK)Mn`&2587dw=knG;ez6_U>Fo8k4BG+BQLw z##>9FsOnH+Z=eSkP8U)|=l#jQJ6F8o{(#a5UhAiH$wF(~4>W5Of2?i@KYT`O;C>*9?i#v7RBz7NM=<8(cjU3Vcwhb$^yXw;ukI8Q zi}sMm7wMZ{wiZtCE-1sJz%%86H=bkF#^qAy>6 zGLAwb>A~o-mB#bJ0?B>Y`p#&Ls=Ewi0LqL;?I-1$$-vnLFc1SV5Cdf!u-vjxRE%&Qyw-^Vk zeI`yJ)>wh$4tdgm+8QikTx>J{Yaj^?Xp1>Sj5$tg9e;uZg4#PKEwQ2Ew4`Rp&u@0U z>e*2o#}K5E=t}h0W=b8-J5u?xZM0(0{|D$oRJE?jd84^wt(g!k3bnjsiJ z%5f zX;gr2r?B41U0dDHNM=$0r|zE+6lSQ<+`R8n)zN{K^}`T+{xS`H zsyuIn>@D!pd%^U?N4re}mWR)=Y~N^bt)t7dvVXGfn|ngJzi~88J(A?nET3sqdKoZX zx7i^m%h?Fyx-~(v%TC)vEWwVQ`}j49=88n<>SyDQoO_3K2?r$5fUE@$ArQzwPrin> zd2_)Jakvl9wI!*oeM9kC%kO8z%wBUgL06ZWo4PVht0LW|8p54P|E9AiUKq>{~016a5!pM69YINoIMtW zW)#a8AV^VTuXe$t&@=@>*+-*qBUecTz&r;8_DT*5YM^w=fzLvvbS;cwBsK z2$so~5hHmgEE53io*j$q#eJGGq^3+T>K={2V^OB8#%ha&gSIyl@F>?nK(VP+Y6>d` zS1u1pOO7PmbE|RKJIRqXfLt;;&C9o*q;28&w4i+OQh&}8vbefwnCBHJ%Ag~)bp3Ho zH2I>#vupdT#_AY=ADhd$OUdu3c`yuA2dRhVYG7c^xhn%3R+|-HP&?CGI)D_rXX9G) z$4^t_^xSUtPXpwddaeep4!B~`IH#;1eu(4O|ChQig7E12mJyEgZDc&hpT5u?IEb8^ zGo?Pw)qjFm$*Z{S?miyncpiaH6?Uo55Ur?bZJ!XH!o?yN&23}I1b=waFAWf_vPxS* zPxy*)_mr@mKY#s>2ALQ85)*viWy$owZ6OpmMU&|^|1@IIxR(PnYpCj;8y+(bSk^&~9O>`Xae0Zs1K-bjBD!uYLZMSm3^;yhpAp!-`iV)9L=}$rJfqT0wGwSnF1WqRfc`wT`{o_3+tPN_OXcM;km%%X=4ChQzB3 zwh>Ct=1>>mZ@8K;OeV_X<(|G8hZ>+c6gF2xBwUS&Vp8@;HnxoDq5c>ju?YmhLcvCfpdf-s3X9;Gh=@%#Fupjj#w5fX>`sdJ zNbz`NmJi>Zosk%eka8+nGyp*eLJ)#P0}zBD1R+Q?AiZemkAF~aJBwSWG#+LSCB`Bp zB96~KWtp@!|IdH9W9gYvGB;L}i7Nns|_WR@=Pp|-xMj5e3R-Fynyl3=YRasnRYJ#1H?($E_KHkJ-^_G?+e^}G} z0m`~Lz!Z-s1%Lj)4bh=!ZpzwjY}jJv{gmqg9Gm;sdN^_=#5LZnSL;9(pUiuo;JqyR zu5_hjNk|K3Vf|%#sG2vhOI$0L22j!y;u;9UVNHGl%iB?)*xVO}QGO-FH8Y+^x2+DE zjlG!F88VpilMvVV1Mhv^m2f0cA8~^|S07*qoM6N<$g2F_{l>h($ delta 450 zcmV;z0X_cM1Kb0UB!8nxL_t(|0qxbxOEOUy2Jkt<8NZJr0_g_*0j^s}(4xyKf;KIJ zYE=;3Xkmm=goFqp*+PQoX0$1?+Jzu3ih>{tgMtVuTC|WZreM*cnc#Hn$W&@#igR4N zFD@Qlnc?T-90m~*5b|k6-T(jr2tWYh4FC{;00bc3fcU}L-+w~6Y|QLJ$*`TcM1%yg zMC={CilR_!EKL7$>+~bW!uUX0A`WMU@a?}e)fKT^Umc^=wBAS<=_Dl44-5D+OGrlp z7T6wRWE(2~e& zo%arN1r3YqVUx|TG3Bcvrtx?qZOz4K;4hqC1H-L=nb+K^opzcK`qY07*qoM6N<$f~$DX-v9sr diff --git a/assets/generated/Classic Full Straight.png b/assets/generated/Classic Full Straight.png index 3e60cd2f37f41de4d670d22768918de4b6fd44b1..01249adfa111861378e9224f2ebf1d198ff7f4d1 100644 GIT binary patch delta 357 zcmV-r0h<1d1AqgNB!5RqL_t(|0qxblYQj(y2Jn-Rj-h*BAP>+EUAkl`g)AMqbn95U z^bJZkM+bcc7gs@CoP7l!AP%B~C`eGeUI>JX5xjrS$yGRK5D{EZ#M4mGw}?& zUi-OtdHQ7)90SsaggPNWrBLKY|B+sG*00000NkvXXu0mjf DH#V1T delta 369 zcmV-%0gnEF1B?TZB!5#$L_t(|0qxbjO2beT2k@H^$Kar3@CEV$4$fIb$l~CVHxQRR zfFOc{V-{b*#Z?g(X9r)P50GvhN(-eFdVAnPxHN^{k8^TcIA;iL=?y>5{oivVDO+(! z6^8~eh(QcuP-p;yjvkcIy?Qme{`{SlMGBu!@*l%hR2>2hJbxFa zdWGyzU-R)jHD8Vl>NF2e<4#l6e_=qn=I!~yL4yfG(V&6!+$fE6Q5}1?_TYg0gNzBn zicVKvgR!p>HZu^pLrMd;mC%B0H3Km_)E~$Go8{giU4s&2v`}LO*$cEY$cPpDYY^Kb ztU^r}WS0&NqiQh)=^Fn@gP9?S&fU!^U3-K{h6dX#Rf)-;;C?8JRNpcp&3@4R>uo-t zZ2d^55r)UUdAx*YcAiw#naIBAGi(LfI$pm(9pF3fb+j{x_#E( P00000NkvXXu0mjf*m$c) diff --git a/assets/generated/Classic Half Curve.png b/assets/generated/Classic Half Curve.png index c1eb57fed07d26d05dce46a794a06e6a2a47e16d..e7c7c4d07f870825d4bcc1d53bd297eadd2f6aad 100644 GIT binary patch delta 633 zcmV-<0*3vI1(F4jB!5{+L_t(|0qxaaNEAUF2k^P&B8)`H{=f7P(o;p0kdIl=L-i0u z*ozfHA$W9DmdGI&E)-rK8h4P3S`SN-1z|xEhrI+@Twz%#LcU0L?WtGNkwv>sKb=^o zVcl-Ko!cJfhb-gVF#Fl>%+C5So6>kbeLPkjwRRbie%oAI1}f zzxT2&kC*z%&()E9J6pcB2pUHNv(?2 z=1^Z^#C}e{D}M_#{Qmo$M>8!K*Z-N*M{pQ(7}~uLhjX0SaY76w+^&VstYgLmn^TYn z{B`xdbNZ+bKqh5i@LR=>70~GD$(%m6${f(xsu>HB=sJq4L+GC>R}dXc`^{;1cLLR= zX3wQ-X|hEC6zzV4@+iO4HEQjeI#;ur?vdkZ(ugRpQGed$ccf`iCNG>?WBwaaCLxst z(_sD-QcErwLy=?YP~BR(C)zy)CvW4`S8h@45;8SU2C|hEE16d*u1*65%5{x(LQFQH zs3xCX)Lie$7zPeDzjU2K>Mx&;hR7#c(|J1sSAH4`5FO9?%c(2%i-+%xyPx422q*bz z5VMD9O>$69wS_j2_K8lZvUEP1+9tjl76domSG9TO-t&>MAF=R8(y3<45E`p#c)^=O z%I>6Y3+*a7y!+(NSYarn>^8NM(3d~uxPL9n@z6>kkk4FZ)OKC TGLw3M00000NkvXXu0mjf>v1iJ delta 626 zcmV-&0*(EW1&alcB!5y#L_t(|0qxaKNEA^V2k^I#jWUWL`(t(J6hTlFw1mgJbf{xQ zcBnuo1ecb|5*cL6fx^v2!=+r*IxI=n#R4P5j#+GBStvqXq;1<>-HIkHnzyf?KA4@J z>SN)xD*3cC#uAOR8}0dgB4Kz{-xKsMK(i9_ZSJd`Gi zfA1ALpDuRF>!>6CZq~QE44Py9NtIASP=Dw4A|+&)$K#q3;_QTjG^1C&W>L?Wy3o&D@+oa}x4^Pj}yY zt3TBONTUpo%vA1M4NYfn_H6ZfZ9-#fip)o%swfg0Ma!zCg7m?(-<^iN<3Cxhja<2z zW=jM>;hwjsfbv>>My=gb7iu=>N90JFHKFJmRB(AMX@6RxnM-FjYF|Uq44L1>a%7}% z3adpQ8Ap*j(o)?f{YbcH3f{bpH(uLCF-u6(JR4T3D%WsZDH59o3Y6^{(%@RTb&97{yu)^l28$w_7ny&j0O{kocrAIoKL7H)^YAMi{lU0%8pN$3 zy(Sh&A>^iVls$O*>@S;>et`v3~AV2~nKmz18K!B{)U)EX-4BPnbUjP6A M07*qoM6N<$g3_il(*OVf diff --git a/assets/generated/Classic Half Straight.png b/assets/generated/Classic Half Straight.png index 62080a1173fc1eff9554c4fd9ddd45361983a616..2886ea8d732faa84c226c64abb05802040303a8c 100644 GIT binary patch delta 467 zcmV;^0WALJ1MLHlB!9F?L_t(|0qvE)N&`U<#?NpPiAox^Fj)HlMo1%w2qM~82$IfP z2$m@X@eM2tc>qg`YXq^eu@UqI@&GERhZviPLR=j11~(@e>I{~ zyBQ7DA?yT4!_iajTJH&YdG+ZHr^l9vYq_a*MmJtnQ+dGzy6Oeu(o7!Uo#1%3uI2w=z z4O8e?$WX;3VSgDrH0aT$3d;;gzpY$obb+Ka>~6x+F#sBr)b@H=I+Puy06IRX;?Jb5 z#EI-47D)Y;i4L*5IeVyR)DB5!pcobvjRHt#B2$%4qR^VA5tWw49-m&mW~M?ad;S7y zoyNBx(~HIDWM{cHj(^aNdqL%AK}e&1Iyw_`?Pe7GwoDr{BiUy$t?pFo3nzpqAa$2< zfp&NpYid(KJoWij_S&H45Hndxh{ z?^&55DjE<#0Te(1R5T!fN&))5TjGE6q7)ed%KG+$lZp7Y7k}SAId82j4$J?lrIr27 zG*?jfOniL)j!vIhHz6yTuHnU!e>N{$n0;t6WYpAmCgmsnQ>U1%2r`7x95vsOyG5na zFwc_78hxx}&02ER^9(7u0gckg5O_^?ka5C|#d6Y6j=g8=c!BVZ?3$h|Af=IEp=cm7 zXn4e)jSO8(QhzMx40XDysEXwV!jF}Y1`9H3__qmL#{tx-Qme}&#zWaNETFxu8TqFe zEB!?FFBXLTF4Hr_zpbQ)N@LHE@eI_9MWwNTFefrq>xhUmYiem_e(>?><)=CpQ>CXH zsDAKz{WU&2@GPDz%nivea1AU7HEvf2Plj0YG94bjHAOCN2`LcvDP!93^GG(TY@$J~ z!Gd%dZQsZdIlZ0i-oT(f9O#;>6gsfvSE(Bft(xJe@vp&}xP=qi+g zpx{<09UTM_`~y0)6vRQW6u}{jApSrUmkynUf*nMnL+PMaAu7hV4c_<2kN4gr7h3q{ z8OrsN%YE{^&wI%^j>Wb~+NJ?ApbRJj%78Wvu$zH?PcOz;rGM;OCT_o{^4#;6{+v`C zG6!e)xOL}qq_z1ps&nQ10g;AZrC6n)WMNrxY5I4MdFG!y``YY`)jNb|7HH1Z_FcVn z&@(?=mUT8k7Ut9IAU{ppEPPwcE|-{MASn&lb z?7AU+ezZ`B(SLZ_D$pKR(nizN(m;?A8Zb$^i>B5ae~_a}OOj#_4K9j3B%m-FG00FU zhDL`-BL_k{oE~H@F@`L)9{@reNLyr9Kt_XZ^l2QG*OF%IfT>TL4W3baO7}4sy)FD0nPOXl5B<1 za985d1Us~T#Ue00y!qFifh>Qte!<}V2OBwZhRgCRYj#?nvjoCI-8KuAawcasYZ1Ad#G3H%*(Yw;Y)IgaI- zg1zs*{A6?L>`}maF?#F2>JCIQh>l%f&EKf@STY3w5hapAylmTsv{sHT63ylU3F5v(G002ovPDHLk FV1fl;E13WQ delta 639 zcmV-_0)YL51(*epB!6E?L_t(|0qvE~i_<_9$0uoPN~;#B^`KX)Ab1lLK@<_KKfr_Z zU_nsmtswma1QGlLyc91U1WPVG^rA>FA{4QQ9E5_R*n(gb)C$#D>}Gef(*}kiKi*7| zDOuROL&;1hGoO6l_q~xUOGn!&UW4`lp zT5Ar(D`bB+Ky&U?zIwUfm~R_p1!=&x^6DzcO>?)KQ~Fx1Rul}xq`~sIGlk zN>wK!fjnuRzkmA6EUSfeZWgD;2E2bTQ~S|4%F0t7JD7zgi>1Lv257KI%u{5s+PIAz zG~_5QcF@4VBM%pl9}R6}oGAoahm(d41XMV`kx2jznir_`YyvOv>&R|-cxc!_ja$yH zN@of!lf^^BA0Uu^1t=??!^i?oc@TWLny#)&Xvj%Cb$`xJ11SVwSg!~Fm^49?<*(4V zVwx844s2vn2M6}2gUaKr5T?2Pgkg3+8lp-#8gGS`pIE|7PwSiZ4EFLDeGNan|2zj; zPTMHosgBjo?;pR`QP_Y?&1^yr8l|tH8~eyi2zij7sekG-&-r7A6+d|vGzh)u{lUM@ zhnir8zIcwNr9(MbHo9kG>l{Cl9e(~D1PdE6h`}a}U|zr?R>nqxh_MI?>w%GBSa;9N?97@J^Fx+# zH#z&|JM$;zx?M6#afS_Gfh>>(vOvQIut2Jbn=SWozeopvW`C~uv3v!Sh8O`qF6}|Xj?De z3X3}iX&^x~@_%s*b_(v))XTJganu_ACgPc@2Su5f1k?nOB!3%8L_t(|0qvDPOY=Y+$FCvJlc79+#6N?JP%Zib6x=L2NL7j; zE)nqsbm`(Ih~NtlN;fB43gT9z#X&*32zGPopdeTWrD|;*v_d?H97l3@`6aow4*62b z^{!k#`F?-DyO3ej&`*-mYk&YK01AKtpk4z6KyIbV-L74oH-87e#!u)md)88eAcA@up0kI|2!%+#2YGdUBNUtRZL?^ibzjgbOeYQ7LuWmVbmmgW40C39&DSV zJzg9VA1XW=xPKIhNnv|+X)vs2nzu8u!ua#TUgFO?dMP4 z666f@U=J7Qsu&YrSj@2Kg7Zd$r7~wHMm4u>^J3E%g!jFCADq%2&7!7X zokx?H`@4VmI8~L5utsvhL-S%sn zahw`+iD2Qd^u+&s;l-yhARt5mIl-bDZK^=fC3=d`T{W>15aGII3WN4002ov JPDHLkV1j%{3z`4` diff --git a/assets/generated/S25.png b/assets/generated/S25.png index e8e1690a5566f8a40511a2d10ca7f3dc505b5cb1..f2762394b5ade8e232704ddaf5c6241b3dba5a14 100644 GIT binary patch delta 372 zcmV-)0gL{J1CIlcB!5;(L_t(|0qxbjN&`U@1>kWIw9zf>?8OJr!rDdz8w(pNt!?%J z1QC1y3+*iJ(gxC{PLUT#9g;p|yA+!V3&Su&HuH0CW{Z0X%R*rJIQQ(%L0!*8mqz9W zFo;16Vo+`XgE|LVP3}4YQjX^L_Aw7Kk(~Cfpf^}Nm!muhg@5jd7G!EvD*E0t9x%w% zsOmi37p`pQz&d1QV`}{4fhE+EO^^n>vi@+XuD_q>(Haa$$MbM|lKwP_U6#I&i$^4u z8dYRWLck&eK$b=qIelVQrZwudvWlD-PfS9V22$jtgtjdUq6tojt~xQG77Z#M;lDCd zV+~N_n~+&#Qf-YF$jrult$>u6QoBXQ#uEmjE3!FN(3B)V(#}?}v$pU89zdI|mfdcP*}%XfB1Fe29CINDe;qUI@Kg%TY+Q)+T&-qRFT_>U39e>G!e2q(m&WZ7WLB7US z=lb#>mTetahk|T;O?o`AghsN-(tua?@wIUOUmlOy8VrcyxjNr3|2B(V7M*$Vn8H${ zii}AJSY!Yw&`^=fhqE%$xN8*@xiB71LV*TSD?&1CV?jW1R|9yrjPn|x=o(-y@AD2?XPi|?X0 zO!L(e-(q#7f-Jn@wRCeASs|$>e5M(KUrD2p+JpTPX^0*^ZMirk-eg{chDAq9BbDz= z1ICDp=0Uzv8-Ew=(E};GQQvT_JqM44kE1C&Aa$n{($d^-@7wU|H56wSR!o6xX~3St zl?f9XXco{&?E#I&ab!iKxKrjq28Xb?Fne3?kSz_9Aq~qic1;81Kx6ep08Qu60i+QF zM1lIDv7I_nngq}gXw=O@^(OV=^{$OiK1`IuaVYLy{C`9CE!}H&3C>TGYxQ#Fhk1~n zM~xHVSA{+F>G<4eArKtTpG~kpZ{K$eFL`qCO!e%UP2JgR*}|=^hx_Mt@@M1c{Ts@A z!u6i3*x=FHLqolF$0jURJLUT1Zl3I8^h@+?zFIN?;$I0hjppenovHv9n1}wcep%fq zY}V1!dw=0G*}pcaA=hyHx8_g$bIbHbES9g;_;d%hsOM$JI@wo7=Yq%pUO(O_M(;8if>d zc?3Y_%^IFVR>~I0)}G9PY-#e?vO!*ZUO3Wn1Rdn8+_kI#(&;aC5kjkwlO-|$0000< KMNUMnLSTXcvr)_d delta 749 zcmVWd)z1B4;?2kfN?dvz3H4+Bxl6h${tk*W{kP}vZ{b2wMp(sQo1wf<^m7Mr_V za=p>Y?#no?NiO;9`}-#GmCHJ6Bq{X<@PIrZ56Ad{(Dq<& zs_Yc0omzXP_!=H)lOj`Ur-A6Ojkr>=tGleGvf7DaKwr;rXsUvY{?^NihG;U8bqG|* z6s@}0ZDqO)tA7dOfN8tpVs7Xl)6p@dX_`%HL)+qGy;WVR>nTP8#R6&P+fl$L;}ADD z9DDfQ5PLo@g_6L*m}ug zH&XDNZ`+ez`T;NB^p!iKLDCCZ{-pn0rG{6p-Prx6RF)h1JNU4(aZJ2>(q{} z5WEcT|Bg`5^cz5*o6n0Id3h?-7ffoy+fn`({A72QIncc)#;Id1pBJ(ihBz`UM}KekZ+Iu)nP?;sJn?K zvl1>A`jh2IhtOKmK&)p~w$bVfF0Ku>%d!hVESxFU(8;aYTnPyj3(Hq7>--U8R}MQs z1h~pAp;Zv$@suEqkV7Nal2T-mPIYOy2%f fS27RizXSRW6}d>#%qFty00000NkvXXu0mjfQ4DNZ diff --git a/assets/generated/S5.png b/assets/generated/S5.png index b07db27474f8da84acafa978bfeea9abaaa18fc0..11df8c7510e7a792081b3066ca1b190cfbce98ee 100644 GIT binary patch delta 688 zcmV;h0#E(<1;_=EB!7=dL_t(|0qvDbXcIvg$EQmrFt751ZD}vz32So^oM5HJ} z4??LGDtM8K#Dm~L5W#~tJy--OC@2!}P!NOoKoBpY>q!uT$w6`T5Q4-PM#1$<#w<%_ z=9|ZEjF9~w!tCtK<~RTEF$13GlK)9ouK{A97$^pcfqD(lpMOBVN_&m>4o3LjOE%q? z&Px^Qa#e9+?(B!Fg;)Q=At?=@7<|?c=-SKUGq%#oUE@Pq;WG)DVx#~C1_vk7qBUGN zOBaGmbNBHV))<`T_Px5fLt14_QwM->n(6#A?kg)K4eJdRLUZ%$#-h7I^wtXL&HmlX z*va{G>qP5MEPtjFPaWigk}8|OQG?&P!^1>DDs`Sser#m7<-`l*AycFw?L(oQU(5oNR-==#y$-1%VY01B;PB$0j1*l+L!7?4)AvDt0ZY$Di%Gsm?x5V~DH5AbMN_`}g3KFRI#-MiW z$rKAeIwtW1BHX0jvU4pRl;CK@lLqTip^}^0pnD9CLo3%T{apKdvgZ$7 zVvk-qy?;m_FP&*N{>@_v{G&8jxvA#jeVI?wd57+m+5;N!JU93Z+rStKw0t-TzdlXJ zGJnhlGt~ z>&NQvR<9Z~wueYBS7VvcbP>o{T>&z-r&~bAG%1k*< delta 737 zcmV<70v`Ry1^ES#B!9q3L_t(|0qvDfXcIvc#wTlH(=;~PKSmVv5*38rL_{g5MT%9t zh@e5Chu$hu?}7;4ym-k)0t&6A5JVJB>P4&~h{jVvw6u!iT14Brw2CoJ*JlRTr1S6X zWU&GFqYTUBZTidiy*CrEZIjfKjFkrPfqWnz$Ol?!fd3Py_8fjQ>s3bH)3tN*XTZ!4D1Elok$bmKN zX6oWbQT^Flk$;BA`I5CboSEeoD5fkmI0I|{=~jXeX3jgq)3A;{S`ZbeBSX@VKaDK0 z2U_Q7S98aW8o4)cC=-{eYU+FGy|8{ZzxSpi@UU#eoS*n|vOrX~ z6)7Leo#8wjJl1?EleLgQRc0LSdjji+DXTJjq}8l;9o&>W(Grb^#-4q1HsuY(Z|aUc z8r2dE|9D5|Dz?MO7hpX5vF4GIr8N3Go0@8%o0 zl*iaZl$WbSPL%9r2RCTEE%@onVx-YQxZ>A_1 zS1J{-Z4*;><@`=%&17tI!g{~HEtovEj)VfkBU-a=X$U?t$8ZeU+o{6Z*eaqW*FA(G z8@&BBv1PR$5H>Q295N>|f*UBVj2dYOZ+x_AyaB?GG)5jo=B>PO$OrO)>PWu;79ld% T7Tk<)00000NkvXXu0mjfNP}IQ diff --git a/assets/generated/StudInsert.png b/assets/generated/StudInsert.png index 0e238b20a5908ba51c2b5ce811521918bad3999c..50c8757cd89ef6e63efc25b5ce34a51fee42cb1e 100644 GIT binary patch delta 602 zcmV-g0;TPo^Ev-7lBQ#@rf>O*kaWg8}FwEimMQ8qL{d(s^p zQW~{A=W&)rDVaT%f!O#=OcMk2`(Od5q2rSmypVatv^^Q)^Tp=TgJM)b^F@!$&T`Q! zUG}2-9Bz*ai0^q}l9L^NnDcKX=yO3xL6gI7A@2&01b+gl1RA(Ka-jDwZ_x#Ca561d zL3mS(#)(SVhff2#c=EW~>4I!$^E`2~;=7EJ^@nS9%-iQzZ(P4%o-8Ui2zudNmbI{m zXTpw9$hsGgAgucW%cd00Bw3LTQG3Y8_-{w)N)6je78QzhLTZB`mMlXWIZ*4>|0psw zoME!4G*fCw@QnRyD_K5+D(pexNEizWxSpY%ED3Cdg9*}~J09m1N5?qW9 o*M^X6>MDstsS0fyVCR9(0H5t4k%Gp+rvLx|07*qoM6N<$g8W_}(*OVf delta 619 zcmV-x0+jvp1cU{UB!5duL_t(|0qvE)ixWW{#V4D%8&M>hL=lS=7Ab9_V4sGdapx%C*iWhXB{OJ$=!n8>PXM64O1D+4#$ux;4JJG)+ij#1>2%}^+ zPs=Csm`OeKUJTmcm-_NbC zIvzg@(T8F{KY#UQzXtZAE2wOLWCl>;d8<8+~)onp!jx zpv%|aOIwrF;MEw}gQt%A_)!9aM;7?r@ZChZ%l(JHV1J+UepR;z2trK;2sin?TNQH6 z)f+!hnV%}<@t2f6S~OfBUYy&Hen)Ws0$CJJXaKJ| z&@EFeBV@A7?SbT>)~!h!8jVmZl3CIK^*IDlD7YobWH9o`?Ck-(P-FGl4e1sr)J|xC zG()Y@fji$*_xS23nH5bpvD`Xcv*k3){6#Q_lbZ002ovPDHLk FV1gXiE$aXP diff --git a/track.scad b/track.scad index 959cbf7..1216fc7 100644 --- a/track.scad +++ b/track.scad @@ -2,12 +2,10 @@ include ; include ; /* [Print Settings] */ -// Some feature are generated with respect to the layer height -LayerHeight = 0.2; // [0.1,0.13,0.2] // Mid-print stud inserts allowing the studs to be printed facing up seperately -StudInserts = false; +StudInserts = true; // Mid-print slot inserts eliminating the need for supports -AntiStudInserts = false; +AntiStudInserts = true; // Part to generate Type = "rail"; // [rail,studs,antistuds] @@ -68,8 +66,12 @@ module antiStudInsert(carve=true, depth=$studHeight * 2, supportHeight=$LDU * 4, difference() { union() { cube([$tile * 2, $tile, depth + supportHeight], anchor=FRONT+BOTTOM); - translate([0, $tile, 0]) cube([$tile * 2 + supportWidth, supportWidth, depth + supportHeight], anchor=FRONT+BOTTOM); - translate([0, $tile / 2, 0]) cube([$tile * 2 + supportWidth, supportWidth, depth + supportHeight], anchor=FRONT+BOTTOM); + translate([0, $tile + supportWidth + (carve ? 0 : $LDU / 2), 0]) + cube([ + $tile * 2 + supportWidth + (carve ? 0 : $LDU), + supportWidth + $tile * 0.6 + (carve ? 0 : $LDU), + depth + supportHeight + ], anchor=BACK+BOTTOM); } if (carve) { @@ -85,12 +87,17 @@ module antiStudInsert(carve=true, depth=$studHeight * 2, supportHeight=$LDU * 4, } } -module studInsert(supportThickness = $LDU * 4) { - mirror_copy([0, 1, 0]) translate([0, $tile / 2, 0]) group() { - cube([supportThickness, $stud, $stud], anchor=RIGHT); - cyl(l=$studHeight, d=$stud, $fn=48, anchor=TOP, orient=LEFT); - } - translate([-supportThickness, 0, 0]) cube([supportThickness, $tile + $stud + $LDU, $stud], anchor=RIGHT); +module studInsert(carve=true, supportThickness = $LDU * 4) { + mirror_copy([0, 1, 0]) + translate([0, $tile / 2, 0]) + cyl(l=$studHeight + $LDU / 2, d=$stud + $LDU / 2, $fn=48, anchor=TOP, orient=LEFT); + cube([supportThickness, $tile + $stud, $stud], anchor=RIGHT); + translate([-supportThickness, 0, $stud / 2]) + cube([ + supportThickness + (carve ? 0 : $LDU), + $tile + $stud + $LDU + (carve ? 0 : $LDU), + $stud + $LDU * 1.5 + (carve ? 0 : $LDU) + ], anchor=RIGHT+TOP); } module brickSlot(w=1, l=1, h=3) { @@ -117,9 +124,10 @@ module endCapStraight(includeRail=true) { } if (StudInserts) { - mirror_copy([1, 0, 0]) translate([$width / 2, 0, 0]) studInsert(); + mirror_copy([1, 0, 0]) translate([$width / 2, 0, 0]) studInsert(carve=false); } + mirror_copy([1, 0, 0]) translate([$tile, 0, $tile / 2 - $plate * 2]) cyl(d=$fillet, h=$tile, $fn=12, anchor=TOP); translate([0, -$tile, $tile / 2 - $plate * 2]) cube([$tile * 2, $tile, $plate], anchor=FRONT+TOP); translate([0, -$tile, $tile / 2 - $plate * 2]) antiStudInsert(carve=false);