@tsparticles/path-perlin-noise 3.0.3 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -67,7 +67,7 @@ export class PerlinNoiseGenerator {
67
67
  x: Math.max(Math.floor(pos.x / size), 0),
68
68
  y: Math.max(Math.floor(pos.y / size), 0),
69
69
  }, { field } = this;
70
- return !field || !field[point.x] || !field[point.x][point.y] ? Vector.origin : field[point.x][point.y].copy();
70
+ return !field?.[point.x]?.[point.y] ? Vector.origin : field[point.x][point.y].copy();
71
71
  }
72
72
  init(container) {
73
73
  this.container = container;
@@ -70,7 +70,7 @@ class PerlinNoiseGenerator {
70
70
  x: Math.max(Math.floor(pos.x / size), 0),
71
71
  y: Math.max(Math.floor(pos.y / size), 0),
72
72
  }, { field } = this;
73
- return !field || !field[point.x] || !field[point.x][point.y] ? engine_1.Vector.origin : field[point.x][point.y].copy();
73
+ return !field?.[point.x]?.[point.y] ? engine_1.Vector.origin : field[point.x][point.y].copy();
74
74
  }
75
75
  init(container) {
76
76
  this.container = container;
@@ -67,7 +67,7 @@ export class PerlinNoiseGenerator {
67
67
  x: Math.max(Math.floor(pos.x / size), 0),
68
68
  y: Math.max(Math.floor(pos.y / size), 0),
69
69
  }, { field } = this;
70
- return !field || !field[point.x] || !field[point.x][point.y] ? Vector.origin : field[point.x][point.y].copy();
70
+ return !field?.[point.x]?.[point.y] ? Vector.origin : field[point.x][point.y].copy();
71
71
  }
72
72
  init(container) {
73
73
  this.container = container;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/path-perlin-noise",
3
- "version": "3.0.3",
3
+ "version": "3.1.0",
4
4
  "description": "tsParticles perlin noise path",
5
5
  "homepage": "https://particles.js.org",
6
6
  "repository": {
@@ -104,7 +104,7 @@
104
104
  "./package.json": "./package.json"
105
105
  },
106
106
  "dependencies": {
107
- "@tsparticles/engine": "^3.0.3",
108
- "@tsparticles/perlin-noise": "^3.0.3"
107
+ "@tsparticles/engine": "^3.1.0",
108
+ "@tsparticles/perlin-noise": "^3.1.0"
109
109
  }
110
110
  }
package/report.html CHANGED
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="UTF-8"/>
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1"/>
6
- <title>@tsparticles/path-perlin-noise [26 Dec 2023 at 19:33]</title>
6
+ <title>@tsparticles/path-perlin-noise [13 Jan 2024 at 23:10]</title>
7
7
  <link rel="shortcut icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAABrVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+O1foceMD///+J0/qK1Pr7/v8Xdr/9///W8P4UdL7L7P0Scr2r4Pyj3vwad8D5/f/2/f+55f3E6f34+/2H0/ojfMKpzOd0rNgQcb3F3O/j9f7c8v6g3Pz0/P/w+v/q+P7n9v6T1/uQ1vuE0vqLut/y+v+Z2fvt+f+15Pzv9fuc2/vR7v2V2Pvd6/bg9P7I6/285/2y4/yp3/zp8vk8i8kqgMT7/P31+fyv4vxGkcz6/P6/6P3j7vfS5PNnpNUxhcbO7f7F6v3O4vHK3/DA2u631Ouy0eqXweKJud5wqthfoNMMbLvY8f73+v2dxeR8sNtTmdDx9/zX6PSjyeaCtd1YnNGX2PuQveCGt95Nls42h8dLlM3F4vBtAAAAM3RSTlMAAyOx0/sKBvik8opWGBMOAe3l1snDm2E9LSb06eHcu5JpHbarfHZCN9CBb08zzkdNS0kYaptYAAAFV0lEQVRYw92X51/aYBDHHS2O2qqttVbrqNq9m+TJIAYIShBkWwqIiCgoWvfeq7Z2/s29hyQNyUcR7LveGwVyXy6XH8/9rqxglLfUPLxVduUor3h0rfp2TYvpivk37929TkG037hffoX0+peVtZQc1589rigVUdXS/ABSAyEmGIO/1XfvldSK8vs3OqB6u3m0nxmIrvgB0dj7rr7Y9IbuF68hnfFaiHA/sxqm0wciIG43P60qKv9WXWc1RXGh/mFESFABTSBi0sNAKzqet17eCtOb3kZIDwxEEU0oAIJGYxNBDhBND29e0rtXXbcpuPmED9IhEAAQ/AXEaF8EPmnrrKsv0LvWR3fg5sWDNAFZOgAgaKvZDogHNU9MFwnnYROkc56RD5CjAbQX9Ow4g7upCsvYu55aSI/Nj0H1akgKQEUM94dwK65hYRmFU9MIcH/fqJYOZYcnuJSU/waKDgTOEVaVKhwrTRP5XzgSpAITYzom7UvkhFX5VutmxeNnWDjjswTKTyfgluNDGbUpWissXhF3s7mlSml+czWkg3D0l1nNjGNjz3myOQOa1KM/jOS6ebdbAVTCi4gljHSFrviza7tOgRWcS0MOUX9zdNgag5w7rRqA44Lzw0hr1WqES36dFliSJFlh2rXIae3FFcDDgKdxrUIDePr8jGcSClV1u7A9xeN0ModY/pHMxmR1EzRh8TJiwqsHmKW0l4FCEZI+jHio+JdPPE9qwQtTRxku2D8sIeRL2LnxWSllANCQGOIiqVHAz2ye2JR0DcH+HoxDkaADLjgxjKQ+AwCX/g0+DNgdG0ukYCONAe+dbc2IAc6fwt1ARoDSezNHxV2Cmzwv3O6lDMV55edBGwGK9n1+x2F8EDfAGCxug8MhpsMEcTEAWf3rx2vZhe/LAmtIn/6apE6PN0ULKgywD9mmdxbmFl3OvD5AS5fW5zLbv/YHmcsBTjf/afDz3MaZTVCfAP9z6/Bw6ycv8EUBWJIn9zYcoAWWlW9+OzO3vkTy8H+RANLmdrpOuYWdZYEXpo+TlCJrW5EARb7fF+bWdqf3hhyZI1nWJQHgznErZhbjoEsWqi8dQNoE294aldzFurwSABL2XXMf9+H1VQGke9exw5P/AnA5Pv5ngMul7LOvO922iwACu8WkCwLCafvM4CeWPxfA8lNHcWZSoi8EwMAIciKX2Z4SWCMAa3snCZ/G4EA8D6CMLNFsGQhkkz/gQNEBbPCbWsxGUpYVu3z8IyNAknwJkfPMEhLyrdi5RTyUVACkw4GSFRNWJNEW+fgPGwHD8/JxnRuLabN4CGNRkAE23na2+VmEAUmrYymSGjMAYqH84YUIyzgzs3XC7gNgH36Vcc4zKY9o9fgPBXUAiHHwVboBHGLiX6Zcjp1f2wu4tvzZKo0ecPnDtQYDQvJXaBeNzce45Fp28ZQLrEZVuFqgBwOalArKXnW1UzlnSusQKJqKYNuz4tOnI6sZG4zanpemv+7ySU2jbA9h6uhcgpfy6G2PahirDZ6zvq6zDduMVFTKvzw8wgyEdelwY9in3XkEPs3osJuwRQ4qTkfzifndg9Gfc4pdsu82+tTnHZTBa2EAMrqr2t43pguc8tNm7JQVQ2S0ukj2d22dhXYP0/veWtwKrCkNoNimAN5+Xr/oLrxswKbVJjteWrX7eR63o4j9q0GxnaBdWgGA5VStpanIjQmEhV0/nVt5VOFUvix6awJhPcAaTEShgrG+iGyvb5a0Ndb1YGHFPEwoqAinoaykaID1o1pdPNu7XsnCKQ3R+hwWIIhGvORcJUBYXe3Xa3vq/mF/N9V13ugufMkfXn+KHsRD0B8AAAAASUVORK5CYII=" type="image/x-icon" />
8
8
 
9
9
  <script>
@@ -31,7 +31,7 @@
31
31
  <body>
32
32
  <div id="app"></div>
33
33
  <script>
34
- window.chartData = [{"label":"tsparticles.path.perlin.noise.js","isAsset":true,"statSize":4574,"parsedSize":8875,"gzipSize":2577,"groups":[{"label":"dist/browser","path":"./dist/browser","statSize":4490,"groups":[{"id":697,"label":"index.js + 1 modules (concatenated)","path":"./dist/browser/index.js + 1 modules (concatenated)","statSize":4490,"parsedSize":8875,"gzipSize":2577,"concatenated":true,"groups":[{"label":"dist/browser","path":"./dist/browser/index.js + 1 modules (concatenated)/dist/browser","statSize":4490,"groups":[{"id":null,"label":"index.js","path":"./dist/browser/index.js + 1 modules (concatenated)/dist/browser/index.js","statSize":276,"parsedSize":545,"gzipSize":158,"inaccurateSizes":true},{"id":null,"label":"PerlinNoiseGenerator.js","path":"./dist/browser/index.js + 1 modules (concatenated)/dist/browser/PerlinNoiseGenerator.js","statSize":4214,"parsedSize":8329,"gzipSize":2418,"inaccurateSizes":true}],"parsedSize":8875,"gzipSize":2577,"inaccurateSizes":true}]}],"parsedSize":8875,"gzipSize":2577},{"label":"engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles","path":"./engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles","statSize":42,"groups":[{"id":533,"label":"engine\",\"root\":\"window\"}","path":"./engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles/engine\",\"root\":\"window\"}","statSize":42}],"parsedSize":0,"gzipSize":0},{"label":"perlin-noise\",\"commonjs2\":\"@tsparticles/perlin-noise\",\"amd\":\"@tsparticles","path":"./perlin-noise\",\"commonjs2\":\"@tsparticles/perlin-noise\",\"amd\":\"@tsparticles","statSize":42,"groups":[{"id":551,"label":"perlin-noise\",\"root\":\"window\"}","path":"./perlin-noise\",\"commonjs2\":\"@tsparticles/perlin-noise\",\"amd\":\"@tsparticles/perlin-noise\",\"root\":\"window\"}","statSize":42}],"parsedSize":0,"gzipSize":0}],"isInitialByEntrypoint":{"tsparticles.path.perlin.noise":true}}];
34
+ window.chartData = [{"label":"tsparticles.path.perlin.noise.js","isAsset":true,"statSize":4549,"parsedSize":8850,"gzipSize":2575,"groups":[{"label":"dist/browser","path":"./dist/browser","statSize":4465,"groups":[{"id":129,"label":"index.js + 1 modules (concatenated)","path":"./dist/browser/index.js + 1 modules (concatenated)","statSize":4465,"parsedSize":8850,"gzipSize":2575,"concatenated":true,"groups":[{"label":"dist/browser","path":"./dist/browser/index.js + 1 modules (concatenated)/dist/browser","statSize":4465,"groups":[{"id":null,"label":"index.js","path":"./dist/browser/index.js + 1 modules (concatenated)/dist/browser/index.js","statSize":276,"parsedSize":547,"gzipSize":159,"inaccurateSizes":true},{"id":null,"label":"PerlinNoiseGenerator.js","path":"./dist/browser/index.js + 1 modules (concatenated)/dist/browser/PerlinNoiseGenerator.js","statSize":4189,"parsedSize":8302,"gzipSize":2415,"inaccurateSizes":true}],"parsedSize":8850,"gzipSize":2575,"inaccurateSizes":true}]}],"parsedSize":8850,"gzipSize":2575},{"label":"engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles","path":"./engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles","statSize":42,"groups":[{"id":533,"label":"engine\",\"root\":\"window\"}","path":"./engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles/engine\",\"root\":\"window\"}","statSize":42}],"parsedSize":0,"gzipSize":0},{"label":"perlin-noise\",\"commonjs2\":\"@tsparticles/perlin-noise\",\"amd\":\"@tsparticles","path":"./perlin-noise\",\"commonjs2\":\"@tsparticles/perlin-noise\",\"amd\":\"@tsparticles","statSize":42,"groups":[{"id":551,"label":"perlin-noise\",\"root\":\"window\"}","path":"./perlin-noise\",\"commonjs2\":\"@tsparticles/perlin-noise\",\"amd\":\"@tsparticles/perlin-noise\",\"root\":\"window\"}","statSize":42}],"parsedSize":0,"gzipSize":0}],"isInitialByEntrypoint":{"tsparticles.path.perlin.noise":true}}];
35
35
  window.entrypoints = ["tsparticles.path.perlin.noise","tsparticles.path.perlin.noise.min"];
36
36
  window.defaultSizes = "parsed";
37
37
  </script>
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v3.0.3
7
+ * v3.1.0
8
8
  */
9
9
  (function webpackUniversalModuleDefinition(root, factory) {
10
10
  if(typeof exports === 'object' && typeof module === 'object')
@@ -199,7 +199,7 @@ class PerlinNoiseGenerator {
199
199
  {
200
200
  field
201
201
  } = this;
202
- return !field || !field[point.x] || !field[point.x][point.y] ? engine_root_window_.Vector.origin : field[point.x][point.y].copy();
202
+ return !field?.[point.x]?.[point.y] ? engine_root_window_.Vector.origin : field[point.x][point.y].copy();
203
203
  }
204
204
  init(container) {
205
205
  this.container = container;
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see tsparticles.path.perlin.noise.min.js.LICENSE.txt */
2
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@tsparticles/engine"),require("@tsparticles/perlin-noise"));else if("function"==typeof define&&define.amd)define(["@tsparticles/engine","@tsparticles/perlin-noise"],t);else{var i="object"==typeof exports?t(require("@tsparticles/engine"),require("@tsparticles/perlin-noise")):t(e.window,e.window);for(var o in i)("object"==typeof exports?exports:e)[o]=i[o]}}(this,((e,t)=>(()=>{"use strict";var i={533:t=>{t.exports=e},551:e=>{e.exports=t}},o={};function s(e){var t=o[e];if(void 0!==t)return t.exports;var n=o[e]={exports:{}};return i[e](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var i in t)s.o(t,i)&&!s.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{s.r(n),s.d(n,{loadPerlinNoisePath:()=>a,perlinNoisePathName:()=>r});var e=s(533),t=s(551);const i={draw:!1,size:20,increment:.004,columns:0,rows:0,width:0,height:0,factor:{angle:.02,length:.01},offset:{x:4e4,y:4e4}};class o{constructor(){this._calculateField=()=>{const{field:e,noiseGen:t,options:i}=this,o=i.factor.length,s=i.factor.angle;for(let n=0;n<i.columns;n++){const r=e[n];for(let e=0;e<i.rows;e++){const a=r[e];a.length=t.noise3d(n*o+i.offset.x,e*o+i.offset.y,this.noiseZ),a.angle=t.noise3d(n*s,e*s,this.noiseZ)*Math.PI*2}}},this._drawField=e=>{const{field:t,options:i}=this;for(let o=0;o<i.columns;o++){const s=t[o];for(let t=0;t<i.rows;t++){const i=s[t],{angle:n,length:r}=i;e.setTransform(1,0,0,1,o*this.options.size,t*this.options.size),e.rotate(n),e.strokeStyle="white",e.beginPath(),e.moveTo(0,0),e.lineTo(0,this.options.size*r),e.stroke(),e.setTransform(1,0,0,1,0,0)}}},this._initField=()=>{const{columns:t,rows:i}=this.options;this.field=new Array(t);for(let o=0;o<t;o++){this.field[o]=new Array(i);for(let t=0;t<i;t++)this.field[o][t]=e.Vector.origin}},this.noiseGen=new t.PerlinNoise,this.field=[],this.noiseZ=0,this.options=(0,e.deepExtend)({},i)}generate(t){const i=t.getPosition(),{size:o}=this.options,s=Math.max(Math.floor(i.x/o),0),n=Math.max(Math.floor(i.y/o),0),{field:r}=this;return r&&r[s]&&r[s][n]?r[s][n].copy():e.Vector.origin}init(e){this.container=e,this._setup()}reset(){}update(){this.container&&(this._calculateField(),this.noiseZ+=this.options.increment,this.options.draw&&this.container.canvas.draw((e=>this._drawField(e))))}_resetField(){const t=this.container;if(!t)return;const o=t.actualOptions.particles.move.path.options,{options:s}=this;s.size=o.size>0?o.size:i.size,s.increment=o.increment>0?o.increment:i.increment,s.draw=!!o.draw;const n=o.offset;s.offset.x=n?.x??i.offset.x,s.offset.y=n?.y??i.offset.y;const r=o.factor;s.factor.angle=r?.angle??i.factor.angle,s.factor.length=r?.length??i.factor.length,s.width=t.canvas.size.width,s.height=t.canvas.size.height,this.options.seed=o.seed,this.noiseGen.seed(this.options.seed??(0,e.getRandom)()),s.columns=Math.floor(this.options.width/this.options.size)+1,s.rows=Math.floor(this.options.height/this.options.size)+1,this._initField()}_setup(){this.noiseZ=0,this._resetField(),window.addEventListener("resize",(()=>this._resetField()))}}const r="perlinNoise";async function a(e,t=!0){await e.addPathGenerator(r,new o,t)}})(),n})()));
2
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@tsparticles/engine"),require("@tsparticles/perlin-noise"));else if("function"==typeof define&&define.amd)define(["@tsparticles/engine","@tsparticles/perlin-noise"],t);else{var i="object"==typeof exports?t(require("@tsparticles/engine"),require("@tsparticles/perlin-noise")):t(e.window,e.window);for(var o in i)("object"==typeof exports?exports:e)[o]=i[o]}}(this,((e,t)=>(()=>{"use strict";var i={533:t=>{t.exports=e},551:e=>{e.exports=t}},o={};function s(e){var t=o[e];if(void 0!==t)return t.exports;var n=o[e]={exports:{}};return i[e](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var i in t)s.o(t,i)&&!s.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{s.r(n),s.d(n,{loadPerlinNoisePath:()=>a,perlinNoisePathName:()=>r});var e=s(533),t=s(551);const i={draw:!1,size:20,increment:.004,columns:0,rows:0,width:0,height:0,factor:{angle:.02,length:.01},offset:{x:4e4,y:4e4}};class o{constructor(){this._calculateField=()=>{const{field:e,noiseGen:t,options:i}=this,o=i.factor.length,s=i.factor.angle;for(let n=0;n<i.columns;n++){const r=e[n];for(let e=0;e<i.rows;e++){const a=r[e];a.length=t.noise3d(n*o+i.offset.x,e*o+i.offset.y,this.noiseZ),a.angle=t.noise3d(n*s,e*s,this.noiseZ)*Math.PI*2}}},this._drawField=e=>{const{field:t,options:i}=this;for(let o=0;o<i.columns;o++){const s=t[o];for(let t=0;t<i.rows;t++){const i=s[t],{angle:n,length:r}=i;e.setTransform(1,0,0,1,o*this.options.size,t*this.options.size),e.rotate(n),e.strokeStyle="white",e.beginPath(),e.moveTo(0,0),e.lineTo(0,this.options.size*r),e.stroke(),e.setTransform(1,0,0,1,0,0)}}},this._initField=()=>{const{columns:t,rows:i}=this.options;this.field=new Array(t);for(let o=0;o<t;o++){this.field[o]=new Array(i);for(let t=0;t<i;t++)this.field[o][t]=e.Vector.origin}},this.noiseGen=new t.PerlinNoise,this.field=[],this.noiseZ=0,this.options=(0,e.deepExtend)({},i)}generate(t){const i=t.getPosition(),{size:o}=this.options,s=Math.max(Math.floor(i.x/o),0),n=Math.max(Math.floor(i.y/o),0),{field:r}=this;return r?.[s]?.[n]?r[s][n].copy():e.Vector.origin}init(e){this.container=e,this._setup()}reset(){}update(){this.container&&(this._calculateField(),this.noiseZ+=this.options.increment,this.options.draw&&this.container.canvas.draw((e=>this._drawField(e))))}_resetField(){const t=this.container;if(!t)return;const o=t.actualOptions.particles.move.path.options,{options:s}=this;s.size=o.size>0?o.size:i.size,s.increment=o.increment>0?o.increment:i.increment,s.draw=!!o.draw;const n=o.offset;s.offset.x=n?.x??i.offset.x,s.offset.y=n?.y??i.offset.y;const r=o.factor;s.factor.angle=r?.angle??i.factor.angle,s.factor.length=r?.length??i.factor.length,s.width=t.canvas.size.width,s.height=t.canvas.size.height,this.options.seed=o.seed,this.noiseGen.seed(this.options.seed??(0,e.getRandom)()),s.columns=Math.floor(this.options.width/this.options.size)+1,s.rows=Math.floor(this.options.height/this.options.size)+1,this._initField()}_setup(){this.noiseZ=0,this._resetField(),window.addEventListener("resize",(()=>this._resetField()))}}const r="perlinNoise";async function a(e,t=!0){await e.addPathGenerator(r,new o,t)}})(),n})()));
@@ -1 +1 @@
1
- /*! tsParticles Perlin Noise Path v3.0.3 by Matteo Bruni */
1
+ /*! tsParticles Perlin Noise Path v3.1.0 by Matteo Bruni */
@@ -79,7 +79,7 @@
79
79
  x: Math.max(Math.floor(pos.x / size), 0),
80
80
  y: Math.max(Math.floor(pos.y / size), 0),
81
81
  }, { field } = this;
82
- return !field || !field[point.x] || !field[point.x][point.y] ? engine_1.Vector.origin : field[point.x][point.y].copy();
82
+ return !field?.[point.x]?.[point.y] ? engine_1.Vector.origin : field[point.x][point.y].copy();
83
83
  }
84
84
  init(container) {
85
85
  this.container = container;