A simple interface to generate flexi 3D models from images for 3D printing Visit the original Printables page!
Flexifier web app powered by streamlit
To convert a png to a svg I suggest using 'vectorize bitmap' on Inkscape. On Linux, you can install the packages imagemagick and potrace, and use the terminal commands:
convert YOUR_FILE.png YOUR_FILE.pnm
potrace -s -o YOUR_FILE.svg YOUR_FILE.pnm
rm YOUR_FILE.pnm
The generate a hinge in a model from your svg try:
difference(){
linear_extrude(height = HEIGHT) // extrude the svg
translate(v=[X_TRAN,Y_TRAN,0]) // translate the svg image
rotate(a=[0,0,Z_DEG]) // rotate the svg image
scale([X_SCALE,Y_SCALE,1]) // scale the X and Y axis of the svg
import(file = "YOUR_PATH/YOUR_FILE.svg", center = true);
translate([X_TRAN_HINGE,Y_TRAN_HINGE,0])
rotate([0,0,ROTATE_HINGE])
diff_hinge(HEIGHT_HING, hinge_diam=HINGE_DIAMETER, hinge_h_thick=HINGE_THICKNESS, break=CUT_THICKNESS, break_len=CUT_LENGTH);
};
translate([X_TRAN_HINGE, Y_TRAN_HINGE,0])
rotate([0,0,ROTATE_HINGE])
uni_hinge(HEIGHT_HING, hinge_diam=HINGE_DIAMETER, hinge_h_thick=HINGE_THICKNESS, break=CUT_THICKNESS);
Replacing the capital variables with your values. The same approach can be used for the ball joint.
I enjoy working on this project in my free time, if you want to support me with a coffee just click here!
Code is licensed under the GNU General Public License v3.0 (GPL-3.0)
Models are licensed under the Creative Commons Non Commercial Share Alike License 4.0 (CC BY-NC-SA 4.0)