examples/custom/gears/gear_utils.js
function involuteXbez(t)
  {
    // map t (0 <= t <= 1) onto x (where -1 <= x <= 1)
    var x = t*2-1;
    //map theta (where ts <= theta <= te) from x (-1 <=x <= 1)
    var theta = x*(te-ts)/2 + (ts + te)/2;
    return Rb*(Math.cos(theta)+theta*Math.sin(theta));
  }
function involuteXbez(t)
  {
    // map t (0 <= t <= 1) onto x (where -1 <= x <= 1)
    var x = t*2-1;
    //map theta (where ts <= theta <= te) from x (-1 <=x <= 1)
    var theta = x*(te-ts)/2 + (ts + te)/2;
    return Rb*(Math.cos(theta)+theta*Math.sin(theta));
  }
function involuteXbez ( t ) { // map t (0 <= t <= 1) onto x (where -1 <= x <= 1) var x = t * 2 - 1 ; //map theta (where ts <= theta <= te) from x (-1 <=x <= 1) var theta = x * ( te - ts ) / 2 + ( ts + te ) / 2 ; return Rb * ( Math . cos ( theta ) + theta * Math . sin ( theta ) ) ; }
Equation of involute using the Bezier parameter t as variable
Equation of involute using the Bezier parameter t as variable