aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--candlestick_molds/taper.scad94
-rwxr-xr-xlib/measure_stl.py3
-rw-r--r--lib/view_stl.scad2
3 files changed, 58 insertions, 41 deletions
diff --git a/candlestick_molds/taper.scad b/candlestick_molds/taper.scad
index 3d4a73e..cabc2cc 100644
--- a/candlestick_molds/taper.scad
+++ b/candlestick_molds/taper.scad
@@ -1,39 +1,55 @@
-
-use <../lib/bezier.scad>;
-
-$fn = 100;
-base_radius = 7/8;
-top_radius = base_radius * 0.75;
-top_height = top_radius * 2;
-total_height = 10;
-stem_height = total_height - top_height;
-
-module stick() {
- cylinder(stem_height, base_radius, top_radius);
-
- control_points = [
- [top_radius, 0],
- [0.25, 0.5],
- [0.4, top_height],
- [0, top_height]
- ];
- // adjust curve_facets for low & odd $fn values
- curve_facets = $fn/2;
- head_curve = bezier_curve(control_points, $fn=curve_facets);
- top_curve = concat(head_curve, [[0, 0]]);
-
- translate([0, 0, stem_height])
- rotate_extrude()
- polygon(top_curve);
-};
-
-difference() {
- translate([-1.5, -1.5, 0.01])
- cube([6, 6, total_height]);
-
- translate([0, 0, 0]) stick();
- translate([3, 0, 0]) stick();
- translate([0, 3, 0]) stick();
- translate([3, 3, 0]) stick();
-};
-
+
+use <../lib/bezier.scad>;
+
+$fn = 100;
+base_radius = 7/8;
+top_radius = base_radius * 0.75;
+top_height = top_radius * 2;
+total_height = 10;
+stem_height = total_height - top_height;
+
+module stick() {
+ cylinder(stem_height, base_radius, top_radius);
+
+ control_points = [
+ [top_radius, 0],
+ [0.25, 0.5],
+ [0.4, top_height],
+ [0, top_height]
+ ];
+ // adjust curve_facets for low & odd $fn values
+ curve_facets = $fn/2;
+ head_curve = bezier_curve(control_points, $fn=curve_facets);
+ top_curve = concat(head_curve, [[0, 0]]);
+
+ translate([0, 0, stem_height])
+ rotate_extrude()
+ polygon(top_curve);
+
+ translate([0, 0, total_height-0.01])
+ cylinder(2, 0.05);
+};
+
+difference() {
+ difference() {
+ // Base Mold Block
+ translate([-1.5, -1.5, 0.01])
+ cube([6, 6, total_height]);
+
+ // Mold of each stick
+ translate([0, 0, 0]) stick();
+ translate([3, 0, 0]) stick();
+ translate([0, 3, 0]) stick();
+ translate([3, 3, 0]) stick();
+ };
+
+ // Cut Molds in half
+ // Print 2 of these to form full mold
+ translate([-1.51, -1.51, 0])
+ cube([6.02, 1.51, total_height + 0.02]);
+ translate([-1.51, 3, 0])
+ cube([6.02, 1.51, total_height + 0.02]);
+
+
+};
+
diff --git a/lib/measure_stl.py b/lib/measure_stl.py
index f76cd88..8abd81b 100755
--- a/lib/measure_stl.py
+++ b/lib/measure_stl.py
@@ -8,7 +8,8 @@
from stl import mesh
-file_path = './dummy13/src/frame-waist-v6.stl'
+file_path = './dummy13/src/armor-crotch-v12.stl'
+#file_path = './dummy13/src/armor-waist-v30.stl'
#file_path = './dummy13/src/frame-hips-v3.stl'
mesh = mesh.Mesh.from_file(file_path)
diff --git a/lib/view_stl.scad b/lib/view_stl.scad
index 9fa795d..f4aac61 100644
--- a/lib/view_stl.scad
+++ b/lib/view_stl.scad
@@ -1,2 +1,2 @@
-import ("../dummy13/frame_sample_sizes.stl");
+import ("../dummy13/armor_sample_sizes.stl");