FlowCad is the fast, free, and precise web app for 3D design and printing. Build professional parametric models with ease-no programming required, but it's there if you need it.
/**
* The original comes from here:
* https://manifoldcad.org/#Auger
* */
const PARAMS = {
dim: 'disabled',
outerRadius: 10,
beadRadius: 2,
height: 20,
twist: 90,
}
let { beadRadius, dim, height, outerRadius, twist } = PARAMS
// setMinCircularEdgeLength(0.1);
const bead1 = revolve(circle(beadRadius).translate([outerRadius, 0]), 50, 90)
.add(sphere(beadRadius).translate([outerRadius, 0, 0]))
.translate([0, -outerRadius, 0])
const beads = []
for (let i = 0; i < 3; i++) {
beads.push(bead1.rotate(0, 0, 120 * i))
}
const bead = union(beads)
const auger = extrude(bead.slice(0), height, 50, twist)
const result = auger.add(bead).add(bead.translate(0, 0, height).rotate(0, 0, twist))
return { result, PARAMS }