From 8c4a96570dc7cd59622c4ff61efc7ccfd1515687 Mon Sep 17 00:00:00 2001 From: Atsushi Izumihara Date: Sun, 28 Feb 2016 00:14:13 +0900 Subject: [PATCH] create new typescript definitions file for noisejs --- noisejs/noisejs-tests.ts | 10 +++++++ noisejs/noisejs.d.ts | 58 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 noisejs/noisejs-tests.ts create mode 100644 noisejs/noisejs.d.ts diff --git a/noisejs/noisejs-tests.ts b/noisejs/noisejs-tests.ts new file mode 100644 index 0000000000..10c6a68bcf --- /dev/null +++ b/noisejs/noisejs-tests.ts @@ -0,0 +1,10 @@ +/// + +var noise = new Noise(Math.random()); + +var simplex2_noise_val = noise.simplex2(0.1, 0.2); +var simplex3_noise_val = noise.simplex3(0.1, 0.2, 0.3); +var perlin2_noise_val = noise.perlin2(0.1, 0.2); +var perlin3_noise_val = noise.perlin3(0.1, 0.2, 0.3); + +noise.seed(Math.random()); diff --git a/noisejs/noisejs.d.ts b/noisejs/noisejs.d.ts new file mode 100644 index 0000000000..d671114357 --- /dev/null +++ b/noisejs/noisejs.d.ts @@ -0,0 +1,58 @@ +// Type definitions for noisejs +// Project: https://github.com/xixixao/noisejs +// Definitions by: Atsushi Izumihara +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +declare class Noise { + /** + * Passing in seed will seed this Noise instance + * @param {number} seed + * @return {Noise} Noise instance + */ + constructor(seed?: number); + + /** + * 2D simplex noise + * @param {number} x + * @param {number} y + * @return {number} noise value + */ + simplex2(x: number, y: number): number; + + /** + * 3D simplex noise + * @param {number} x + * @param {number} y + * @param {number} z + * @return {number} noise value + */ + simplex3(x: number, y: number, z: number): number; + + /** + * 2D Perlin Noise + * @param {number} x + * @param {number} y + * @return {number} noise value + */ + perlin2(x: number, y: number): number; + + /** + * 3D Perlin Noise + * @param {number} x + * @param {number} y + * @param {number} z + * @return {number} noise value + */ + perlin3(x: number, y: number, z: number): number; + + /** + * This isn't a very good seeding function, but it works ok. It supports 2^16 + * different seed values. Write something better if you need more seeds. + * @param {number} seed [description] + */ + seed(seed: number): void; +} + +declare module "noisejs" { + export = Noise; +}