mirror of
https://github.com/QIDITECH/klipper.git
synced 2026-01-30 23:48:43 +03:00
klipper update
This commit is contained in:
77
docs/prints/calibrate_size.scad
Normal file
77
docs/prints/calibrate_size.scad
Normal file
@@ -0,0 +1,77 @@
|
||||
// Calibration object for delta sizing
|
||||
//
|
||||
// Generate STL using OpenSCAD:
|
||||
// openscad calibrate_size.scad -o calibrate_size.stl
|
||||
|
||||
base_radius = 70;
|
||||
base_height = 1.5;
|
||||
base_width = 8;
|
||||
cylinder_height = 5;
|
||||
cylinder_radius = 5;
|
||||
cylinder_outer_dist = 65;
|
||||
ridge_cut_radius = .5;
|
||||
text_height = 1;
|
||||
text_size = 5;
|
||||
spoke_angles = [0, 60, 120, 180, 240, 300];
|
||||
CUT=0.01;
|
||||
|
||||
// Circular ring around entire object (to help reduce warping)
|
||||
module base_ring() {
|
||||
difference() {
|
||||
cylinder(h=base_height, r=base_radius);
|
||||
translate([0, 0, -CUT])
|
||||
cylinder(h=base_height + 2*CUT, r=base_radius-base_width);
|
||||
}
|
||||
}
|
||||
|
||||
// The base ring plus the base spokes
|
||||
module base() {
|
||||
base_ring();
|
||||
// Spokes
|
||||
for (angle=spoke_angles)
|
||||
rotate([0, 0, angle])
|
||||
translate([-base_width/2, -CUT, 0])
|
||||
cube([base_width, base_radius-base_width+2*CUT, base_height]);
|
||||
}
|
||||
|
||||
// Cylinder that measurement ridges are cut out of
|
||||
module measuring_cylinder() {
|
||||
cut_width = cylinder_radius;
|
||||
difference() {
|
||||
cylinder(h=cylinder_height+CUT, r=cylinder_radius, $fn=60);
|
||||
for (angle=spoke_angles)
|
||||
rotate([0, 0, angle])
|
||||
translate([-cut_width, cylinder_radius - ridge_cut_radius, -CUT])
|
||||
cube([2*cut_width, cut_width, cylinder_height+3*CUT]);
|
||||
}
|
||||
}
|
||||
|
||||
// All the measuring cylinders around the ring
|
||||
module measuring_cylinders() {
|
||||
measuring_cylinder();
|
||||
for (angle=spoke_angles)
|
||||
rotate([0, 0, angle])
|
||||
translate([0, cylinder_outer_dist, 0])
|
||||
measuring_cylinder();
|
||||
}
|
||||
|
||||
// Text writing
|
||||
module write_text(angle, dist, msg) {
|
||||
text_offset = dist + 1 - text_size/2;
|
||||
rotate([0, 0, angle])
|
||||
translate([0, text_offset, base_height - CUT])
|
||||
linear_extrude(height=text_height + CUT)
|
||||
text(msg, size=text_size, halign="center");
|
||||
}
|
||||
|
||||
// Final object with text descriptions
|
||||
module calibration_object() {
|
||||
base();
|
||||
translate([0, 0, base_height-CUT])
|
||||
measuring_cylinders();
|
||||
write_text(120, cylinder_outer_dist - 20, "A");
|
||||
write_text(240, cylinder_outer_dist - 20, "B");
|
||||
write_text(0, cylinder_outer_dist - 20, "C");
|
||||
}
|
||||
|
||||
calibration_object();
|
||||
11622
docs/prints/calibrate_size.stl
Normal file
11622
docs/prints/calibrate_size.stl
Normal file
File diff suppressed because it is too large
Load Diff
24530
docs/prints/ringing_tower.stl
Normal file
24530
docs/prints/ringing_tower.stl
Normal file
File diff suppressed because it is too large
Load Diff
45
docs/prints/square.scad
Normal file
45
docs/prints/square.scad
Normal file
@@ -0,0 +1,45 @@
|
||||
// Test square
|
||||
//
|
||||
// Generate STL using OpenSCAD:
|
||||
// openscad square.scad -o square.stl
|
||||
|
||||
square_width = 5;
|
||||
square_size = 60;
|
||||
square_height = 5;
|
||||
|
||||
module hollow_square() {
|
||||
difference() {
|
||||
cube([square_size, square_size, square_height]);
|
||||
translate([square_width, square_width, -1])
|
||||
cube([square_size-2*square_width, square_size-2*square_width,
|
||||
square_height+2]);
|
||||
}
|
||||
}
|
||||
|
||||
module notch() {
|
||||
CUT = 0.01;
|
||||
depth = .5;
|
||||
width = 1;
|
||||
translate([-depth, -width, -CUT])
|
||||
cube([2*depth, 2*width, square_height + 2*CUT]);
|
||||
}
|
||||
|
||||
module square_with_notches() {
|
||||
difference() {
|
||||
// Start with initial square
|
||||
hollow_square();
|
||||
// Remove four notches on inside perimeter
|
||||
translate([square_width, square_size/2 - 4, 0])
|
||||
notch();
|
||||
translate([square_size/2, square_size - square_width, 0])
|
||||
rotate([0, 0, 90])
|
||||
notch();
|
||||
translate([square_size - square_width, square_size/2, 0])
|
||||
notch();
|
||||
translate([square_size/2, square_width, 0])
|
||||
rotate([0, 0, 90])
|
||||
notch();
|
||||
}
|
||||
}
|
||||
|
||||
square_with_notches();
|
||||
674
docs/prints/square.stl
Normal file
674
docs/prints/square.stl
Normal file
@@ -0,0 +1,674 @@
|
||||
solid OpenSCAD_Model
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex 0 0 0
|
||||
vertex 0 60 5
|
||||
vertex 0 60 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex 0 60 5
|
||||
vertex 0 0 0
|
||||
vertex 0 0 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 5 25 5
|
||||
vertex 4.5 25 5
|
||||
vertex 5 5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 29 5 5
|
||||
vertex 5 5 5
|
||||
vertex 29 4.5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 60 60 5
|
||||
vertex 55.5 31 5
|
||||
vertex 60 0 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 60 60 5
|
||||
vertex 55 55 5
|
||||
vertex 55.5 31 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 60 60 5
|
||||
vertex 31 55.5 5
|
||||
vertex 55 55 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 60 60 5
|
||||
vertex 29 55.5 5
|
||||
vertex 31 55.5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 29 55.5 5
|
||||
vertex 5 55 5
|
||||
vertex 29 55 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 0 1
|
||||
outer loop
|
||||
vertex 0 60 5
|
||||
vertex 29 55.5 5
|
||||
vertex 60 60 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 5 55 5
|
||||
vertex 4.5 27 5
|
||||
vertex 5 27 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 0 0 5
|
||||
vertex 4.5 27 5
|
||||
vertex 0 60 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 5 55 5
|
||||
vertex 0 60 5
|
||||
vertex 4.5 27 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 29 55.5 5
|
||||
vertex 0 60 5
|
||||
vertex 5 55 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 0 1
|
||||
outer loop
|
||||
vertex 55.5 29 5
|
||||
vertex 60 0 5
|
||||
vertex 55.5 31 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 55 5 5
|
||||
vertex 55.5 29 5
|
||||
vertex 55 29 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 55.5 29 5
|
||||
vertex 55 5 5
|
||||
vertex 60 0 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 31 4.5 5
|
||||
vertex 55 5 5
|
||||
vertex 31 5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 55 5 5
|
||||
vertex 31 4.5 5
|
||||
vertex 60 0 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 0 1
|
||||
outer loop
|
||||
vertex 29 4.5 5
|
||||
vertex 60 0 5
|
||||
vertex 31 4.5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 0 0 5
|
||||
vertex 29 4.5 5
|
||||
vertex 5 5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 4.5 27 5
|
||||
vertex 0 0 5
|
||||
vertex 4.5 25 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 29 4.5 5
|
||||
vertex 0 0 5
|
||||
vertex 60 0 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 4.5 25 5
|
||||
vertex 0 0 5
|
||||
vertex 5 5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 55.5 31 5
|
||||
vertex 55 55 5
|
||||
vertex 55 31 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 1
|
||||
outer loop
|
||||
vertex 55 55 5
|
||||
vertex 31 55.5 5
|
||||
vertex 31 55 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 -0 0
|
||||
outer loop
|
||||
vertex 60 0 5
|
||||
vertex 60 60 0
|
||||
vertex 60 60 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 0 0
|
||||
outer loop
|
||||
vertex 60 60 0
|
||||
vertex 60 0 5
|
||||
vertex 60 0 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 -0
|
||||
outer loop
|
||||
vertex 60 60 0
|
||||
vertex 0 60 5
|
||||
vertex 60 60 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 0
|
||||
outer loop
|
||||
vertex 0 60 5
|
||||
vertex 60 60 0
|
||||
vertex 0 60 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 5 27 0
|
||||
vertex 4.5 27 0
|
||||
vertex 5 55 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 29 55 0
|
||||
vertex 5 55 0
|
||||
vertex 29 55.5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 60 0 0
|
||||
vertex 55.5 29 0
|
||||
vertex 60 60 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 60 0 0
|
||||
vertex 55 5 0
|
||||
vertex 55.5 29 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 60 0 0
|
||||
vertex 31 4.5 0
|
||||
vertex 55 5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 60 0 0
|
||||
vertex 29 4.5 0
|
||||
vertex 31 4.5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 29 4.5 0
|
||||
vertex 5 5 0
|
||||
vertex 29 5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 0 0 0
|
||||
vertex 29 4.5 0
|
||||
vertex 60 0 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 5 5 0
|
||||
vertex 4.5 25 0
|
||||
vertex 5 25 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 0 -1
|
||||
outer loop
|
||||
vertex 4.5 25 0
|
||||
vertex 0 0 0
|
||||
vertex 4.5 27 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 0 -1
|
||||
outer loop
|
||||
vertex 5 5 0
|
||||
vertex 0 0 0
|
||||
vertex 4.5 25 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 0 -1
|
||||
outer loop
|
||||
vertex 29 4.5 0
|
||||
vertex 0 0 0
|
||||
vertex 5 5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 55.5 31 0
|
||||
vertex 60 60 0
|
||||
vertex 55.5 29 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 55 55 0
|
||||
vertex 55.5 31 0
|
||||
vertex 55 31 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 55.5 31 0
|
||||
vertex 55 55 0
|
||||
vertex 60 60 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 31 55.5 0
|
||||
vertex 55 55 0
|
||||
vertex 31 55 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 55 55 0
|
||||
vertex 31 55.5 0
|
||||
vertex 60 60 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 29 55.5 0
|
||||
vertex 60 60 0
|
||||
vertex 31 55.5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 0 60 0
|
||||
vertex 29 55.5 0
|
||||
vertex 5 55 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 0 60 0
|
||||
vertex 4.5 27 0
|
||||
vertex 0 0 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 29 55.5 0
|
||||
vertex 0 60 0
|
||||
vertex 60 60 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex 4.5 27 0
|
||||
vertex 0 60 0
|
||||
vertex 5 55 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 0 -1
|
||||
outer loop
|
||||
vertex 55.5 29 0
|
||||
vertex 55 5 0
|
||||
vertex 55 29 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 0 -1
|
||||
outer loop
|
||||
vertex 55 5 0
|
||||
vertex 31 4.5 0
|
||||
vertex 31 5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 0
|
||||
outer loop
|
||||
vertex 0 0 0
|
||||
vertex 60 0 5
|
||||
vertex 0 0 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 -0
|
||||
outer loop
|
||||
vertex 60 0 5
|
||||
vertex 0 0 0
|
||||
vertex 60 0 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 -0 0
|
||||
outer loop
|
||||
vertex 5 5 5
|
||||
vertex 5 25 0
|
||||
vertex 5 25 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 0 0
|
||||
outer loop
|
||||
vertex 5 25 0
|
||||
vertex 5 5 5
|
||||
vertex 5 5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 -0 0
|
||||
outer loop
|
||||
vertex 5 27 5
|
||||
vertex 5 55 0
|
||||
vertex 5 55 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 0 0
|
||||
outer loop
|
||||
vertex 5 55 0
|
||||
vertex 5 27 5
|
||||
vertex 5 27 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex 55 5 0
|
||||
vertex 55 29 5
|
||||
vertex 55 29 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex 55 29 5
|
||||
vertex 55 5 0
|
||||
vertex 55 5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex 55 31 0
|
||||
vertex 55 55 5
|
||||
vertex 55 55 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex 55 55 5
|
||||
vertex 55 31 0
|
||||
vertex 55 31 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 -0
|
||||
outer loop
|
||||
vertex 29 5 0
|
||||
vertex 5 5 5
|
||||
vertex 29 5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 0
|
||||
outer loop
|
||||
vertex 5 5 5
|
||||
vertex 29 5 0
|
||||
vertex 5 5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 -0
|
||||
outer loop
|
||||
vertex 55 5 0
|
||||
vertex 31 5 5
|
||||
vertex 55 5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 0
|
||||
outer loop
|
||||
vertex 31 5 5
|
||||
vertex 55 5 0
|
||||
vertex 31 5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 0
|
||||
outer loop
|
||||
vertex 5 55 0
|
||||
vertex 29 55 5
|
||||
vertex 5 55 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 -0
|
||||
outer loop
|
||||
vertex 29 55 5
|
||||
vertex 5 55 0
|
||||
vertex 29 55 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 0
|
||||
outer loop
|
||||
vertex 31 55 0
|
||||
vertex 55 55 5
|
||||
vertex 31 55 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 -0
|
||||
outer loop
|
||||
vertex 55 55 5
|
||||
vertex 31 55 0
|
||||
vertex 55 55 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 -0 0
|
||||
outer loop
|
||||
vertex 4.5 25 5
|
||||
vertex 4.5 27 0
|
||||
vertex 4.5 27 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 0 0
|
||||
outer loop
|
||||
vertex 4.5 27 0
|
||||
vertex 4.5 25 5
|
||||
vertex 4.5 25 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 0
|
||||
outer loop
|
||||
vertex 4.5 27 0
|
||||
vertex 5 27 5
|
||||
vertex 4.5 27 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 -0
|
||||
outer loop
|
||||
vertex 5 27 5
|
||||
vertex 4.5 27 0
|
||||
vertex 5 27 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 -0
|
||||
outer loop
|
||||
vertex 5 25 0
|
||||
vertex 4.5 25 5
|
||||
vertex 5 25 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 0
|
||||
outer loop
|
||||
vertex 4.5 25 5
|
||||
vertex 5 25 0
|
||||
vertex 4.5 25 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 0
|
||||
outer loop
|
||||
vertex 29 55.5 0
|
||||
vertex 31 55.5 5
|
||||
vertex 29 55.5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 -0
|
||||
outer loop
|
||||
vertex 31 55.5 5
|
||||
vertex 29 55.5 0
|
||||
vertex 31 55.5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 -0 0
|
||||
outer loop
|
||||
vertex 29 55 5
|
||||
vertex 29 55.5 0
|
||||
vertex 29 55.5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 0 0
|
||||
outer loop
|
||||
vertex 29 55.5 0
|
||||
vertex 29 55 5
|
||||
vertex 29 55 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex 31 55 0
|
||||
vertex 31 55.5 5
|
||||
vertex 31 55.5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex 31 55.5 5
|
||||
vertex 31 55 0
|
||||
vertex 31 55 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex 55.5 29 0
|
||||
vertex 55.5 31 5
|
||||
vertex 55.5 31 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex 55.5 31 5
|
||||
vertex 55.5 29 0
|
||||
vertex 55.5 29 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 0
|
||||
outer loop
|
||||
vertex 55 31 0
|
||||
vertex 55.5 31 5
|
||||
vertex 55 31 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 -0
|
||||
outer loop
|
||||
vertex 55.5 31 5
|
||||
vertex 55 31 0
|
||||
vertex 55.5 31 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 -0
|
||||
outer loop
|
||||
vertex 55.5 29 0
|
||||
vertex 55 29 5
|
||||
vertex 55.5 29 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 0
|
||||
outer loop
|
||||
vertex 55 29 5
|
||||
vertex 55.5 29 0
|
||||
vertex 55 29 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 -0
|
||||
outer loop
|
||||
vertex 31 4.5 0
|
||||
vertex 29 4.5 5
|
||||
vertex 31 4.5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 1 0
|
||||
outer loop
|
||||
vertex 29 4.5 5
|
||||
vertex 31 4.5 0
|
||||
vertex 29 4.5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex 31 4.5 0
|
||||
vertex 31 5 5
|
||||
vertex 31 5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex 31 5 5
|
||||
vertex 31 4.5 0
|
||||
vertex 31 4.5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 -0 0
|
||||
outer loop
|
||||
vertex 29 4.5 5
|
||||
vertex 29 5 0
|
||||
vertex 29 5 5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 0 0
|
||||
outer loop
|
||||
vertex 29 5 0
|
||||
vertex 29 4.5 5
|
||||
vertex 29 4.5 0
|
||||
endloop
|
||||
endfacet
|
||||
endsolid OpenSCAD_Model
|
||||
61
docs/prints/square_tower.scad
Normal file
61
docs/prints/square_tower.scad
Normal file
@@ -0,0 +1,61 @@
|
||||
// Calibration test tower
|
||||
//
|
||||
// Generate STL using OpenSCAD:
|
||||
// openscad square_tower.scad -o square_tower.stl
|
||||
|
||||
square_width = 5;
|
||||
square_size = 60;
|
||||
square_height = 50;
|
||||
antiwarp_height = .8;
|
||||
antiwarp_radius = 5;
|
||||
CUT = 0.01;
|
||||
|
||||
module notch(x, y, rot) {
|
||||
depth = .5;
|
||||
width = 1;
|
||||
translate([x, y, 0])
|
||||
rotate([0, 0, rot])
|
||||
translate([-depth, -width, -CUT])
|
||||
cube([2*depth, 2*width, square_height + 2*CUT]);
|
||||
}
|
||||
|
||||
module square_with_notches() {
|
||||
difference() {
|
||||
// Start with initial square
|
||||
cube([square_size, square_size, square_height]);
|
||||
// Remove four notches on inside perimeter
|
||||
notch(square_width, square_size/2 - 4, 0);
|
||||
notch(square_size - square_width, square_size/2, 0);
|
||||
notch(square_size/2, square_width, 90);
|
||||
notch(square_size/2, square_size - square_width, 90);
|
||||
}
|
||||
}
|
||||
|
||||
module anti_warp_feet() {
|
||||
module anti_warp_cylinder() {
|
||||
cylinder(r=antiwarp_radius, h=antiwarp_height, $fs=.5);
|
||||
}
|
||||
dist = antiwarp_radius / 2.5;
|
||||
translate([dist, dist, 0])
|
||||
anti_warp_cylinder();
|
||||
translate([square_size-dist, dist, 0])
|
||||
anti_warp_cylinder();
|
||||
translate([dist, square_size-dist, 0])
|
||||
anti_warp_cylinder();
|
||||
translate([square_size-dist, square_size-dist, 0])
|
||||
anti_warp_cylinder();
|
||||
}
|
||||
|
||||
module hollow_square() {
|
||||
difference() {
|
||||
union() {
|
||||
square_with_notches();
|
||||
anti_warp_feet();
|
||||
}
|
||||
translate([square_width, square_width, -CUT])
|
||||
cube([square_size-2*square_width, square_size-2*square_width,
|
||||
square_height + 2*CUT]);
|
||||
}
|
||||
}
|
||||
|
||||
hollow_square();
|
||||
3026
docs/prints/square_tower.stl
Normal file
3026
docs/prints/square_tower.stl
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user