add taper optional param to threads

This commit is contained in:
Stewart Allen 2024-08-25 11:42:02 -04:00
commit 3897ac658d
3 changed files with 13 additions and 11 deletions

View file

@ -876,11 +876,12 @@ let add = {
threads() {
worker.model_gen_threads({
height: 50,
radius: 25,
turns: 5,
depth: 3,
steps: 50
height: 25,
radius: 10,
turns: 10,
depth: 1,
steps: 75,
taper: true
}).then(verts => {
const nmdl = new mesh.model({ file: "gear", mesh: verts.toFloat32() });
const ngrp = group.new([ nmdl ]);

View file

@ -823,7 +823,7 @@ mesh.tool = class MeshTool {
return { gear, pitch };
}
generateThreads(height, radius, turns, depth, steps) {
generateThreads(height, radius, turns, depth, steps, taper) {
let verts = [];
let zstep = height / turns;
let rstep = (Math.PI * 2) / steps;
@ -839,12 +839,12 @@ mesh.tool = class MeshTool {
let itern = iter + steps;
let rm = radius - depth;
let rx = true &&
iter < mute_min ? rm + (iter / mute_min) * depth :
iter > mute_max ? rm + ((iter_max - iter) / mute_min) * depth :
// iter < mute_min ? rm + (iter / mute_min) * depth :
taper && iter > mute_max ? rm + ((iter_max - iter) / mute_min) * depth :
radius;
let rxt = true &&
itern < mute_min ? rm + (itern / mute_min) * depth :
itern > mute_max ? rm + ((iter_max - itern) / mute_min) * depth :
// itern < mute_min ? rm + (itern / mute_min) * depth :
taper && itern > mute_max ? rm + ((iter_max - itern) / mute_min) * depth :
radius;
let angle0 = rstep * step - Math.PI/2;
let z0 = (zstep * turn) + (z2step * step);

View file

@ -459,7 +459,7 @@ let model = {
},
gen_threads(data, send) {
let { height, radius, turns, depth, steps } = data;
let { height, radius, turns, depth, steps, taper } = data;
let zstep = height / turns;
height += zstep * 2;
turns += 2;
@ -469,6 +469,7 @@ let model = {
turns,
depth,
steps,
taper
);
// return send.done(verts);
let s0 = model.split({