/*! For license information please see p5.bezier.min.js.LICENSE.txt */ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.p5bezier=e():t.p5bezier=e()}(this,(()=>(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{initBezier:()=>L,newBezier:()=>P,newBezierObj:()=>S});var i=function(t,e,i){if(i||2===arguments.length)for(var n,o=0,r=e.length;o.008&&(this.increment=.008);var d=Math.abs(t[0]),c=Math.abs(t[1]),f=!0,u=this.vertexList[0],v=1,y=this.vertexList[v],x=u,b=0,m=f?d:c;for(o.save(),o.fillStyle="rgba(0, 0, 0, 0)",h(),p.apply(void 0,u);v=m;)i=y,n=m/b,x=2===(e=x).length&&2===i.length?[e[0]+(i[0]-e[0])*n,e[1]+(i[1]-e[1])*n]:3===e.length&&3===i.length?[e[0]+(i[0]-e[0])*n,e[1]+(i[1]-e[1])*n,e[2]+(i[2]-e[2])*n]:i,f?l.apply(void 0,x):p.apply(void 0,x),b-=m,m=(f=!f)?d:c;f?l.apply(void 0,y):p.apply(void 0,y),m-=this._distVertex(x,y),x=u=y,v++}g(),o.restore()}else h(),this.vertexList.map((function(t){return r._addVertex(t)})),"CLOSE"===this.closeType&&o.closePath(),s?a(this.closeType):"CLOSE"===this.closeType&&a(),g()},t.prototype.update=function(t){if(t.length!==this.controlPoints.length)throw new Error("[p5.bezier] The number of control points changed.");this.controlPoints.every((function(e,i){return e===t[i]}))||(this.controlPoints=t,this._buildVertexList())},t.prototype.move=function(e,i,n,o,r){if(void 0===n&&(n=null),void 0===o&&(o=!0),null===n&&3===this.dimension)throw new Error("[p5.bezier] X, Y, and Z are needed to move a 3D curve.");var s=[e,i];null!==n&&s.push(n);var h=this.vertexList.map((function(t){return t.slice()})),p=new t(this.controlPoints,this.closeType,this.increment,this.dimension,h);return p.vertexList=p.vertexList.map((function(t){return t.map((function(t,e){return t+s[e]}))})),o&&p.draw(r),p},t.prototype.shortest=function(t,e,n){var o=this;void 0===n&&(n=0);var r=[0,0,0],s=1/0;return this.vertexList.map((function(h){var p=o._distVertex(h,[t,e,n]);s>p&&(s=p,r=i([],h,!0))})),r},t}();return e})())); //# sourceMappingURL=p5.bezier.min.js.map