Thingiverse
boat propeller customizable - OpenSCAD nSpline() library with show cases by Parkinbot
by Thingiverse
Last crawled date: 3 years ago
nSpline
last update 2019-03-14: should work with OpenSCAD 2019.01 RC3 and older versions down to OpenSCAD 2015.3 now. To update your version please visit OpenSCAD snapshots
With this post I'm publishing my splines library. Its core function is nSpline(), which does an interpolation over a n-series of m-dimensional vectors each describing a 2D-shape, and calculates in-between values with arbitrary refinement.
The progamming technique behind it is very general, so you might find it useful for your stuff as well.
For example you feed the function with seven 4D-vectors given as a 7x4 array and ask it to return you a 100x4 array. It will interpolate you each of the 4 dimensions over the series of 100 vectors. But you could also feed it with a 10x8 array and receive a 200x8 array with each (!) of the 8 dimensions interpolated.
The m-dimensional vectors you can interpret along your needs, which means you have to provide a generator function doing that. Usally this function would use some part of such a vector to generate a parametrized 2D-shape and the other part to translate, rotate, scale, or even colorize this 2D-shape along some trajectory in 3D space. Just like a linear_extrude(), but with much more freedom - and at the price of much more self-responsibility.
For doing a sweep() upon any series of 2D shapes it is tremendously important that no polygon decribing a 2D shape self-intersects and no two 2D shapes within the series mutually intersect. Two 2D shapes may not even share a common vertex. OpenSCAD will not check the result of a sweep (which finally executes a polyhedron call) and currently even lets you export a non-manifold STL in some cases - so using this very mighty scheme is a bit like tightrope walking.
I have tested it with great success for several projects, mostly in the field of blade design, but not only. I use it mainly for extrusion with my own sweep() function provided in my Naca_Sweep library. You can also use it without any change with the new skin() function currently evaluated as future language feature by the dev team.
// usage scheme - n-dimensional natural cubic spline interpolation
A = [[...],[...],[...]]; // define Mxm matrix, M>2, m>1
B = nSplines(A, N); // get interpolated Nxm matrix
C = gen_dat(B); // interpret data as sequence of 2D-shapes
// and generate trajectory
sweep(B); // extrude by knitting polyhedron object
As full blown examples to show the power of the approach I've designed
a customizable boat propeller in boatprop.scad that uses airfoil data and some realistic modelling of twist, camber and pitch. Its basic setup consists of 4 well placed slices only, as the slices view shown in the second image reveals - the 4th slice is too small to be visible. The parameters necessary to generate the 2D airfoil data for these four polygons make only a part of the primary data fed into nSpline(), the other part is used to describe the affine operations (translation and rotation) for 3D placement. The rich data set that results from interpolation is interpreted in the same way to generate a rich series of polygons, that can be swept into a full blown propeller blade with smooth surface transitions.
a horn in horn.scad as part of an instrument. The code uses a Boolean difference operation of an outer and an inner skin object.
For further code examples see the more basic knot() example in the splines.scad file (slow CGAL-rendering(!)) andhttp://forum.openscad.org/Rendering-fails-difference-between-F5-and-F6-tp15041p15100.htmlhttp://forum.openscad.org/general-extrusion-imperfect-tp14740p14752.html
Extrusion functions offer you a lot of freedom, but also put responsibility on you
you must avoid self-intersection of the extruded path. If self-intersection at some point is unavoidable you can try to split the array, sweep all parts separately and use a union().
if you get assertion failures in CGAL rendering, check your design in Thrown Together view (F12) for wrongly (purple) colored triangles. In some cases you will have to just revert the vertex order of your 2D shapes, in others you might find self-intersections by closely examining the result in F5/F12 mode.
last update 2019-03-14: should work with OpenSCAD 2019.01 RC3 and older versions down to OpenSCAD 2015.3 now. To update your version please visit OpenSCAD snapshots
With this post I'm publishing my splines library. Its core function is nSpline(), which does an interpolation over a n-series of m-dimensional vectors each describing a 2D-shape, and calculates in-between values with arbitrary refinement.
The progamming technique behind it is very general, so you might find it useful for your stuff as well.
For example you feed the function with seven 4D-vectors given as a 7x4 array and ask it to return you a 100x4 array. It will interpolate you each of the 4 dimensions over the series of 100 vectors. But you could also feed it with a 10x8 array and receive a 200x8 array with each (!) of the 8 dimensions interpolated.
The m-dimensional vectors you can interpret along your needs, which means you have to provide a generator function doing that. Usally this function would use some part of such a vector to generate a parametrized 2D-shape and the other part to translate, rotate, scale, or even colorize this 2D-shape along some trajectory in 3D space. Just like a linear_extrude(), but with much more freedom - and at the price of much more self-responsibility.
For doing a sweep() upon any series of 2D shapes it is tremendously important that no polygon decribing a 2D shape self-intersects and no two 2D shapes within the series mutually intersect. Two 2D shapes may not even share a common vertex. OpenSCAD will not check the result of a sweep (which finally executes a polyhedron call) and currently even lets you export a non-manifold STL in some cases - so using this very mighty scheme is a bit like tightrope walking.
I have tested it with great success for several projects, mostly in the field of blade design, but not only. I use it mainly for extrusion with my own sweep() function provided in my Naca_Sweep library. You can also use it without any change with the new skin() function currently evaluated as future language feature by the dev team.
// usage scheme - n-dimensional natural cubic spline interpolation
A = [[...],[...],[...]]; // define Mxm matrix, M>2, m>1
B = nSplines(A, N); // get interpolated Nxm matrix
C = gen_dat(B); // interpret data as sequence of 2D-shapes
// and generate trajectory
sweep(B); // extrude by knitting polyhedron object
As full blown examples to show the power of the approach I've designed
a customizable boat propeller in boatprop.scad that uses airfoil data and some realistic modelling of twist, camber and pitch. Its basic setup consists of 4 well placed slices only, as the slices view shown in the second image reveals - the 4th slice is too small to be visible. The parameters necessary to generate the 2D airfoil data for these four polygons make only a part of the primary data fed into nSpline(), the other part is used to describe the affine operations (translation and rotation) for 3D placement. The rich data set that results from interpolation is interpreted in the same way to generate a rich series of polygons, that can be swept into a full blown propeller blade with smooth surface transitions.
a horn in horn.scad as part of an instrument. The code uses a Boolean difference operation of an outer and an inner skin object.
For further code examples see the more basic knot() example in the splines.scad file (slow CGAL-rendering(!)) andhttp://forum.openscad.org/Rendering-fails-difference-between-F5-and-F6-tp15041p15100.htmlhttp://forum.openscad.org/general-extrusion-imperfect-tp14740p14752.html
Extrusion functions offer you a lot of freedom, but also put responsibility on you
you must avoid self-intersection of the extruded path. If self-intersection at some point is unavoidable you can try to split the array, sweep all parts separately and use a union().
if you get assertion failures in CGAL rendering, check your design in Thrown Together view (F12) for wrongly (purple) colored triangles. In some cases you will have to just revert the vertex order of your 2D shapes, in others you might find self-intersections by closely examining the result in F5/F12 mode.
Similar models
thingiverse
free
NACA airfoil sweep - OpenSCAD library by Parkinbot
...r
reverse your tracjectory by changing the sign of the path variable.
or reverse the vertex order in all your polygons
have fun!
thingiverse
free
Sweeping out OpenSCAD/STL curves with a Python script by arpruss
...or isn't smart enough to do anything about that.
the python code has a github repository and can be directly downloaded here.
thingiverse
free
Plates and Bowls by Zippitybamba
...late or bowl or cup-shaped models. most are printable as is, but some values lead to non-manifold shapes. check before you slice!
grabcad
free
Variable Pitch, shape and curved trajectory spring
...and square, and two sweeps intersecting on a curved trajectory.
also interesting here is the variable pitch created with a graph.
thingiverse
free
Pie Slice OpenSCAD Library by ex-nerd
...ad library is part of the dotscad project. source code and full documentation can be found at https://github.com/dotscad/dotscad/
thingiverse
free
Linear Extrude with Twist and Scale as interpolated functions by paucoma
... follow a function. it is a piecewise union of linear_extrudes. the example uses a sine function as a scaling and twist function.
thingiverse
free
Linear Extrude with Twist as an interpolated function by paucoma
...he example uses a sine function as a twisting function. scaling by a scalar is incorporated and can also be passed to the module.
thingiverse
free
Linear Extrude with Scale as an interpolated function by paucoma
...he example uses a sine function as a scaling function. twisting by a scalar is incorporated and can also be passed to the module.
thingiverse
free
NACA Airfoils - 4 digit fully parametric OpenSCAD library by Parkinbot
...w how to do objects that sweep smoothly between different airfoil types being freely shifted and rotated in 3d space. stay tuned.
grabcad
free
Steel Part
...steel part
grabcad
showing skills in extrusion, sweep, revolve, and ability to interpret 2d drawings.
Nspline
thingiverse
free
Klein bottle sqashed - OpenSCAD by Parkinbot
...unique design i used the magic of my openscad nspline library and my openscad naca_sweep library (follow the links...
thingiverse
free
HEVO-MGN v3 (Hypercube evolution with MGN linear rails) by jdobry
...hypercube evolution by scott_3d boat propeller customizable - openscad nspline) library with show cases by parkinbot bltouch model by...
Parkinbot
thingiverse
free
adjustable bracket - customizable by Parkinbot
...
easy to customize
current parametrization of stl:
diameter = 40mm
height = 20mm
thickness = 2mm
angle = 45°
screw hole = 4 mm
thingiverse
free
nautilus windmill - customizable by Parkinbot
....
notes:
cgal rendering is not very fast.
cut the foot off after print to enhance aerodynamics
let me know your results.
thingiverse
free
Nautilus wind mill by Parkinbot
...uts.scad library (sorry for that, but it simplifies programming so much). description in: http://www.thingiverse.com/thing:644830
thingiverse
free
Mirror wall clip - customizable by Parkinbot
..., slot length ...
parametrization of the stl files:
screw hole = 4mm
thickness = 2.5mm
height = 25mm
width = 10 mm
glas = 5 mm
thingiverse
free
Klein bottle sqashed - OpenSCAD by Parkinbot
...vided is rendered with a height of 341mm and a skin of 2mm. so it might need some downsizing when printed on a smaller print bed.
thingiverse
free
Wells turbine customizable by Parkinbot
...design things might print easier on fdm printers. print an upper and a lower (mirrorred) half and glue them together after print.
thingiverse
free
K8200 - stiffening and herringbone extruder gears by Parkinbot
... is 40mm
printed the pair. it came out very well with .2mm layers on the stiffened machine. as lub i recommend silicon grease.
thingiverse
free
bolts, nuts, threaded rods - OpenSCAD library Threading.scad by Parkinbot
...o time - whenever i need threadings with new aspects i expand the code base a bit and adapt it to the newest release of openscad.
thingiverse
free
customizable smartphone mounting for anglepoise lamp by Parkinbot
...to put the correct measure using 10th of a mm.
its a good idea to use a rubber band to fix the phone to the bracket (see photo).
thingiverse
free
globoid worm gear drive - parametric OpenSCAD code with large ratio range by Parkinbot
...s a very complicated calculation for both the globoid worm and the globoid gear when construction is done in an explicit fashion.
Propeller
design_connected
$11
Propeller
...propeller
designconnected
serien propeller pendant lights computer generated 3d model. designed by yaacov kaufman.
turbosquid
$15
propeller
...d
royalty free 3d model propeller for download as ma and max on turbosquid: 3d models for games, architecture, videos. (1401805)
turbosquid
$7
propeller
...
royalty free 3d model propeller for download as fbx and obj on turbosquid: 3d models for games, architecture, videos. (1557413)
turbosquid
free
Propeller
...id
free 3d model propeller for download as skp, fbx, and obj on turbosquid: 3d models for games, architecture, videos. (1619462)
3d_export
$10
helicopter propeller
...helicopter propeller
3dexport
helicopter propeller
3d_export
free
propeller
...propeller
3dexport
turbosquid
$6
propeller
...y free 3d model propeller for download as ige, stl, and sldpr on turbosquid: 3d models for games, architecture, videos. (1313738)
3d_export
free
aircraft propeller
...aircraft propeller
3dexport
a low poly aircraft propeller
turbosquid
$15
Propeller
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
turbosquid
$10
Propeller
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
Customizable
3d_export
$10
customizable sd port
...customizable sd port
3dexport
customizable sd port
turbosquid
$99
Customizable character
...alty free 3d model customizable character for download as max on turbosquid: 3d models for games, architecture, videos. (1152525)
turbosquid
$1
Customizable Mug
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
turbosquid
$1
Customizable Spider Mech
... free 3d model customizable spider mech for download as blend on turbosquid: 3d models for games, architecture, videos. (1462055)
turbosquid
$20
Customizable Egyptian Pillar
...zable egyptian pillar for download as ma, obj, fbx, and blend on turbosquid: 3d models for games, architecture, videos. (1307376)
turbosquid
$75
Fully Customizable Hospital
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
turbosquid
$20
Customizable Caste Pieces
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
turbosquid
$15
Customizable Tea Cup
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
turbosquid
free
Water Bottle(Customizeable)
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
3d_export
$49
Book customizable 3D Model
...3dexport
book booshelf novel teach library learn read pages cover fairy tales
book customizable 3d model guitargoa 74240 3dexport
Openscad
thingiverse
free
OpenSCAD sphere
...openscad sphere
thingiverse
basic project for openscad.
thingiverse
free
Openscad Football by KySyth
...openscad football by kysyth
thingiverse
openscad not tested
thingiverse
free
Openscad Apple by KySyth
...openscad apple by kysyth
thingiverse
openscad apple = not tested
thingiverse
free
Plugs with openscad by benengel
...plugs with openscad by benengel
thingiverse
plugs with openscad and fontawesome
thingiverse
free
Openscad spirals by mafmuf
...openscad spirals by mafmuf
thingiverse
just fooling around with openscad.
thingiverse
free
Practice on OpenScad by ajensen906
...practice on openscad by ajensen906
thingiverse
a very crude practice on openscad
thingiverse
free
Batteries in OpenSCAD by roman_hegglin
...batteries in openscad by roman_hegglin
thingiverse
common batteries as modules for openscad.
thingiverse
free
OpenScad Propeller by KySyth
...se
trying to make a propeller with openscad = not tested
this is some of the results
added the openscad file but still need work
thingiverse
free
Openscad Cloud by Twanne
...openscad cloud by twanne
thingiverse
openscad cloud.
size can be adjusted
thingiverse
free
Geomag for OpenScad by vicnet
...geomag for openscad by vicnet
thingiverse
openscad file to design geomag things.
Boat
3d_ocean
$5
Boat
...boat
3docean
boat game ready boaat low poly boat medi evil boat wooden boat
boat,medi evil boat, 4096* 4096* texture game ready
3d_export
$5
Boat and boat trailer
...boat and boat trailer
3dexport
boat and boat trailer square grid textures in one archive with 3d
archibase_planet
free
Boat
...boat
archibase planet
inflatable boat motor boat
inflatable boat - 3d model (*.gsm+*.3ds) for interior 3d visualization.
archibase_planet
free
Boat
...boat
archibase planet
boat fishing-boat trawler
boat fishing n110113 - 3d model (*.gsm+*.3ds) for interior 3d visualization.
archibase_planet
free
Boat
...boat
archibase planet
boat fishing-boat trawler
boat n310514 - 3d model (*.gsm+*.3ds+*.max) for exterior 3d visualization.
3d_export
$5
Boat
...boat
3dexport
boat with oars
3ddd
$1
boat
...boat
3ddd
лодка
boat
3d_export
$5
boat
...boat
3dexport
this is the full model of boat in solid works with stl file #boat #craft
archibase_planet
free
Boat
...boat
archibase planet
boat fishing-boat trawler
boat fishing 2 n110113 - 3d model (*.gsm+*.3ds) for exterior 3d visualization.
turbosquid
$12
Wooden Boat boat cartoon boat raft
...model wooden boat boat cartoon boat raft for download as max on turbosquid: 3d models for games, architecture, videos. (1617081)
Library
3d_ocean
$5
Library
...library
3docean
book book case library
library
3d_export
$6
library
...library
3dexport
a ready-made model of a library for use in peru
3d_ocean
$5
Library
...library
3docean
book books furniture home home design interior library
home design…
turbosquid
$15
library
...turbosquid
royalty free 3d model library for download as max on turbosquid: 3d models for games, architecture, videos. (1351741)
turbosquid
$9
Library
...turbosquid
royalty free 3d model library for download as max on turbosquid: 3d models for games, architecture, videos. (1433110)
turbosquid
$7
Library
...turbosquid
royalty free 3d model library for download as max on turbosquid: 3d models for games, architecture, videos. (1363568)
turbosquid
$5
Library
...turbosquid
royalty free 3d model library for download as max on turbosquid: 3d models for games, architecture, videos. (1309343)
3ddd
$1
classic library
...classic library
3ddd
library
classic library
3dsmax 2008 vray
3d_export
$10
Library
...library
3dexport
3d_export
free
library
...library
3dexport
Show
design_connected
$4
Show - Tamburo
...show - tamburo
designconnected
ai lati show - tamburo table lights computer generated 3d model. designed by n/a.
turbosquid
$5
SHOW GLASS
...bosquid
royalty free 3d model show glass for download as max on turbosquid: 3d models for games, architecture, videos. (1201827)
turbosquid
$500
show time
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
turbosquid
$39
Show-window
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
turbosquid
$10
show machine
... available on turbo squid, the world's leading provider of digital 3d models for visualization, films, television, and games.
3d_export
$65
water show
...water show
3dexport
simple rendering of the scene file
3d_export
$65
air show
...air show
3dexport
simple rendering of the scene file
3d_export
$65
War show
...war show
3dexport
simple rendering of the scene file
3d_export
$30
equestrian show
...equestrian show
3dexport
simple rendering of the scene file
3ddd
free
commercial show wall
...commercial show wall
3ddd
стеллаж
commercial show wall for clothes stores
designed by rami abo saleek
Cases
3d_export
$1
case
...case
3dexport
case
archibase_planet
free
Case
...case
archibase planet
showcase show-case glass case
glass-case + cakes - 3d model for interior 3d visualization.
archibase_planet
free
Case
...case
archibase planet
showcase show-case glass case
glass-case for chips - 3d model for interior 3d visualization.
archibase_planet
free
Case
...case
archibase planet
case shelving drawer
case - 3d model for interior 3d visualization.
archibase_planet
free
Case
...case
archibase planet
case rack locker
case - 3d model for interior 3d visualization.
archibase_planet
free
Case
...case
archibase planet
case drawer kitchen furniture
case - 3d model for interior 3d visualization.
archibase_planet
free
Case
...case
archibase planet
case cupboard shelving
glass case - 3d model for interior 3d visualization.
archibase_planet
free
Case
...case
archibase planet
case handbag suitcase
case - 3d model (*.gsm+*.3ds) for interior 3d visualization.
archibase_planet
free
Case
...case
archibase planet
case suitcase
case 5 - 3d model (*.gsm+*.3ds) for interior 3d visualization.
archibase_planet
free
Case
...case
archibase planet
locker case dresser
case - 3d model (*.gsm+*.3ds) for interior 3d visualization.