UNPKG

ds-heightmap

Version:

Use diamond-square algorithm to generate heightmaps.

296 lines (237 loc) 8.06 kB
import * as wasm from './ds_heightmap_bg.wasm'; const heap = new Array(32).fill(undefined); heap.push(undefined, null, true, false); function getObject(idx) { return heap[idx]; } let heap_next = heap.length; function dropObject(idx) { if (idx < 36) return; heap[idx] = heap_next; heap_next = idx; } function takeObject(idx) { const ret = getObject(idx); dropObject(idx); return ret; } const lTextDecoder = typeof TextDecoder === 'undefined' ? (0, module.require)('util').TextDecoder : TextDecoder; let cachedTextDecoder = new lTextDecoder('utf-8', { ignoreBOM: true, fatal: true }); cachedTextDecoder.decode(); let cachegetUint8Memory0 = null; function getUint8Memory0() { if (cachegetUint8Memory0 === null || cachegetUint8Memory0.buffer !== wasm.memory.buffer) { cachegetUint8Memory0 = new Uint8Array(wasm.memory.buffer); } return cachegetUint8Memory0; } function getStringFromWasm0(ptr, len) { return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len)); } function addHeapObject(obj) { if (heap_next === heap.length) heap.push(heap.length + 1); const idx = heap_next; heap_next = heap[idx]; heap[idx] = obj; return idx; } function isLikeNone(x) { return x === undefined || x === null; } let cachegetInt32Memory0 = null; function getInt32Memory0() { if (cachegetInt32Memory0 === null || cachegetInt32Memory0.buffer !== wasm.memory.buffer) { cachegetInt32Memory0 = new Int32Array(wasm.memory.buffer); } return cachegetInt32Memory0; } function handleError(f, args) { try { return f.apply(this, args); } catch (e) { wasm.__wbindgen_exn_store(addHeapObject(e)); } } function getArrayU8FromWasm0(ptr, len) { return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len); } /** */ export class Runner { static __wrap(ptr) { const obj = Object.create(Runner.prototype); obj.ptr = ptr; return obj; } __destroy_into_raw() { const ptr = this.ptr; this.ptr = 0; return ptr; } free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_runner_free(ptr); } /** * @param {number} width * @param {number} height * @param {number | undefined} depth * @param {number | undefined} rough */ constructor(width, height, depth, rough) { const ret = wasm.runner_wasm_new(width, height, !isLikeNone(depth), isLikeNone(depth) ? 0 : depth, !isLikeNone(rough), isLikeNone(rough) ? 0 : rough); return Runner.__wrap(ret); } /** * @returns {object} */ ds() { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); wasm.runner_ds(retptr, this.ptr); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var r2 = getInt32Memory0()[retptr / 4 + 2]; if (r2) { throw takeObject(r1); } return takeObject(r0); } finally { wasm.__wbindgen_add_to_stack_pointer(16); } } } export function __wbindgen_object_drop_ref(arg0) { takeObject(arg0); }; export function __wbindgen_string_new(arg0, arg1) { const ret = getStringFromWasm0(arg0, arg1); return addHeapObject(ret); }; export function __wbindgen_number_new(arg0) { const ret = arg0; return addHeapObject(ret); }; export function __wbg_randomFillSync_654a7797990fb8db() { return handleError(function (arg0, arg1, arg2) { getObject(arg0).randomFillSync(getArrayU8FromWasm0(arg1, arg2)); }, arguments) }; export function __wbg_getRandomValues_fb6b088efb6bead2() { return handleError(function (arg0, arg1) { getObject(arg0).getRandomValues(getObject(arg1)); }, arguments) }; export function __wbg_process_70251ed1291754d5(arg0) { const ret = getObject(arg0).process; return addHeapObject(ret); }; export function __wbindgen_is_object(arg0) { const val = getObject(arg0); const ret = typeof(val) === 'object' && val !== null; return ret; }; export function __wbg_versions_b23f2588cdb2ddbb(arg0) { const ret = getObject(arg0).versions; return addHeapObject(ret); }; export function __wbg_node_61b8c9a82499895d(arg0) { const ret = getObject(arg0).node; return addHeapObject(ret); }; export function __wbindgen_is_string(arg0) { const ret = typeof(getObject(arg0)) === 'string'; return ret; }; export function __wbg_static_accessor_NODE_MODULE_33b45247c55045b0() { const ret = module; return addHeapObject(ret); }; export function __wbg_require_2a93bc09fee45aca() { return handleError(function (arg0, arg1, arg2) { const ret = getObject(arg0).require(getStringFromWasm0(arg1, arg2)); return addHeapObject(ret); }, arguments) }; export function __wbg_crypto_2f56257a38275dbd(arg0) { const ret = getObject(arg0).crypto; return addHeapObject(ret); }; export function __wbg_msCrypto_d07655bf62361f21(arg0) { const ret = getObject(arg0).msCrypto; return addHeapObject(ret); }; export function __wbg_new_94fb1279cf6afea5() { const ret = new Array(); return addHeapObject(ret); }; export function __wbg_newnoargs_e23b458e372830de(arg0, arg1) { const ret = new Function(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }; export function __wbg_call_ae78342adc33730a() { return handleError(function (arg0, arg1) { const ret = getObject(arg0).call(getObject(arg1)); return addHeapObject(ret); }, arguments) }; export function __wbg_new_36359baae5a47e27() { const ret = new Object(); return addHeapObject(ret); }; export function __wbindgen_object_clone_ref(arg0) { const ret = getObject(arg0); return addHeapObject(ret); }; export function __wbg_from_7b9a99a7cd3ef15f(arg0) { const ret = Array.from(getObject(arg0)); return addHeapObject(ret); }; export function __wbg_push_40c6a90f1805aa90(arg0, arg1) { const ret = getObject(arg0).push(getObject(arg1)); return ret; }; export function __wbg_self_99737b4dcdf6f0d8() { return handleError(function () { const ret = self.self; return addHeapObject(ret); }, arguments) }; export function __wbg_window_9b61fbbf3564c4fb() { return handleError(function () { const ret = window.window; return addHeapObject(ret); }, arguments) }; export function __wbg_globalThis_8e275ef40caea3a3() { return handleError(function () { const ret = globalThis.globalThis; return addHeapObject(ret); }, arguments) }; export function __wbg_global_5de1e0f82bddcd27() { return handleError(function () { const ret = global.global; return addHeapObject(ret); }, arguments) }; export function __wbindgen_is_undefined(arg0) { const ret = getObject(arg0) === undefined; return ret; }; export function __wbg_buffer_7af23f65f6c64548(arg0) { const ret = getObject(arg0).buffer; return addHeapObject(ret); }; export function __wbg_new_cc9018bd6f283b6f(arg0) { const ret = new Uint8Array(getObject(arg0)); return addHeapObject(ret); }; export function __wbg_set_f25e869e4565d2a2(arg0, arg1, arg2) { getObject(arg0).set(getObject(arg1), arg2 >>> 0); }; export function __wbg_length_0acb1cf9bbaf8519(arg0) { const ret = getObject(arg0).length; return ret; }; export function __wbg_newwithlength_8f0657faca9f1422(arg0) { const ret = new Uint8Array(arg0 >>> 0); return addHeapObject(ret); }; export function __wbg_subarray_da527dbd24eafb6b(arg0, arg1, arg2) { const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }; export function __wbg_set_93b1c87ee2af852e() { return handleError(function (arg0, arg1, arg2) { const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2)); return ret; }, arguments) }; export function __wbindgen_throw(arg0, arg1) { throw new Error(getStringFromWasm0(arg0, arg1)); }; export function __wbindgen_memory() { const ret = wasm.memory; return addHeapObject(ret); };