nucleation 0.1.169 → 0.1.170
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.
- package/nucleation-original.js +280 -7
- package/nucleation.d.ts +107 -25
- package/nucleation_bg.wasm +0 -0
- package/package.json +1 -1
package/nucleation-original.js
CHANGED
|
@@ -128,6 +128,14 @@ function getFloat32ArrayMemory0() {
|
|
|
128
128
|
return cachedFloat32ArrayMemory0;
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
+
let cachedFloat64ArrayMemory0 = null;
|
|
132
|
+
function getFloat64ArrayMemory0() {
|
|
133
|
+
if (cachedFloat64ArrayMemory0 === null || cachedFloat64ArrayMemory0.byteLength === 0) {
|
|
134
|
+
cachedFloat64ArrayMemory0 = new Float64Array(wasm.memory.buffer);
|
|
135
|
+
}
|
|
136
|
+
return cachedFloat64ArrayMemory0;
|
|
137
|
+
}
|
|
138
|
+
|
|
131
139
|
let cachedInt32ArrayMemory0 = null;
|
|
132
140
|
function getInt32ArrayMemory0() {
|
|
133
141
|
if (cachedInt32ArrayMemory0 === null || cachedInt32ArrayMemory0.byteLength === 0) {
|
|
@@ -184,6 +192,13 @@ function passArray8ToWasm0(arg, malloc) {
|
|
|
184
192
|
return ptr;
|
|
185
193
|
}
|
|
186
194
|
|
|
195
|
+
function passArrayF64ToWasm0(arg, malloc) {
|
|
196
|
+
const ptr = malloc(arg.length * 8, 8) >>> 0;
|
|
197
|
+
getFloat64ArrayMemory0().set(arg, ptr / 8);
|
|
198
|
+
WASM_VECTOR_LEN = arg.length;
|
|
199
|
+
return ptr;
|
|
200
|
+
}
|
|
201
|
+
|
|
187
202
|
function passArrayJsValueToWasm0(array, malloc) {
|
|
188
203
|
const ptr = malloc(array.length * 4, 4) >>> 0;
|
|
189
204
|
for (let i = 0; i < array.length; i++) {
|
|
@@ -520,7 +535,7 @@ export class BlockStateWrapper {
|
|
|
520
535
|
if (Symbol.dispose) BlockStateWrapper.prototype[Symbol.dispose] = BlockStateWrapper.prototype.free;
|
|
521
536
|
|
|
522
537
|
/**
|
|
523
|
-
* A wrapper for any brush (Solid, Gradient, Shaded, etc.)
|
|
538
|
+
* A wrapper for any brush (Solid, Gradient, Shaded, CurveGradient, etc.)
|
|
524
539
|
*/
|
|
525
540
|
export class BrushWrapper {
|
|
526
541
|
static __wrap(ptr) {
|
|
@@ -540,11 +555,28 @@ export class BrushWrapper {
|
|
|
540
555
|
const ptr = this.__destroy_into_raw();
|
|
541
556
|
wasm.__wbg_brushwrapper_free(ptr, 0);
|
|
542
557
|
}
|
|
558
|
+
/**
|
|
559
|
+
* Create a curve gradient brush that interpolates colors along parametric shapes.
|
|
560
|
+
* stops_flat: Flat array [pos1, r1, g1, b1, pos2, r2, g2, b2, ...]
|
|
561
|
+
* Space: 0 = RGB, 1 = Oklab
|
|
562
|
+
* @param {Float64Array} stops_flat
|
|
563
|
+
* @param {number | null} [space]
|
|
564
|
+
* @param {string[] | null} [palette_filter]
|
|
565
|
+
* @returns {BrushWrapper}
|
|
566
|
+
*/
|
|
567
|
+
static curveGradient(stops_flat, space, palette_filter) {
|
|
568
|
+
const ptr0 = passArrayF64ToWasm0(stops_flat, wasm.__wbindgen_malloc);
|
|
569
|
+
const len0 = WASM_VECTOR_LEN;
|
|
570
|
+
var ptr1 = isLikeNone(palette_filter) ? 0 : passArrayJsValueToWasm0(palette_filter, wasm.__wbindgen_malloc);
|
|
571
|
+
var len1 = WASM_VECTOR_LEN;
|
|
572
|
+
const ret = wasm.brushwrapper_curveGradient(ptr0, len0, isLikeNone(space) ? 0xFFFFFF : space, ptr1, len1);
|
|
573
|
+
if (ret[2]) {
|
|
574
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
575
|
+
}
|
|
576
|
+
return BrushWrapper.__wrap(ret[0]);
|
|
577
|
+
}
|
|
543
578
|
/**
|
|
544
579
|
* Create a point cloud gradient brush using Inverse Distance Weighting (IDW)
|
|
545
|
-
* positions: Flat array [x1, y1, z1, x2, y2, z2, ...]
|
|
546
|
-
* colors: Flat array [r1, g1, b1, r2, g2, b2, ...]
|
|
547
|
-
* falloff: Power parameter (default 2.0 if None)
|
|
548
580
|
* @param {Int32Array} positions
|
|
549
581
|
* @param {Uint8Array} colors
|
|
550
582
|
* @param {number | null} [falloff]
|
|
@@ -625,7 +657,6 @@ export class BrushWrapper {
|
|
|
625
657
|
}
|
|
626
658
|
/**
|
|
627
659
|
* Create a color brush (matches closest block to RGB color)
|
|
628
|
-
* Palette: optional list of block IDs to restrict matching to.
|
|
629
660
|
* @param {number} r
|
|
630
661
|
* @param {number} g
|
|
631
662
|
* @param {number} b
|
|
@@ -654,7 +685,6 @@ export class BrushWrapper {
|
|
|
654
685
|
}
|
|
655
686
|
/**
|
|
656
687
|
* Create a shaded brush (Lambertian shading)
|
|
657
|
-
* light_dir: [x, y, z] vector
|
|
658
688
|
* @param {number} r
|
|
659
689
|
* @param {number} g
|
|
660
690
|
* @param {number} b
|
|
@@ -5068,7 +5098,7 @@ export class SchematicWrapper {
|
|
|
5068
5098
|
if (Symbol.dispose) SchematicWrapper.prototype[Symbol.dispose] = SchematicWrapper.prototype.free;
|
|
5069
5099
|
|
|
5070
5100
|
/**
|
|
5071
|
-
* A wrapper for any shape (Sphere, Cuboid, etc.)
|
|
5101
|
+
* A wrapper for any shape (Sphere, Cuboid, Line, etc.)
|
|
5072
5102
|
*/
|
|
5073
5103
|
export class ShapeWrapper {
|
|
5074
5104
|
static __wrap(ptr) {
|
|
@@ -5088,6 +5118,156 @@ export class ShapeWrapper {
|
|
|
5088
5118
|
const ptr = this.__destroy_into_raw();
|
|
5089
5119
|
wasm.__wbg_shapewrapper_free(ptr, 0);
|
|
5090
5120
|
}
|
|
5121
|
+
/**
|
|
5122
|
+
* Create a Difference of two shapes (a AND NOT b)
|
|
5123
|
+
* @param {ShapeWrapper} a
|
|
5124
|
+
* @param {ShapeWrapper} b
|
|
5125
|
+
* @returns {ShapeWrapper}
|
|
5126
|
+
*/
|
|
5127
|
+
static difference(a, b) {
|
|
5128
|
+
_assertClass(a, ShapeWrapper);
|
|
5129
|
+
_assertClass(b, ShapeWrapper);
|
|
5130
|
+
const ret = wasm.shapewrapper_difference(a.__wbg_ptr, b.__wbg_ptr);
|
|
5131
|
+
return ShapeWrapper.__wrap(ret);
|
|
5132
|
+
}
|
|
5133
|
+
/**
|
|
5134
|
+
* Create an Intersection of two shapes (a AND b)
|
|
5135
|
+
* @param {ShapeWrapper} a
|
|
5136
|
+
* @param {ShapeWrapper} b
|
|
5137
|
+
* @returns {ShapeWrapper}
|
|
5138
|
+
*/
|
|
5139
|
+
static intersection(a, b) {
|
|
5140
|
+
_assertClass(a, ShapeWrapper);
|
|
5141
|
+
_assertClass(b, ShapeWrapper);
|
|
5142
|
+
const ret = wasm.shapewrapper_intersection(a.__wbg_ptr, b.__wbg_ptr);
|
|
5143
|
+
return ShapeWrapper.__wrap(ret);
|
|
5144
|
+
}
|
|
5145
|
+
/**
|
|
5146
|
+
* Create a Union of two shapes (a OR b)
|
|
5147
|
+
* @param {ShapeWrapper} a
|
|
5148
|
+
* @param {ShapeWrapper} b
|
|
5149
|
+
* @returns {ShapeWrapper}
|
|
5150
|
+
*/
|
|
5151
|
+
static union(a, b) {
|
|
5152
|
+
_assertClass(a, ShapeWrapper);
|
|
5153
|
+
_assertClass(b, ShapeWrapper);
|
|
5154
|
+
const ret = wasm.shapewrapper_union(a.__wbg_ptr, b.__wbg_ptr);
|
|
5155
|
+
return ShapeWrapper.__wrap(ret);
|
|
5156
|
+
}
|
|
5157
|
+
/**
|
|
5158
|
+
* Create a Cylinder between two points
|
|
5159
|
+
* @param {number} x1
|
|
5160
|
+
* @param {number} y1
|
|
5161
|
+
* @param {number} z1
|
|
5162
|
+
* @param {number} x2
|
|
5163
|
+
* @param {number} y2
|
|
5164
|
+
* @param {number} z2
|
|
5165
|
+
* @param {number} radius
|
|
5166
|
+
* @returns {ShapeWrapper}
|
|
5167
|
+
*/
|
|
5168
|
+
static cylinderBetween(x1, y1, z1, x2, y2, z2, radius) {
|
|
5169
|
+
const ret = wasm.shapewrapper_cylinderBetween(x1, y1, z1, x2, y2, z2, radius);
|
|
5170
|
+
return ShapeWrapper.__wrap(ret);
|
|
5171
|
+
}
|
|
5172
|
+
/**
|
|
5173
|
+
* Create a Cone shape
|
|
5174
|
+
* @param {number} ax
|
|
5175
|
+
* @param {number} ay
|
|
5176
|
+
* @param {number} az
|
|
5177
|
+
* @param {number} dx
|
|
5178
|
+
* @param {number} dy
|
|
5179
|
+
* @param {number} dz
|
|
5180
|
+
* @param {number} radius
|
|
5181
|
+
* @param {number} height
|
|
5182
|
+
* @returns {ShapeWrapper}
|
|
5183
|
+
*/
|
|
5184
|
+
static cone(ax, ay, az, dx, dy, dz, radius, height) {
|
|
5185
|
+
const ret = wasm.shapewrapper_cone(ax, ay, az, dx, dy, dz, radius, height);
|
|
5186
|
+
return ShapeWrapper.__wrap(ret);
|
|
5187
|
+
}
|
|
5188
|
+
/**
|
|
5189
|
+
* Create a Disk shape (flat cylinder)
|
|
5190
|
+
* @param {number} cx
|
|
5191
|
+
* @param {number} cy
|
|
5192
|
+
* @param {number} cz
|
|
5193
|
+
* @param {number} radius
|
|
5194
|
+
* @param {number} nx
|
|
5195
|
+
* @param {number} ny
|
|
5196
|
+
* @param {number} nz
|
|
5197
|
+
* @param {number | null} [thickness]
|
|
5198
|
+
* @returns {ShapeWrapper}
|
|
5199
|
+
*/
|
|
5200
|
+
static disk(cx, cy, cz, radius, nx, ny, nz, thickness) {
|
|
5201
|
+
const ret = wasm.shapewrapper_disk(cx, cy, cz, radius, nx, ny, nz, !isLikeNone(thickness), isLikeNone(thickness) ? 0 : thickness);
|
|
5202
|
+
return ShapeWrapper.__wrap(ret);
|
|
5203
|
+
}
|
|
5204
|
+
/**
|
|
5205
|
+
* Create a 3D Line with thickness
|
|
5206
|
+
* @param {number} x1
|
|
5207
|
+
* @param {number} y1
|
|
5208
|
+
* @param {number} z1
|
|
5209
|
+
* @param {number} x2
|
|
5210
|
+
* @param {number} y2
|
|
5211
|
+
* @param {number} z2
|
|
5212
|
+
* @param {number | null} [thickness]
|
|
5213
|
+
* @returns {ShapeWrapper}
|
|
5214
|
+
*/
|
|
5215
|
+
static line(x1, y1, z1, x2, y2, z2, thickness) {
|
|
5216
|
+
const ret = wasm.shapewrapper_line(x1, y1, z1, x2, y2, z2, !isLikeNone(thickness), isLikeNone(thickness) ? 0 : thickness);
|
|
5217
|
+
return ShapeWrapper.__wrap(ret);
|
|
5218
|
+
}
|
|
5219
|
+
/**
|
|
5220
|
+
* Create a bounded Plane shape
|
|
5221
|
+
* @param {number} ox
|
|
5222
|
+
* @param {number} oy
|
|
5223
|
+
* @param {number} oz
|
|
5224
|
+
* @param {number} ux
|
|
5225
|
+
* @param {number} uy
|
|
5226
|
+
* @param {number} uz
|
|
5227
|
+
* @param {number} vx
|
|
5228
|
+
* @param {number} vy
|
|
5229
|
+
* @param {number} vz
|
|
5230
|
+
* @param {number} u_ext
|
|
5231
|
+
* @param {number} v_ext
|
|
5232
|
+
* @param {number | null} [thickness]
|
|
5233
|
+
* @returns {ShapeWrapper}
|
|
5234
|
+
*/
|
|
5235
|
+
static plane(ox, oy, oz, ux, uy, uz, vx, vy, vz, u_ext, v_ext, thickness) {
|
|
5236
|
+
const ret = wasm.shapewrapper_plane(ox, oy, oz, ux, uy, uz, vx, vy, vz, u_ext, v_ext, !isLikeNone(thickness), isLikeNone(thickness) ? 0 : thickness);
|
|
5237
|
+
return ShapeWrapper.__wrap(ret);
|
|
5238
|
+
}
|
|
5239
|
+
/**
|
|
5240
|
+
* Create a Torus shape
|
|
5241
|
+
* @param {number} cx
|
|
5242
|
+
* @param {number} cy
|
|
5243
|
+
* @param {number} cz
|
|
5244
|
+
* @param {number} major_r
|
|
5245
|
+
* @param {number} minor_r
|
|
5246
|
+
* @param {number} ax
|
|
5247
|
+
* @param {number} ay
|
|
5248
|
+
* @param {number} az
|
|
5249
|
+
* @returns {ShapeWrapper}
|
|
5250
|
+
*/
|
|
5251
|
+
static torus(cx, cy, cz, major_r, minor_r, ax, ay, az) {
|
|
5252
|
+
const ret = wasm.shapewrapper_torus(cx, cy, cz, major_r, minor_r, ax, ay, az);
|
|
5253
|
+
return ShapeWrapper.__wrap(ret);
|
|
5254
|
+
}
|
|
5255
|
+
/**
|
|
5256
|
+
* Create a Bezier curve with thickness
|
|
5257
|
+
* @param {Float64Array} control_points_flat
|
|
5258
|
+
* @param {number | null} [thickness]
|
|
5259
|
+
* @param {number | null} [resolution]
|
|
5260
|
+
* @returns {ShapeWrapper}
|
|
5261
|
+
*/
|
|
5262
|
+
static bezier(control_points_flat, thickness, resolution) {
|
|
5263
|
+
const ptr0 = passArrayF64ToWasm0(control_points_flat, wasm.__wbindgen_malloc);
|
|
5264
|
+
const len0 = WASM_VECTOR_LEN;
|
|
5265
|
+
const ret = wasm.shapewrapper_bezier(ptr0, len0, !isLikeNone(thickness), isLikeNone(thickness) ? 0 : thickness, isLikeNone(resolution) ? 0x100000001 : (resolution) >>> 0);
|
|
5266
|
+
if (ret[2]) {
|
|
5267
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
5268
|
+
}
|
|
5269
|
+
return ShapeWrapper.__wrap(ret[0]);
|
|
5270
|
+
}
|
|
5091
5271
|
/**
|
|
5092
5272
|
* Create a new Cuboid shape
|
|
5093
5273
|
* @param {number} min_x
|
|
@@ -5102,6 +5282,17 @@ export class ShapeWrapper {
|
|
|
5102
5282
|
const ret = wasm.shapewrapper_cuboid(min_x, min_y, min_z, max_x, max_y, max_z);
|
|
5103
5283
|
return ShapeWrapper.__wrap(ret);
|
|
5104
5284
|
}
|
|
5285
|
+
/**
|
|
5286
|
+
* Create a Hollow version of any shape
|
|
5287
|
+
* @param {ShapeWrapper} shape
|
|
5288
|
+
* @param {number | null} [thickness]
|
|
5289
|
+
* @returns {ShapeWrapper}
|
|
5290
|
+
*/
|
|
5291
|
+
static hollow(shape, thickness) {
|
|
5292
|
+
_assertClass(shape, ShapeWrapper);
|
|
5293
|
+
const ret = wasm.shapewrapper_hollow(shape.__wbg_ptr, isLikeNone(thickness) ? 0x100000001 : (thickness) >>> 0);
|
|
5294
|
+
return ShapeWrapper.__wrap(ret);
|
|
5295
|
+
}
|
|
5105
5296
|
/**
|
|
5106
5297
|
* Create a new Sphere shape
|
|
5107
5298
|
* @param {number} cx
|
|
@@ -5114,6 +5305,71 @@ export class ShapeWrapper {
|
|
|
5114
5305
|
const ret = wasm.shapewrapper_sphere(cx, cy, cz, radius);
|
|
5115
5306
|
return ShapeWrapper.__wrap(ret);
|
|
5116
5307
|
}
|
|
5308
|
+
/**
|
|
5309
|
+
* Create a Pyramid shape
|
|
5310
|
+
* @param {number} bx
|
|
5311
|
+
* @param {number} by
|
|
5312
|
+
* @param {number} bz
|
|
5313
|
+
* @param {number} half_w
|
|
5314
|
+
* @param {number} half_d
|
|
5315
|
+
* @param {number} height
|
|
5316
|
+
* @param {number} ax
|
|
5317
|
+
* @param {number} ay
|
|
5318
|
+
* @param {number} az
|
|
5319
|
+
* @returns {ShapeWrapper}
|
|
5320
|
+
*/
|
|
5321
|
+
static pyramid(bx, by, bz, half_w, half_d, height, ax, ay, az) {
|
|
5322
|
+
const ret = wasm.shapewrapper_pyramid(bx, by, bz, half_w, half_d, height, ax, ay, az);
|
|
5323
|
+
return ShapeWrapper.__wrap(ret);
|
|
5324
|
+
}
|
|
5325
|
+
/**
|
|
5326
|
+
* Create a Cylinder with arbitrary axis
|
|
5327
|
+
* @param {number} bx
|
|
5328
|
+
* @param {number} by
|
|
5329
|
+
* @param {number} bz
|
|
5330
|
+
* @param {number} ax
|
|
5331
|
+
* @param {number} ay
|
|
5332
|
+
* @param {number} az
|
|
5333
|
+
* @param {number} radius
|
|
5334
|
+
* @param {number} height
|
|
5335
|
+
* @returns {ShapeWrapper}
|
|
5336
|
+
*/
|
|
5337
|
+
static cylinder(bx, by, bz, ax, ay, az, radius, height) {
|
|
5338
|
+
const ret = wasm.shapewrapper_cylinder(bx, by, bz, ax, ay, az, radius, height);
|
|
5339
|
+
return ShapeWrapper.__wrap(ret);
|
|
5340
|
+
}
|
|
5341
|
+
/**
|
|
5342
|
+
* Create a filled Triangle shape
|
|
5343
|
+
* @param {number} ax
|
|
5344
|
+
* @param {number} ay
|
|
5345
|
+
* @param {number} az
|
|
5346
|
+
* @param {number} bx
|
|
5347
|
+
* @param {number} by
|
|
5348
|
+
* @param {number} bz
|
|
5349
|
+
* @param {number} cx
|
|
5350
|
+
* @param {number} cy
|
|
5351
|
+
* @param {number} cz
|
|
5352
|
+
* @param {number | null} [thickness]
|
|
5353
|
+
* @returns {ShapeWrapper}
|
|
5354
|
+
*/
|
|
5355
|
+
static triangle(ax, ay, az, bx, by, bz, cx, cy, cz, thickness) {
|
|
5356
|
+
const ret = wasm.shapewrapper_triangle(ax, ay, az, bx, by, bz, cx, cy, cz, !isLikeNone(thickness), isLikeNone(thickness) ? 0 : thickness);
|
|
5357
|
+
return ShapeWrapper.__wrap(ret);
|
|
5358
|
+
}
|
|
5359
|
+
/**
|
|
5360
|
+
* Create an Ellipsoid shape
|
|
5361
|
+
* @param {number} cx
|
|
5362
|
+
* @param {number} cy
|
|
5363
|
+
* @param {number} cz
|
|
5364
|
+
* @param {number} rx
|
|
5365
|
+
* @param {number} ry
|
|
5366
|
+
* @param {number} rz
|
|
5367
|
+
* @returns {ShapeWrapper}
|
|
5368
|
+
*/
|
|
5369
|
+
static ellipsoid(cx, cy, cz, rx, ry, rz) {
|
|
5370
|
+
const ret = wasm.shapewrapper_ellipsoid(cx, cy, cz, rx, ry, rz);
|
|
5371
|
+
return ShapeWrapper.__wrap(ret);
|
|
5372
|
+
}
|
|
5117
5373
|
}
|
|
5118
5374
|
if (Symbol.dispose) ShapeWrapper.prototype[Symbol.dispose] = ShapeWrapper.prototype.free;
|
|
5119
5375
|
|
|
@@ -5806,6 +6062,22 @@ export class WasmBuildingTool {
|
|
|
5806
6062
|
_assertClass(brush, BrushWrapper);
|
|
5807
6063
|
wasm.wasmbuildingtool_fill(schematic.__wbg_ptr, shape.__wbg_ptr, brush.__wbg_ptr);
|
|
5808
6064
|
}
|
|
6065
|
+
/**
|
|
6066
|
+
* Repeat a shape+brush fill at regular offset intervals
|
|
6067
|
+
* @param {SchematicWrapper} schematic
|
|
6068
|
+
* @param {ShapeWrapper} shape
|
|
6069
|
+
* @param {BrushWrapper} brush
|
|
6070
|
+
* @param {number} count
|
|
6071
|
+
* @param {number} offset_x
|
|
6072
|
+
* @param {number} offset_y
|
|
6073
|
+
* @param {number} offset_z
|
|
6074
|
+
*/
|
|
6075
|
+
static rstack(schematic, shape, brush, count, offset_x, offset_y, offset_z) {
|
|
6076
|
+
_assertClass(schematic, SchematicWrapper);
|
|
6077
|
+
_assertClass(shape, ShapeWrapper);
|
|
6078
|
+
_assertClass(brush, BrushWrapper);
|
|
6079
|
+
wasm.wasmbuildingtool_rstack(schematic.__wbg_ptr, shape.__wbg_ptr, brush.__wbg_ptr, count, offset_x, offset_y, offset_z);
|
|
6080
|
+
}
|
|
5809
6081
|
}
|
|
5810
6082
|
if (Symbol.dispose) WasmBuildingTool.prototype[Symbol.dispose] = WasmBuildingTool.prototype.free;
|
|
5811
6083
|
|
|
@@ -6199,6 +6471,7 @@ function __wbg_finalize_init(instance, module) {
|
|
|
6199
6471
|
__wbg_init.__wbindgen_wasm_module = module;
|
|
6200
6472
|
cachedDataViewMemory0 = null;
|
|
6201
6473
|
cachedFloat32ArrayMemory0 = null;
|
|
6474
|
+
cachedFloat64ArrayMemory0 = null;
|
|
6202
6475
|
cachedInt32ArrayMemory0 = null;
|
|
6203
6476
|
cachedUint32ArrayMemory0 = null;
|
|
6204
6477
|
cachedUint8ArrayMemory0 = null;
|
package/nucleation.d.ts
CHANGED
|
@@ -23,11 +23,14 @@ export class BrushWrapper {
|
|
|
23
23
|
private constructor();
|
|
24
24
|
free(): void;
|
|
25
25
|
[Symbol.dispose](): void;
|
|
26
|
+
/**
|
|
27
|
+
* Create a curve gradient brush that interpolates colors along parametric shapes.
|
|
28
|
+
* stops_flat: Flat array [pos1, r1, g1, b1, pos2, r2, g2, b2, ...]
|
|
29
|
+
* Space: 0 = RGB, 1 = Oklab
|
|
30
|
+
*/
|
|
31
|
+
static curveGradient(stops_flat: Float64Array, space?: number | null, palette_filter?: string[] | null): BrushWrapper;
|
|
26
32
|
/**
|
|
27
33
|
* Create a point cloud gradient brush using Inverse Distance Weighting (IDW)
|
|
28
|
-
* positions: Flat array [x1, y1, z1, x2, y2, z2, ...]
|
|
29
|
-
* colors: Flat array [r1, g1, b1, r2, g2, b2, ...]
|
|
30
|
-
* falloff: Power parameter (default 2.0 if None)
|
|
31
34
|
*/
|
|
32
35
|
static point_gradient(positions: Int32Array, colors: Uint8Array, falloff?: number | null, space?: number | null, palette_filter?: string[] | null): BrushWrapper;
|
|
33
36
|
/**
|
|
@@ -41,7 +44,6 @@ export class BrushWrapper {
|
|
|
41
44
|
static bilinear_gradient(ox: number, oy: number, oz: number, ux: number, uy: number, uz: number, vx: number, vy: number, vz: number, r00: number, g00: number, b00: number, r10: number, g10: number, b10: number, r01: number, g01: number, b01: number, r11: number, g11: number, b11: number, space?: number | null, palette_filter?: string[] | null): BrushWrapper;
|
|
42
45
|
/**
|
|
43
46
|
* Create a color brush (matches closest block to RGB color)
|
|
44
|
-
* Palette: optional list of block IDs to restrict matching to.
|
|
45
47
|
*/
|
|
46
48
|
static color(r: number, g: number, b: number, palette_filter?: string[] | null): BrushWrapper;
|
|
47
49
|
/**
|
|
@@ -50,7 +52,6 @@ export class BrushWrapper {
|
|
|
50
52
|
static solid(block_state: string): BrushWrapper;
|
|
51
53
|
/**
|
|
52
54
|
* Create a shaded brush (Lambertian shading)
|
|
53
|
-
* light_dir: [x, y, z] vector
|
|
54
55
|
*/
|
|
55
56
|
static shaded(r: number, g: number, b: number, lx: number, ly: number, lz: number, palette_filter?: string[] | null): BrushWrapper;
|
|
56
57
|
}
|
|
@@ -1392,14 +1393,74 @@ export class ShapeWrapper {
|
|
|
1392
1393
|
private constructor();
|
|
1393
1394
|
free(): void;
|
|
1394
1395
|
[Symbol.dispose](): void;
|
|
1396
|
+
/**
|
|
1397
|
+
* Create a Difference of two shapes (a AND NOT b)
|
|
1398
|
+
*/
|
|
1399
|
+
static difference(a: ShapeWrapper, b: ShapeWrapper): ShapeWrapper;
|
|
1400
|
+
/**
|
|
1401
|
+
* Create an Intersection of two shapes (a AND b)
|
|
1402
|
+
*/
|
|
1403
|
+
static intersection(a: ShapeWrapper, b: ShapeWrapper): ShapeWrapper;
|
|
1404
|
+
/**
|
|
1405
|
+
* Create a Union of two shapes (a OR b)
|
|
1406
|
+
*/
|
|
1407
|
+
static union(a: ShapeWrapper, b: ShapeWrapper): ShapeWrapper;
|
|
1408
|
+
/**
|
|
1409
|
+
* Create a Cylinder between two points
|
|
1410
|
+
*/
|
|
1411
|
+
static cylinderBetween(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number, radius: number): ShapeWrapper;
|
|
1412
|
+
/**
|
|
1413
|
+
* Create a Cone shape
|
|
1414
|
+
*/
|
|
1415
|
+
static cone(ax: number, ay: number, az: number, dx: number, dy: number, dz: number, radius: number, height: number): ShapeWrapper;
|
|
1416
|
+
/**
|
|
1417
|
+
* Create a Disk shape (flat cylinder)
|
|
1418
|
+
*/
|
|
1419
|
+
static disk(cx: number, cy: number, cz: number, radius: number, nx: number, ny: number, nz: number, thickness?: number | null): ShapeWrapper;
|
|
1420
|
+
/**
|
|
1421
|
+
* Create a 3D Line with thickness
|
|
1422
|
+
*/
|
|
1423
|
+
static line(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number, thickness?: number | null): ShapeWrapper;
|
|
1424
|
+
/**
|
|
1425
|
+
* Create a bounded Plane shape
|
|
1426
|
+
*/
|
|
1427
|
+
static plane(ox: number, oy: number, oz: number, ux: number, uy: number, uz: number, vx: number, vy: number, vz: number, u_ext: number, v_ext: number, thickness?: number | null): ShapeWrapper;
|
|
1428
|
+
/**
|
|
1429
|
+
* Create a Torus shape
|
|
1430
|
+
*/
|
|
1431
|
+
static torus(cx: number, cy: number, cz: number, major_r: number, minor_r: number, ax: number, ay: number, az: number): ShapeWrapper;
|
|
1432
|
+
/**
|
|
1433
|
+
* Create a Bezier curve with thickness
|
|
1434
|
+
*/
|
|
1435
|
+
static bezier(control_points_flat: Float64Array, thickness?: number | null, resolution?: number | null): ShapeWrapper;
|
|
1395
1436
|
/**
|
|
1396
1437
|
* Create a new Cuboid shape
|
|
1397
1438
|
*/
|
|
1398
1439
|
static cuboid(min_x: number, min_y: number, min_z: number, max_x: number, max_y: number, max_z: number): ShapeWrapper;
|
|
1440
|
+
/**
|
|
1441
|
+
* Create a Hollow version of any shape
|
|
1442
|
+
*/
|
|
1443
|
+
static hollow(shape: ShapeWrapper, thickness?: number | null): ShapeWrapper;
|
|
1399
1444
|
/**
|
|
1400
1445
|
* Create a new Sphere shape
|
|
1401
1446
|
*/
|
|
1402
1447
|
static sphere(cx: number, cy: number, cz: number, radius: number): ShapeWrapper;
|
|
1448
|
+
/**
|
|
1449
|
+
* Create a Pyramid shape
|
|
1450
|
+
*/
|
|
1451
|
+
static pyramid(bx: number, by: number, bz: number, half_w: number, half_d: number, height: number, ax: number, ay: number, az: number): ShapeWrapper;
|
|
1452
|
+
/**
|
|
1453
|
+
* Create a Cylinder with arbitrary axis
|
|
1454
|
+
*/
|
|
1455
|
+
static cylinder(bx: number, by: number, bz: number, ax: number, ay: number, az: number, radius: number, height: number): ShapeWrapper;
|
|
1456
|
+
/**
|
|
1457
|
+
* Create a filled Triangle shape
|
|
1458
|
+
*/
|
|
1459
|
+
static triangle(ax: number, ay: number, az: number, bx: number, by: number, bz: number, cx: number, cy: number, cz: number, thickness?: number | null): ShapeWrapper;
|
|
1460
|
+
/**
|
|
1461
|
+
* Create an Ellipsoid shape
|
|
1462
|
+
*/
|
|
1463
|
+
static ellipsoid(cx: number, cy: number, cz: number, rx: number, ry: number, rz: number): ShapeWrapper;
|
|
1403
1464
|
}
|
|
1404
1465
|
|
|
1405
1466
|
export class SimulationOptionsWrapper {
|
|
@@ -1654,6 +1715,10 @@ export class WasmBuildingTool {
|
|
|
1654
1715
|
* Apply a brush to a shape on the given schematic
|
|
1655
1716
|
*/
|
|
1656
1717
|
static fill(schematic: SchematicWrapper, shape: ShapeWrapper, brush: BrushWrapper): void;
|
|
1718
|
+
/**
|
|
1719
|
+
* Repeat a shape+brush fill at regular offset intervals
|
|
1720
|
+
*/
|
|
1721
|
+
static rstack(schematic: SchematicWrapper, shape: ShapeWrapper, brush: BrushWrapper, count: number, offset_x: number, offset_y: number, offset_z: number): void;
|
|
1657
1722
|
}
|
|
1658
1723
|
|
|
1659
1724
|
export function debug_json_schematic(schematic: SchematicWrapper): string;
|
|
@@ -1699,6 +1764,7 @@ export interface InitOutput {
|
|
|
1699
1764
|
readonly __wbg_outputconditionwrapper_free: (a: number, b: number) => void;
|
|
1700
1765
|
readonly __wbg_rawmeshexportwrapper_free: (a: number, b: number) => void;
|
|
1701
1766
|
readonly __wbg_resourcepackwrapper_free: (a: number, b: number) => void;
|
|
1767
|
+
readonly __wbg_schematicbuilderwrapper_free: (a: number, b: number) => void;
|
|
1702
1768
|
readonly __wbg_simulationoptionswrapper_free: (a: number, b: number) => void;
|
|
1703
1769
|
readonly __wbg_sortstrategywrapper_free: (a: number, b: number) => void;
|
|
1704
1770
|
readonly __wbg_statemodeconstants_free: (a: number, b: number) => void;
|
|
@@ -1910,6 +1976,12 @@ export interface InitOutput {
|
|
|
1910
1976
|
readonly resourcepackwrapper_namespaces: (a: number) => any;
|
|
1911
1977
|
readonly resourcepackwrapper_new: (a: number, b: number) => [number, number, number];
|
|
1912
1978
|
readonly resourcepackwrapper_textureCount: (a: number) => number;
|
|
1979
|
+
readonly schematicbuilderwrapper_build: (a: number) => [number, number, number];
|
|
1980
|
+
readonly schematicbuilderwrapper_fromTemplate: (a: number, b: number) => [number, number, number];
|
|
1981
|
+
readonly schematicbuilderwrapper_layers: (a: number, b: any) => [number, number, number];
|
|
1982
|
+
readonly schematicbuilderwrapper_map: (a: number, b: number, c: number, d: number) => number;
|
|
1983
|
+
readonly schematicbuilderwrapper_name: (a: number, b: number, c: number) => number;
|
|
1984
|
+
readonly schematicbuilderwrapper_new: () => number;
|
|
1913
1985
|
readonly schematicwrapper_buildGlobalAtlas: (a: number, b: number, c: number) => [number, number, number];
|
|
1914
1986
|
readonly schematicwrapper_chunkMeshIterator: (a: number, b: number, c: number, d: number) => number;
|
|
1915
1987
|
readonly schematicwrapper_chunkMeshIteratorWithAtlas: (a: number, b: number, c: number, d: number, e: number) => number;
|
|
@@ -1977,18 +2049,10 @@ export interface InitOutput {
|
|
|
1977
2049
|
readonly multimeshresultwrapper_meshCount: (a: number) => number;
|
|
1978
2050
|
readonly textureatlaswrapper_height: (a: number) => number;
|
|
1979
2051
|
readonly textureatlaswrapper_width: (a: number) => number;
|
|
1980
|
-
readonly __wbg_blockposition_free: (a: number, b: number) => void;
|
|
1981
2052
|
readonly __wbg_blockstatewrapper_free: (a: number, b: number) => void;
|
|
1982
|
-
readonly __wbg_get_blockposition_x: (a: number) => number;
|
|
1983
|
-
readonly __wbg_get_blockposition_y: (a: number) => number;
|
|
1984
|
-
readonly __wbg_get_blockposition_z: (a: number) => number;
|
|
1985
2053
|
readonly __wbg_lazychunkiterator_free: (a: number, b: number) => void;
|
|
1986
|
-
readonly
|
|
2054
|
+
readonly __wbg_palettemanager_free: (a: number, b: number) => void;
|
|
1987
2055
|
readonly __wbg_schematicwrapper_free: (a: number, b: number) => void;
|
|
1988
|
-
readonly __wbg_set_blockposition_x: (a: number, b: number) => void;
|
|
1989
|
-
readonly __wbg_set_blockposition_y: (a: number, b: number) => void;
|
|
1990
|
-
readonly __wbg_set_blockposition_z: (a: number, b: number) => void;
|
|
1991
|
-
readonly blockposition_new: (a: number, b: number, c: number) => number;
|
|
1992
2056
|
readonly blockstatewrapper_name: (a: number) => [number, number];
|
|
1993
2057
|
readonly blockstatewrapper_new: (a: number, b: number) => number;
|
|
1994
2058
|
readonly blockstatewrapper_properties: (a: number) => any;
|
|
@@ -2001,12 +2065,10 @@ export interface InitOutput {
|
|
|
2001
2065
|
readonly lazychunkiterator_reset: (a: number) => void;
|
|
2002
2066
|
readonly lazychunkiterator_skip_to: (a: number, b: number) => void;
|
|
2003
2067
|
readonly lazychunkiterator_total_chunks: (a: number) => number;
|
|
2004
|
-
readonly
|
|
2005
|
-
readonly
|
|
2006
|
-
readonly
|
|
2007
|
-
readonly
|
|
2008
|
-
readonly schematicbuilderwrapper_name: (a: number, b: number, c: number) => number;
|
|
2009
|
-
readonly schematicbuilderwrapper_new: () => number;
|
|
2068
|
+
readonly palettemanager_getConcreteBlocks: () => [number, number];
|
|
2069
|
+
readonly palettemanager_getPaletteByKeywords: (a: number, b: number) => [number, number];
|
|
2070
|
+
readonly palettemanager_getTerracottaBlocks: () => [number, number];
|
|
2071
|
+
readonly palettemanager_getWoolBlocks: () => [number, number];
|
|
2010
2072
|
readonly schematicwrapper_addDefinitionRegion: (a: number, b: number, c: number, d: number) => void;
|
|
2011
2073
|
readonly schematicwrapper_add_entity: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number];
|
|
2012
2074
|
readonly schematicwrapper_blocks: (a: number) => any;
|
|
@@ -2126,22 +2188,42 @@ export interface InitOutput {
|
|
|
2126
2188
|
readonly start: () => void;
|
|
2127
2189
|
readonly schematicwrapper_updateRegion: (a: number, b: number, c: number, d: number) => void;
|
|
2128
2190
|
readonly __wbg_brushwrapper_free: (a: number, b: number) => void;
|
|
2129
|
-
readonly __wbg_palettemanager_free: (a: number, b: number) => void;
|
|
2130
2191
|
readonly __wbg_shapewrapper_free: (a: number, b: number) => void;
|
|
2131
2192
|
readonly __wbg_wasmbuildingtool_free: (a: number, b: number) => void;
|
|
2132
2193
|
readonly brushwrapper_bilinear_gradient: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number, t: number, u: number, v: number, w: number, x: number) => number;
|
|
2133
2194
|
readonly brushwrapper_color: (a: number, b: number, c: number, d: number, e: number) => number;
|
|
2195
|
+
readonly brushwrapper_curveGradient: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
|
|
2134
2196
|
readonly brushwrapper_linear_gradient: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number) => number;
|
|
2135
2197
|
readonly brushwrapper_point_gradient: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number];
|
|
2136
2198
|
readonly brushwrapper_shaded: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => number;
|
|
2137
2199
|
readonly brushwrapper_solid: (a: number, b: number) => [number, number, number];
|
|
2138
|
-
readonly
|
|
2139
|
-
readonly
|
|
2140
|
-
readonly palettemanager_getTerracottaBlocks: () => [number, number];
|
|
2141
|
-
readonly palettemanager_getWoolBlocks: () => [number, number];
|
|
2200
|
+
readonly shapewrapper_bezier: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
|
|
2201
|
+
readonly shapewrapper_cone: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => number;
|
|
2142
2202
|
readonly shapewrapper_cuboid: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
|
|
2203
|
+
readonly shapewrapper_cylinder: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => number;
|
|
2204
|
+
readonly shapewrapper_cylinderBetween: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => number;
|
|
2205
|
+
readonly shapewrapper_difference: (a: number, b: number) => number;
|
|
2206
|
+
readonly shapewrapper_disk: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => number;
|
|
2207
|
+
readonly shapewrapper_ellipsoid: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
|
|
2208
|
+
readonly shapewrapper_hollow: (a: number, b: number) => number;
|
|
2209
|
+
readonly shapewrapper_intersection: (a: number, b: number) => number;
|
|
2210
|
+
readonly shapewrapper_line: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => number;
|
|
2211
|
+
readonly shapewrapper_plane: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number) => number;
|
|
2212
|
+
readonly shapewrapper_pyramid: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => number;
|
|
2143
2213
|
readonly shapewrapper_sphere: (a: number, b: number, c: number, d: number) => number;
|
|
2214
|
+
readonly shapewrapper_torus: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => number;
|
|
2215
|
+
readonly shapewrapper_triangle: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number) => number;
|
|
2216
|
+
readonly shapewrapper_union: (a: number, b: number) => number;
|
|
2144
2217
|
readonly wasmbuildingtool_fill: (a: number, b: number, c: number) => void;
|
|
2218
|
+
readonly wasmbuildingtool_rstack: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
|
|
2219
|
+
readonly __wbg_blockposition_free: (a: number, b: number) => void;
|
|
2220
|
+
readonly __wbg_get_blockposition_x: (a: number) => number;
|
|
2221
|
+
readonly __wbg_get_blockposition_y: (a: number) => number;
|
|
2222
|
+
readonly __wbg_get_blockposition_z: (a: number) => number;
|
|
2223
|
+
readonly __wbg_set_blockposition_x: (a: number, b: number) => void;
|
|
2224
|
+
readonly __wbg_set_blockposition_y: (a: number, b: number) => void;
|
|
2225
|
+
readonly __wbg_set_blockposition_z: (a: number, b: number) => void;
|
|
2226
|
+
readonly blockposition_new: (a: number, b: number, c: number) => number;
|
|
2145
2227
|
readonly generate_gradient_between_blocks: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => any;
|
|
2146
2228
|
readonly generate_gradient_between_colors: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number) => any;
|
|
2147
2229
|
readonly get_all_colored_blocks: () => any;
|
package/nucleation_bg.wasm
CHANGED
|
Binary file
|