Linear Extrude with Twist as an interpolated function

Linear Extrude with Twist as an interpolated function

thingiverse

OpenScad Linear_Extrude extended use example. Module and function example to make the linear_extrude twisting functionality follow a function. It is a piecewise union of linear_extrudes. The example uses a sine function as a twisting function. Scaling by a Scalar is incorporated and can also be passed to the module. How I Designed This Motivation In a attempt to emulate a propeller blade with an aerofoil profile I wanted to define a progressive increment and the decrement of the blade width, maintaining the profile as moving from root to tip of the blade. The twist part was a follow up once I managed to get the scaling section done. Main Code module linear_extrude_ft(height=1,isteps=20,scale=1,slices=0){ union(){ for(i = [ 0: 1: isteps-1]){ translate([0,0,iheight/isteps]) linear_extrude( height=height/isteps, twist=f_left((i+1)/isteps)-f_left((i)/isteps), scale=(1-(1-scale)(i+1)/isteps)/(1-(1-scale)i/isteps), slices=slices ) rotate([0,0,-f_left(i/isteps)]) scale(1-(1-scale)(i/isteps)) obj2D_left(); } } } User must implement a function with the name function f_left(x) =...; which returns the value of the twist with an expected input ranging from 0 to 1 along the extruded height. User must also implement a module named module obj2D_left(){...} to define the 2 dimensional object to extrude.

Download Model from thingiverse

With this file you will be able to print Linear Extrude with Twist as an interpolated function with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on Linear Extrude with Twist as an interpolated function.