From: Jan "Yenya" Kasprzak Date: Tue, 8 Aug 2017 13:17:24 +0000 (+0200) Subject: Proof of concept of a bumper for mini arrow X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=commitdiff_plain;h=1f3312a8525abd2bd84e4adcd35dc3cd628efaf8;p=things.git Proof of concept of a bumper for mini arrow --- diff --git a/mini-arrow-spring.svg b/mini-arrow-spring.svg new file mode 100644 index 0000000..7e40cd4 --- /dev/null +++ b/mini-arrow-spring.svg @@ -0,0 +1,155 @@ + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mini-arrow-spring2.scad b/mini-arrow-spring2.scad new file mode 100644 index 0000000..4961be6 --- /dev/null +++ b/mini-arrow-spring2.scad @@ -0,0 +1,121 @@ + +// Module names are of the form poly_(). As a result, +// you can associate a polygon in this OpenSCAD program with the corresponding +// SVG element in the Inkscape document by looking for the XML element with +// the attribute id="inkscape-path-id". + +// fudge value is used to ensure that subtracted solids are a tad taller +// in the z dimension than the polygon being subtracted from. This helps +// keep the resulting .stl file manifold. +fudge = 0.1; + +module poly_path4339(h) +{ + union() + { + linear_extrude(height=h) + polygon([[25.000000,-1.500000],[25.000000,11.500000],[27.000000,11.500000],[27.000000,-1.500000],[25.000000,-1.500000]]); + } +} + +module poly_path4315(h) +{ + union() + { + linear_extrude(height=h) + polygon([[-30.000000,-11.500000],[-30.000000,-8.500000],[30.000000,-8.500000],[30.000000,-11.500000],[-30.000000,-11.500000]]); + } +} + +module poly_path4321(h) +{ + union() + { + linear_extrude(height=h) + polygon([[0.015625,-9.750000],[-3.592242,-9.773235],[-11.541016,-9.560550],[-15.799638,-9.233666],[-19.558594,-8.679690],[-22.353516,-7.800780],[-23.300781,-7.109380],[-23.750000,-6.000000],[-23.392851,-4.918063],[-22.539062,-4.150390],[-20.097656,-3.341800],[-13.306641,-2.626950],[-9.756763,-2.294389],[-6.738281,-1.759770],[-4.791016,-0.931640],[-4.250000,0.000000],[-2.750000,0.000000],[-3.069577,-1.201359],[-3.884766,-2.126950],[-6.355469,-3.208980],[-9.583081,-3.787643],[-13.193359,-4.123050],[-19.808594,-4.814450],[-21.785156,-5.447270],[-22.250000,-6.000000],[-22.181641,-6.111330],[-21.669922,-6.466800],[-19.253906,-7.210940],[-15.645675,-7.740944],[-11.458984,-8.064450],[-3.595258,-8.273640],[-0.015625,-8.250000],[0.015625,-9.750000]]); + } +} + +module poly_path4291(h) +{ + union() + { + linear_extrude(height=h) + polygon([[-30.000000,-8.500000],[-30.000000,1.500000],[-28.000000,1.500000],[-28.000000,-8.500000],[-30.000000,-8.500000]]); + } +} + +module poly_path4345(h) +{ + union() + { + linear_extrude(height=h) + polygon([[28.000000,-8.500000],[28.000000,1.500000],[30.000000,1.500000],[30.000000,-8.500000],[28.000000,-8.500000]]); + } +} + +module poly_path4333(h) +{ + union() + { + linear_extrude(height=h) + polygon([[-0.015625,-9.750000],[3.592242,-9.773235],[11.541016,-9.560550],[15.799638,-9.233666],[19.558594,-8.679690],[22.353516,-7.800780],[23.300781,-7.109380],[23.750000,-6.000000],[23.383995,-4.912297],[22.511719,-4.146480],[20.015625,-3.341800],[13.056641,-2.626950],[9.413756,-2.293870],[6.312500,-1.757810],[4.304688,-0.925780],[3.870214,-0.487351],[3.750000,0.000000],[2.250000,0.000000],[2.579004,-1.207472],[3.414062,-2.132810],[5.937500,-3.210940],[9.242494,-3.788161],[12.943359,-4.123050],[19.734375,-4.814450],[21.769531,-5.451170],[22.250000,-6.000000],[22.181641,-6.111330],[21.669922,-6.466800],[19.253906,-7.210940],[15.645675,-7.740944],[11.458984,-8.064450],[3.595258,-8.273640],[0.015625,-8.250000],[-0.015625,-9.750000]]); + } +} + +module poly_path4303(h) +{ + union() + { + linear_extrude(height=h) + polygon([[-30.000000,8.500000],[-30.000000,11.500000],[30.000000,11.500000],[30.000000,8.500000],[-30.000000,8.500000]]); + } +} + +module poly_path4285(h) +{ + union() + { + linear_extrude(height=h) + polygon([[-4.250000,0.000000],[-4.791016,0.931640],[-6.738281,1.759770],[-9.756763,2.294389],[-13.306641,2.626950],[-20.097656,3.341800],[-22.539062,4.150390],[-23.392851,4.918063],[-23.750000,6.000000],[-23.300781,7.109380],[-22.353516,7.800780],[-19.558594,8.679690],[-15.799638,9.233666],[-11.541016,9.560550],[-3.592242,9.773235],[0.015625,9.750000],[-0.015625,8.250000],[-3.595258,8.273640],[-11.458984,8.064450],[-15.645675,7.740944],[-19.253906,7.210940],[-21.669922,6.466800],[-22.181641,6.111330],[-22.250000,6.000000],[-21.785156,5.447270],[-19.808594,4.814450],[-13.193359,4.123050],[-9.583081,3.787643],[-6.355469,3.208980],[-3.884766,2.126950],[-3.069577,1.201359],[-2.750000,0.000000],[-4.250000,0.000000]]); + } +} + +module poly_path4327(h) +{ + union() + { + linear_extrude(height=h) + polygon([[3.750000,0.000000],[3.870214,0.487351],[4.304688,0.925780],[6.312500,1.757810],[9.413756,2.293870],[13.056641,2.626950],[20.015625,3.341800],[22.511719,4.146480],[23.383995,4.912298],[23.750000,6.000000],[23.300781,7.109380],[22.353516,7.800780],[19.558594,8.679690],[15.799638,9.233666],[11.541016,9.560550],[3.592242,9.773235],[-0.015625,9.750000],[0.015625,8.250000],[3.595258,8.273640],[11.458984,8.064450],[15.645675,7.740944],[19.253906,7.210940],[21.669922,6.466800],[22.181641,6.111330],[22.250000,6.000000],[21.769531,5.451170],[19.734375,4.814450],[12.943359,4.123050],[9.242494,3.788161],[5.937500,3.210940],[3.414062,2.132810],[2.579004,1.207473],[2.250000,0.000000],[3.750000,0.000000]]); + } +} + +module poly_path4297(h) +{ + union() + { + linear_extrude(height=h) + polygon([[-27.000000,-1.500000],[-27.000000,11.500000],[-25.000000,11.500000],[-25.000000,-1.500000],[-27.000000,-1.500000]]); + } +} + +module poly_path4309(h) +{ + union() + { + linear_extrude(height=h) + polygon([[-1.000000,-1.500000],[-1.000000,11.500000],[1.000000,11.500000],[1.000000,-1.500000],[-1.000000,-1.500000]]); + } +} + +poly_path4339(5); +poly_path4315(5); +poly_path4321(5); +poly_path4291(5); +poly_path4345(5); +poly_path4333(5); +poly_path4303(5); +poly_path4285(5); +poly_path4327(5); +poly_path4297(5); +poly_path4309(5);