Professional Documents
Culture Documents
For 3D Printing
With OpenSCAD
Ed Nisley KE4N!
ed"nisley#po$o%"co&
so'tsolder"co&
(
S)*id+rench
Septe&$er ,-.3
2/140
!pco&ing E/ents
Propane AD +rench
Photodiode 'i%t*re
8el&et &irror
Microscope ca&era
9attery 'i%t*re
=epair Parts
Caliper th*&$+heel
9roo& handle
Ner' Pistol
Concrete 9loc;s
Knot
Fat 9*n$*n
Chal; people
Co&panion C*$e
Stan'ord 9*nny
Octop*s
3D Portrait
11/140
Solid Modeling
""" is a consistent set o' principles
'or &athe&atical and co&p*ter &odeling o'
threeDdi&ensional solids"
Solid &odeling is disting*ished
'ro& related areas o' geo&etric &odeling and
co&p*ter graphics $y
its e&phasis on physical 'idelity"
0h*s sayeth 2oogle
define: solid modeling
12/140
0hree Di&ensional Solid Models
13/140
E&phasis on Physical Fidelity
14/140
3D Printing
Additi/e &an*'act*ring or 3D printing is a
process o' &a;ing a threeDdi&ensional solid
o$6ect o' /irt*ally any shape 'ro& a digital &odel"
3D printing is achie/ed *sing an
additi/e processE +here s*ccessi/e layers o'
&aterial are laid do+n in di''erent shapes"
0h*s sayeth Wi;ipedia
httpF::en"+i;ipedia"org:+i;i:3DGprinting
15/140
3F*sed Deposition4 3D Printing
0ranslate?K%EyEBL@
=otate?K%EyEBL@
Mirror?K%EyEBL@
Scale?K%EyEBL@
=esiBe?K%EyEBL@
39/140
Dish+asher =ac; Protector
httpF::so'tsolder"co&:,-.3:-,:-4:dish+asherDrac;DprotectorsDintoDtheD&a+:
40/140
Dish+asher =ac; Protector
httpF::so'tsolder"co&:,-.3:-,:-4:dish+asherDrac;DprotectorsDintoDtheD&a+:
41/140
0ranslate?K%EyEBL@
42/140
=otate?K%EyEBL@
43/140
Di''erenceF FI Cie+
44/140
Di''erenceF F., Cie+
45/140
Di''erenceF FI Cie+
46/140
Di''erenceF F., Cie+
47/140
?=e@Co&pileF FU
No act*al 3D &odel
Colors as e%pected
Not e%porta$leS
48/140
Co&pile 7 =enderF FR
F*ll 3D rendering
Single color
E%porta$leS
49/140
S0N File 2eneration
8*ge 'iles
0riangle tessellation
No c*r/esS
No 3&odel4 content
No s&arts
S*r'ace nor&als
'or ?i O KstartFincre&entFendL@
Case &atters
2et o/er it
Closed s*r'ace
3Watertight4 o$6ects
Consistent Nor&als
,DMani'old
No coincident 'aces
httpF::reprap"org:+i;i:SeparateGpageGonGtheG)*estion
httpsF::en"+i;ipedia"org:+i;i:FileFAc&eG;leinG$ottle"6pg
85/140
What>s Wrong With 0his Pict*reW
9eginning 2oogle S;etch!p 'or 3D Printing httpF::+++"apress"co&:IJT.43-,33R.I
httpF::reprap"org:+i;i:S;etch*pGModelingG'orG3dGPrinting
httpF::reprap"org:+i;i:ArtGo'Gill*sion
Not 3+atertight4
5nconsistent nor&als
Easy to seeW
9oo; /ersion is OK
CS2 O 3D /ol*&es
Mesh O ,D s*r'aces
86/140
Not ,DMani'oldF 4 Sides:Edge
87/140
Not ,DMani'oldF Coincident Faces
88/140
Not ,DMani'oldF Coincident Faces
89/140
What>s Wrong With 0his Pict*reW
httpF::so'tsolder"co&:,-..:-T:,3:ne&aD.JDstepperD&otorD&o*nt
:
90/140
Solid Model Q 2DCode
httpF::'a$ðe*s"crsndoo"co&:+i;i:inde%"php:S;ein'orgeGS;einlayer
httpF::so'tsolder"co&:,-..:-I:-U:openscadD/sDs;ein'orgeD4-D$og*sDgDcode:
91/140
What>s Wrong With 0his Pict*reW
httpF::so'tsolder"co&:,-..:-T:,3:ne&aD.JDstepperD&otorD&o*nt
:
92/140
What>s Wrong With 0his Pict*reW
httpF::so'tsolder"co&:,-..:-T:,3:ne&aD.JDstepperD&otorD&o*nt
:
8o+
Many
FacesW
93/140
What>s Right With 0his Pict*reW
httpF::so'tsolder"co&:,-..:-T:,3:ne&aD.JDstepperD&otorD&o*nt
:
94/140
What>s Right With 0his Pict*reW
httpF::so'tsolder"co&:,-..:-T:,3:ne&aD.JDstepperD&otorD&o*nt
:
One
Solid
9loc;S
95/140
What>s Wrong With 0his Pict*reW
96/140
What>s Wrong With 0his Pict*reW
3Shi&&er4
is the tipo''
97/140
What>s Wrong With 0his Pict*reW
Coincident
FacesS
98/140
F., Cie+
Coincident
FacesS
99/140
What>s =ight With 0his Pict*reW
Protr*sion O -".
100/140
What Does 5t 0a;e 0o 9e =ightW
cylinder?rO8andlePegOD:,E
hO3[Plate0hic;E
centerOtr*e@\
translate?K=ingDia:,E-EDProtr*sionL@
cylinder?rO8oleDia:,E
hO?0hic;ness Y ,[Protr*sion@@\
101/140
What>s =ight With 0his Pict*reW
102/140
Process Ni&itations
103/140
F*nda&ental SiBes
104/140
F*nda&ental SiBes
M*stache
hairS
105/140
E%tr*der Cali$ration
httpF::so'tsolder"co&:,-.3:-4:.R:&a;ergearD&,D'*nda&entalDtestDo$6ect:
106/140
E%tr*der Cali$ration
httpF::so'tsolder"co&:,-.3:-4:.R:&a;ergearD&,D'*nda&entalDtestDo$6ect:
107/140
S&allest Possi$le Feat*re
108/140
!na/oida$le 2apS
109/140
Wall Width 0est Piece
httpF::+++"thingi/erse"co&:thingFTTUI
110/140
8ole 7 Pillar 0ests
httpF::+++"thingi/erse"co&:thingF4,T--
111/140
8ole 7 Pillar Cali$ration
httpF::so'tsolder"co&:,-.3:-4:,.:&a;ergearD&,DpostDandDholeDcali$rationDtestDo$6ects:
112/140
8ole SiBe Co&pensation
9ased on Nophead>s Polygonal 8oles
httpF::hydraraptor"$logspot"co&:,-..:-,:polyholes"ht&l
!ole0indage + 0.&1
module (ol)C)l($ia%!eight%2orceSides+0) 3
Sides + (2orceSides 4+ 0) 5
2orceSides : (ceil($ia) 6 &)1
2i7$ia + $ia 8 cos(,908Sides)1
c)linder(r+(2i7$ia 6 !ole0indage)8&%
h+!eight%*fn+Sides)1
:
113/140
8ole SiBe 0est Piece
httpF::so'tsolder"co&:,-..:..:,U:thingDoD&aticDs&allDholeDcali$ration:
114/140
8ole SiBe 0est Piece
httpF::so'tsolder"co&:,-..:..:,U:thingDoD&aticDs&allDholeDcali$ration:
Circ*&scri$es
original dia&eter
115/140
9ridge 0est Piece
httpF::+++"thingi/erse"co&:thingFIT-4
116/140
9ridge 0est
httpF::+++"thingi/erse"co&:thingFIT-4
117/140
O/erhang
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
118/140
O/erhang /s" 9ridging
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
119/140
O/erhang and 9ridging
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
120/140
O/erhang and 9ridging
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
121/140
S*pport Str*ct*resS
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
122/140
9ridge ?W@ S*pport Str*ct*re
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
123/140
S*pport Str*ct*reF Oops
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
124/140
S*pport Str*ct*re
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
125/140
O/erhang S*pport Str*ct*re
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
126/140
S*pport Str*ct*resS
httpF::so'tsolder"co&:,-.,:-.:-3:planetD$i;eDs*per'lashDto*rDeasyD&o*nt:
127/140
9ridge ?W@ S*pport Str*ct*re
httpF::so'tsolder"co&:,-.3:-,:-4:dish+asherDrac;DprotectorsDintoDtheD&a+:
128/140
S*pport Str*ct*re
httpF::so'tsolder"co&:,-.3:-,:-4:dish+asherDrac;DprotectorsDintoDtheD&a+:
129/140
=e&o/ing S*pport Str*ct*res
httpF::so'tsolder"co&:,-.3:-,:-4:dish+asherDrac;DprotectorsDintoDtheD&a+:
130/140
Other Fancy St*''
131/140
Polygons and Polyhedrons
polygon?H@
linearGe%tr*de?"""@
polyhedron?H@
5nternal precision
Direct &eas*re&entW
httpF::so'tsolder"co&:,-.,:-4:-U:;gD*/3dDgps/oiceD$atteryDpac;Dalign&entDl*gs:
132/140
D]F 5&port 7 E%port
2ood l*c;"""
133/140
8*ll
h*ll?"""@
,D 'ig*res in ]M
polygon?@
Circle?@E s)*are?@
linearGe%tr*de?"""@
httpF::so'tsolder"co&:,-.,:..:-,:+hirlpoolDre'rigeratorDreplace&entD'reeBerDshel'D$rac;et:
134/140
O*tlines Fro& Dra+ings
Peri&eter Q Shape
Ni&ited resol*tion
Maintain chirality
5&age&agic; F0WS
∈o+s;i?@ s*&
httpF::so'tsolder"co&:,-..:-I:-J:t*%Dcoo;ieDc*tter:
135/140
S*r'ace 8eight Maps
s*r'ace?'ileO"""@
5&age&agic; F0WS
9ash scripting
]M resol*tion li&it
httpF::so'tsolder"co&:,-.,:..:-I:a*to&atedDcoo;ieDc*ttersDp*ttingDitDallDtogether:
Start si&ple
Keep it si&ple
Meas*re&entsS
Calc*late everything