Adding Stomp Rockets
This commit is contained in:
commit
211e1f8535
2 changed files with 81 additions and 0 deletions
53
Stomp Rockets/Fixed Fins v1.scad
Normal file
53
Stomp Rockets/Fixed Fins v1.scad
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
use <Stomp Rocket Body v1.scad>
|
||||||
|
$fa = 1;
|
||||||
|
$fs = 0.5;
|
||||||
|
|
||||||
|
inner_radius = 17.5/2;
|
||||||
|
body_length = 150;
|
||||||
|
wall_thickness = 1.8;
|
||||||
|
outer_diameter = inner_radius + wall_thickness;
|
||||||
|
|
||||||
|
module inner_taper(taper_height=5) {
|
||||||
|
difference() {
|
||||||
|
cylinder(r=inner_radius, h=taper_height);
|
||||||
|
cylinder(r1=inner_radius, r2=1, h=taper_height-0.1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module nose_cone(inner_radius=inner_radius, wall_thickness=wall_thickness) {
|
||||||
|
radius = inner_radius+wall_thickness;
|
||||||
|
difference() {
|
||||||
|
sphere(r=radius);
|
||||||
|
translate([0,0,-radius])
|
||||||
|
cylinder(h=radius, r=radius);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module fin(width=10, height=30, thickness=3) {
|
||||||
|
rotate([90,0,0])
|
||||||
|
linear_extrude(height=thickness, center=true)
|
||||||
|
polygon(points=[
|
||||||
|
[0,0],
|
||||||
|
[width,0],
|
||||||
|
[width,height/2],
|
||||||
|
[0,height],
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
union() {
|
||||||
|
translate([0,0,body_length])
|
||||||
|
rotate([0,180,0])
|
||||||
|
color("gray") rocket_body(inner_radius = inner_radius, wall_thickness=wall_thickness);
|
||||||
|
|
||||||
|
translate([0,0,body_length-5]) color("blue") inner_taper(taper_height=5);
|
||||||
|
|
||||||
|
translate([0,0,body_length]) color("blue") nose_cone();
|
||||||
|
|
||||||
|
for (i=[0,90,180,270]) {
|
||||||
|
rotate(i)
|
||||||
|
translate([outer_diameter-0.1, 0, 0])
|
||||||
|
fin();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
28
Stomp Rockets/Stomp Rocket Body v1.scad
Normal file
28
Stomp Rockets/Stomp Rocket Body v1.scad
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
// Stomp Rocket Body
|
||||||
|
|
||||||
|
$fa = 1;
|
||||||
|
$fs = 0.5;
|
||||||
|
|
||||||
|
|
||||||
|
module rocket_body(
|
||||||
|
inner_radius = 17.5/2,
|
||||||
|
body_length = 150,
|
||||||
|
collar_length = 3,
|
||||||
|
top_thickness = 1,
|
||||||
|
wall_thickness = 1.8
|
||||||
|
) {
|
||||||
|
outer_diameter = inner_radius + wall_thickness;
|
||||||
|
sleeve_diameter = inner_radius + 0.4;
|
||||||
|
|
||||||
|
union() {
|
||||||
|
cylinder(h=top_thickness, r=outer_diameter);
|
||||||
|
difference() {
|
||||||
|
cylinder(h=body_length, r=outer_diameter);
|
||||||
|
cylinder(h=body_length-collar_length, r=sleeve_diameter);
|
||||||
|
translate([0,0,body_length-collar_length-.1])
|
||||||
|
cylinder(h=collar_length+.2, r=inner_radius);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
rocket_body();
|
Loading…
Reference in a new issue