@gausssimplify/wasm 0.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.
- package/README.md +187 -0
- package/dist/base.d.ts +34 -0
- package/dist/base.d.ts.map +1 -0
- package/dist/base.js +92 -0
- package/dist/base.js.map +1 -0
- package/dist/gauss_simplify.node.d.ts +3 -0
- package/dist/gauss_simplify.node.d.ts.map +1 -0
- package/dist/gauss_simplify.node.js +0 -0
- package/dist/gauss_simplify.node.js.map +1 -0
- package/dist/gauss_simplify.web.d.ts +3 -0
- package/dist/gauss_simplify.web.d.ts.map +1 -0
- package/dist/gauss_simplify.web.js +0 -0
- package/dist/gauss_simplify.web.js.map +1 -0
- package/dist/index.node.d.ts +8 -0
- package/dist/index.node.d.ts.map +1 -0
- package/dist/index.node.js +115 -0
- package/dist/index.node.js.map +1 -0
- package/dist/index.web.d.ts +8 -0
- package/dist/index.web.d.ts.map +1 -0
- package/dist/index.web.js +115 -0
- package/dist/index.web.js.map +1 -0
- package/dist/types.d.ts +94 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +5 -0
- package/dist/types.js.map +1 -0
- package/package.json +57 -0
package/README.md
ADDED
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
# @gausssimplify/wasm
|
|
2
|
+
|
|
3
|
+
WebAssembly version of GaussSimplify, providing TypeScript wrapper library for 3D Gaussian Splat simplification in browsers and Node.js.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- Read/write multiple Gaussian splatting formats: PLY, Compressed PLY, Splat, KSplat, SPZ, SOG
|
|
8
|
+
- High-performance simplification via kNN + moment matching
|
|
9
|
+
- Model info retrieval for display
|
|
10
|
+
- TypeScript type support
|
|
11
|
+
- Browser and Node.js compatible
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install @gausssimplify/wasm
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
### Browser
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
import { createGaussSimplify } from '@gausssimplify/wasm';
|
|
25
|
+
|
|
26
|
+
async function simplifyFile(file: File) {
|
|
27
|
+
// Initialize
|
|
28
|
+
const api = await createGaussSimplify();
|
|
29
|
+
|
|
30
|
+
// Read file
|
|
31
|
+
const fileData = await file.arrayBuffer();
|
|
32
|
+
const { data: ir } = await api.read(new Uint8Array(fileData), 'ply');
|
|
33
|
+
console.log(`Loaded ${ir.numPoints} points`);
|
|
34
|
+
|
|
35
|
+
// Get model info for display
|
|
36
|
+
const { data: info } = await api.getModelInfo(ir);
|
|
37
|
+
console.log(`Bounds: ${JSON.stringify(info.bounds)}`);
|
|
38
|
+
|
|
39
|
+
// Simplify to 10%
|
|
40
|
+
const { data: simplified } = await api.simplify(ir, { ratio: 0.1 });
|
|
41
|
+
console.log(`Simplified to ${simplified.numPoints} points`);
|
|
42
|
+
|
|
43
|
+
// Export as .splat
|
|
44
|
+
const { data: output } = await api.write(simplified, 'splat');
|
|
45
|
+
|
|
46
|
+
// Download
|
|
47
|
+
const blob = new Blob([output], { type: 'application/octet-stream' });
|
|
48
|
+
const url = URL.createObjectURL(blob);
|
|
49
|
+
const a = document.createElement('a');
|
|
50
|
+
a.href = url;
|
|
51
|
+
a.download = 'output.splat';
|
|
52
|
+
a.click();
|
|
53
|
+
URL.revokeObjectURL(url);
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Node.js
|
|
58
|
+
|
|
59
|
+
```typescript
|
|
60
|
+
import { createGaussSimplify } from '@gausssimplify/wasm';
|
|
61
|
+
import fs from 'fs';
|
|
62
|
+
|
|
63
|
+
async function simplify() {
|
|
64
|
+
const api = await createGaussSimplify();
|
|
65
|
+
|
|
66
|
+
// Read file
|
|
67
|
+
const inputData = fs.readFileSync('input.ply');
|
|
68
|
+
const { data: ir } = await api.read(inputData, 'ply');
|
|
69
|
+
console.log(`Loaded ${ir.numPoints} points`);
|
|
70
|
+
|
|
71
|
+
// Simplify
|
|
72
|
+
const { data: simplified } = await api.simplify(ir, {
|
|
73
|
+
ratio: 0.1,
|
|
74
|
+
target_sh_degree: 1,
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
// Write output
|
|
78
|
+
const { data: output } = await api.write(simplified, 'splat');
|
|
79
|
+
fs.writeFileSync('output.splat', output);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
simplify().catch(console.error);
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## API
|
|
86
|
+
|
|
87
|
+
### `createGaussSimplify(moduleFactory?)`
|
|
88
|
+
|
|
89
|
+
Create and initialize a GaussSimplify WASM instance (singleton).
|
|
90
|
+
|
|
91
|
+
### `destroyGaussSimplify()`
|
|
92
|
+
|
|
93
|
+
Dispose the WASM instance and free memory.
|
|
94
|
+
|
|
95
|
+
### `api.read(data, format, options?)` → `Promise<ReadResult>`
|
|
96
|
+
|
|
97
|
+
Read file bytes into `GaussianCloudIR`.
|
|
98
|
+
|
|
99
|
+
| Param | Type | Description |
|
|
100
|
+
|-------|------|-------------|
|
|
101
|
+
| `data` | `ArrayBuffer \| Uint8Array` | File content |
|
|
102
|
+
| `format` | `string` | `'ply'`, `'splat'`, `'ksplat'`, `'spz'`, `'sog'` |
|
|
103
|
+
| `options.strict` | `boolean` | Strict validation (default: `false`) |
|
|
104
|
+
|
|
105
|
+
### `api.simplify(ir, options?)` → `Promise<SimplifyResult>`
|
|
106
|
+
|
|
107
|
+
Simplify a `GaussianCloudIR`.
|
|
108
|
+
|
|
109
|
+
| Param | Type | Default | Description |
|
|
110
|
+
|-------|------|---------|-------------|
|
|
111
|
+
| `ratio` | `number` | 0.1 | Target fraction of points to keep |
|
|
112
|
+
| `knn_k` | `number` | 16 | kNN neighbors for merge graph |
|
|
113
|
+
| `merge_cap` | `number` | 0.5 | Max fraction merged per pass |
|
|
114
|
+
| `opacity_prune_threshold` | `number` | 0.1 | Remove gaussians below this opacity |
|
|
115
|
+
| `target_sh_degree` | `number` | -1 | SH degree (-1 = keep original) |
|
|
116
|
+
|
|
117
|
+
### `api.write(ir, format, options?)` → `Promise<WriteResult>`
|
|
118
|
+
|
|
119
|
+
Write `GaussianCloudIR` to file bytes.
|
|
120
|
+
|
|
121
|
+
| Param | Type | Description |
|
|
122
|
+
|-------|------|-------------|
|
|
123
|
+
| `ir` | `GaussianCloudIR` | Gaussian cloud data |
|
|
124
|
+
| `format` | `string` | Output format |
|
|
125
|
+
| `options.strict` | `boolean` | Strict mode (default: `false`) |
|
|
126
|
+
|
|
127
|
+
### `api.getModelInfo(ir)` → `Promise<ModelInfoResult>`
|
|
128
|
+
|
|
129
|
+
Get bounding box, point stats, and size breakdown from an IR.
|
|
130
|
+
|
|
131
|
+
### `api.getSupportedFormats()` → `string[]`
|
|
132
|
+
|
|
133
|
+
Returns: `['ply', 'compressed.ply', 'splat', 'ksplat', 'spz', 'sog']`
|
|
134
|
+
|
|
135
|
+
### `api.getVersion()` → `string`
|
|
136
|
+
|
|
137
|
+
Library version string.
|
|
138
|
+
|
|
139
|
+
## Supported Formats
|
|
140
|
+
|
|
141
|
+
- `ply` — Standard PLY format
|
|
142
|
+
- `compressed.ply` — Compressed PLY format
|
|
143
|
+
- `splat` — Splat format
|
|
144
|
+
- `ksplat` — KSplat format
|
|
145
|
+
- `spz` — SPZ compressed format
|
|
146
|
+
- `sog` — SOG format
|
|
147
|
+
|
|
148
|
+
Powered by [GaussForge](https://github.com/3dgscloud/GaussSimplify).
|
|
149
|
+
|
|
150
|
+
## Development
|
|
151
|
+
|
|
152
|
+
### Build from Source
|
|
153
|
+
|
|
154
|
+
Prerequisites: [Emscripten SDK](https://emscripten.org/docs/getting_started/downloads.html), Node.js 18+
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
cd wasm
|
|
158
|
+
npm install
|
|
159
|
+
npm run build # Build WASM + TypeScript
|
|
160
|
+
npm run build:wasm # Build WASM only
|
|
161
|
+
npm run build:ts # Build TypeScript only
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
### Build Output
|
|
165
|
+
|
|
166
|
+
- `gauss_simplify.node.js` — Node.js WASM module
|
|
167
|
+
- `gauss_simplify.web.js` — Browser/Worker WASM module
|
|
168
|
+
- `dist/index.node.js` — Node.js entry with types
|
|
169
|
+
- `dist/index.web.js` — Browser entry with types
|
|
170
|
+
|
|
171
|
+
## Error Handling
|
|
172
|
+
|
|
173
|
+
All methods may throw errors. Use try-catch for robust handling:
|
|
174
|
+
|
|
175
|
+
```typescript
|
|
176
|
+
try {
|
|
177
|
+
const { data: simplified } = await api.simplify(ir, { ratio: 0.1 });
|
|
178
|
+
} catch (error) {
|
|
179
|
+
console.error('Simplify failed:', error.message);
|
|
180
|
+
}
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
## Requirements
|
|
184
|
+
|
|
185
|
+
- Emscripten SDK (for building WASM)
|
|
186
|
+
- Node.js 18+ (for development)
|
|
187
|
+
- TypeScript 5+ (for development)
|
package/dist/base.d.ts
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GaussSimplify WASM Base Class
|
|
3
|
+
*/
|
|
4
|
+
import type { GaussianCloudIR, SimplifyOptions, ReadResult, WriteResult, SupportedFormat, ReadOptions, WriteOptions, ModelInfoResult } from './types';
|
|
5
|
+
export interface EmscriptenModule {
|
|
6
|
+
GaussSimplifyWASM: new () => GaussSimplifyWASMInstance;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export interface GaussSimplifyWASMInstance {
|
|
10
|
+
read(data: Uint8Array, format: string, strict: boolean): any;
|
|
11
|
+
simplify(ir: any, ratio: number, knn_k: number, merge_cap: number, opacity_prune_threshold: number, target_sh_degree: number): any;
|
|
12
|
+
write(ir: any, format: string, strict: boolean): any;
|
|
13
|
+
getModelInfo(ir: any): any;
|
|
14
|
+
getSupportedFormats(): string[];
|
|
15
|
+
getVersion(): string;
|
|
16
|
+
delete(): void;
|
|
17
|
+
}
|
|
18
|
+
export declare abstract class GaussSimplifyBase {
|
|
19
|
+
protected module: EmscriptenModule | null;
|
|
20
|
+
protected instance: GaussSimplifyWASMInstance | null;
|
|
21
|
+
protected initPromise: Promise<void> | null;
|
|
22
|
+
protected abstract importWasmModule(): Promise<any>;
|
|
23
|
+
init(moduleFactory?: (overrides?: any) => EmscriptenModule): Promise<void>;
|
|
24
|
+
protected ensureInitialized(): void;
|
|
25
|
+
read(data: ArrayBuffer | Uint8Array, format: string, options?: ReadOptions): Promise<ReadResult>;
|
|
26
|
+
simplify(ir: GaussianCloudIR, options?: SimplifyOptions): Promise<ReadResult>;
|
|
27
|
+
write(ir: GaussianCloudIR, format: string, options?: WriteOptions): Promise<WriteResult>;
|
|
28
|
+
getModelInfo(ir: GaussianCloudIR): Promise<ModelInfoResult>;
|
|
29
|
+
getSupportedFormats(): SupportedFormat[];
|
|
30
|
+
getVersion(): string;
|
|
31
|
+
isFormatSupported(format: string): boolean;
|
|
32
|
+
dispose(): void;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../base.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EACR,eAAe,EACf,eAAe,EACf,UAAU,EACV,WAAW,EACX,eAAe,EACf,WAAW,EACX,YAAY,EACZ,eAAe,EAClB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,gBAAgB;IAC7B,iBAAiB,EAAE,UAAU,yBAAyB,CAAC;IACvD,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,MAAM,WAAW,yBAAyB;IACtC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,GAAG,CAAC;IAC7D,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EACxD,uBAAuB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,GAAG,CAAC;IACzE,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,GAAG,CAAC;IACrD,YAAY,CAAC,EAAE,EAAE,GAAG,GAAG,GAAG,CAAC;IAC3B,mBAAmB,IAAI,MAAM,EAAE,CAAC;IAChC,UAAU,IAAI,MAAM,CAAC;IACrB,MAAM,IAAI,IAAI,CAAC;CAClB;AAED,8BAAsB,iBAAiB;IACnC,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IACjD,SAAS,CAAC,QAAQ,EAAE,yBAAyB,GAAG,IAAI,CAAQ;IAC5D,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAQ;IAEnD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC;IAE7C,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,GAAG,KAAK,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BhF,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAI7B,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAWpG,QAAQ,CAAC,EAAE,EAAE,eAAe,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,UAAU,CAAC;IAcjF,KAAK,CAAC,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,WAAW,CAAC;IAO5F,YAAY,CAAC,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAOjE,mBAAmB,IAAI,eAAe,EAAE;IAKxC,UAAU,IAAI,MAAM;IAKpB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAM1C,OAAO,IAAI,IAAI;CAQlB"}
|
package/dist/base.js
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
export class GaussSimplifyBase {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.module = null;
|
|
4
|
+
this.instance = null;
|
|
5
|
+
this.initPromise = null;
|
|
6
|
+
}
|
|
7
|
+
async init(moduleFactory) {
|
|
8
|
+
if (this.initPromise)
|
|
9
|
+
return this.initPromise;
|
|
10
|
+
this.initPromise = (async () => {
|
|
11
|
+
try {
|
|
12
|
+
let moduleInstance;
|
|
13
|
+
if (moduleFactory) {
|
|
14
|
+
moduleInstance = moduleFactory();
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
const createModule = await this.importWasmModule();
|
|
18
|
+
const factory = createModule.default;
|
|
19
|
+
moduleInstance = typeof factory === 'function' ? factory() : factory;
|
|
20
|
+
}
|
|
21
|
+
if (moduleInstance && typeof moduleInstance.then === 'function') {
|
|
22
|
+
moduleInstance = await moduleInstance;
|
|
23
|
+
}
|
|
24
|
+
this.module = moduleInstance;
|
|
25
|
+
this.instance = new this.module.GaussSimplifyWASM();
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
this.initPromise = null;
|
|
29
|
+
throw new Error(`GaussSimplify Init Failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
30
|
+
}
|
|
31
|
+
})();
|
|
32
|
+
return this.initPromise;
|
|
33
|
+
}
|
|
34
|
+
ensureInitialized() {
|
|
35
|
+
if (!this.instance)
|
|
36
|
+
throw new Error('GaussSimplify not initialized. Call init() first.');
|
|
37
|
+
}
|
|
38
|
+
async read(data, format, options = {}) {
|
|
39
|
+
this.ensureInitialized();
|
|
40
|
+
const input = data instanceof ArrayBuffer ? new Uint8Array(data) : data;
|
|
41
|
+
const result = this.instance.read(input, format, options.strict || false);
|
|
42
|
+
if (result.error)
|
|
43
|
+
throw new Error(result.error);
|
|
44
|
+
return {
|
|
45
|
+
data: result.data,
|
|
46
|
+
...(result.warning && { warning: result.warning }),
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
async simplify(ir, options = {}) {
|
|
50
|
+
this.ensureInitialized();
|
|
51
|
+
const result = this.instance.simplify(ir, options.ratio ?? 0.1, options.knn_k ?? 16, options.merge_cap ?? 0.5, options.opacity_prune_threshold ?? 0.1, options.target_sh_degree ?? -1);
|
|
52
|
+
if (result.error)
|
|
53
|
+
throw new Error(result.error);
|
|
54
|
+
return { data: result.data };
|
|
55
|
+
}
|
|
56
|
+
async write(ir, format, options = {}) {
|
|
57
|
+
this.ensureInitialized();
|
|
58
|
+
const result = this.instance.write(ir, format, options.strict || false);
|
|
59
|
+
if (result.error)
|
|
60
|
+
throw new Error(result.error);
|
|
61
|
+
return { data: result.data };
|
|
62
|
+
}
|
|
63
|
+
async getModelInfo(ir) {
|
|
64
|
+
this.ensureInitialized();
|
|
65
|
+
const result = this.instance.getModelInfo(ir);
|
|
66
|
+
if (result.error)
|
|
67
|
+
throw new Error(result.error);
|
|
68
|
+
return { data: result.data };
|
|
69
|
+
}
|
|
70
|
+
getSupportedFormats() {
|
|
71
|
+
this.ensureInitialized();
|
|
72
|
+
return this.instance.getSupportedFormats();
|
|
73
|
+
}
|
|
74
|
+
getVersion() {
|
|
75
|
+
this.ensureInitialized();
|
|
76
|
+
return this.instance.getVersion();
|
|
77
|
+
}
|
|
78
|
+
isFormatSupported(format) {
|
|
79
|
+
this.ensureInitialized();
|
|
80
|
+
const formats = this.getSupportedFormats();
|
|
81
|
+
return formats.includes(format);
|
|
82
|
+
}
|
|
83
|
+
dispose() {
|
|
84
|
+
if (this.instance) {
|
|
85
|
+
this.instance.delete();
|
|
86
|
+
this.instance = null;
|
|
87
|
+
}
|
|
88
|
+
this.module = null;
|
|
89
|
+
this.initPromise = null;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=base.js.map
|
package/dist/base.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../base.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gauss_simplify.node.d.ts","sourceRoot":"","sources":["../gauss_simplify.node.js"],"names":[],"mappings":";AAAA,wEACkB"}
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gauss_simplify.node.js","sourceRoot":"","sources":["../gauss_simplify.node.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gauss_simplify.web.d.ts","sourceRoot":"","sources":["../gauss_simplify.web.js"],"names":[],"mappings":";AAAA,wEACkB"}
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gauss_simplify.web.js","sourceRoot":"","sources":["../gauss_simplify.web.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { GaussSimplifyBase } from './base';
|
|
2
|
+
export * from './types';
|
|
3
|
+
export declare class GaussSimplify extends GaussSimplifyBase {
|
|
4
|
+
protected importWasmModule(): Promise<typeof import("./gauss_simplify.node.js")>;
|
|
5
|
+
}
|
|
6
|
+
export declare function createGaussSimplify(factory?: any): Promise<GaussSimplify>;
|
|
7
|
+
export declare function destroyGaussSimplify(): void;
|
|
8
|
+
//# sourceMappingURL=index.node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.node.d.ts","sourceRoot":"","sources":["../index.node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,cAAc,SAAS,CAAC;AAExB,qBAAa,aAAc,SAAQ,iBAAiB;cAChC,gBAAgB;CAInC;AAGD,wBAAsB,mBAAmB,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,CAM/E;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAK3C"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
class GaussSimplifyBase {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.module = null;
|
|
4
|
+
this.instance = null;
|
|
5
|
+
this.initPromise = null;
|
|
6
|
+
}
|
|
7
|
+
async init(moduleFactory) {
|
|
8
|
+
if (this.initPromise)
|
|
9
|
+
return this.initPromise;
|
|
10
|
+
this.initPromise = (async () => {
|
|
11
|
+
try {
|
|
12
|
+
let moduleInstance;
|
|
13
|
+
if (moduleFactory) {
|
|
14
|
+
moduleInstance = moduleFactory();
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
const createModule = await this.importWasmModule();
|
|
18
|
+
const factory = createModule.default;
|
|
19
|
+
moduleInstance = typeof factory === 'function' ? factory() : factory;
|
|
20
|
+
}
|
|
21
|
+
if (moduleInstance && typeof moduleInstance.then === 'function') {
|
|
22
|
+
moduleInstance = await moduleInstance;
|
|
23
|
+
}
|
|
24
|
+
this.module = moduleInstance;
|
|
25
|
+
this.instance = new this.module.GaussSimplifyWASM();
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
this.initPromise = null;
|
|
29
|
+
throw new Error(`GaussSimplify Init Failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
30
|
+
}
|
|
31
|
+
})();
|
|
32
|
+
return this.initPromise;
|
|
33
|
+
}
|
|
34
|
+
ensureInitialized() {
|
|
35
|
+
if (!this.instance)
|
|
36
|
+
throw new Error('GaussSimplify not initialized. Call init() first.');
|
|
37
|
+
}
|
|
38
|
+
async read(data, format, options = {}) {
|
|
39
|
+
this.ensureInitialized();
|
|
40
|
+
const input = data instanceof ArrayBuffer ? new Uint8Array(data) : data;
|
|
41
|
+
const result = this.instance.read(input, format, options.strict || false);
|
|
42
|
+
if (result.error)
|
|
43
|
+
throw new Error(result.error);
|
|
44
|
+
return {
|
|
45
|
+
data: result.data,
|
|
46
|
+
...(result.warning && { warning: result.warning }),
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
async simplify(ir, options = {}) {
|
|
50
|
+
this.ensureInitialized();
|
|
51
|
+
const result = this.instance.simplify(ir, options.ratio ?? 0.1, options.knn_k ?? 16, options.merge_cap ?? 0.5, options.opacity_prune_threshold ?? 0.1, options.target_sh_degree ?? -1);
|
|
52
|
+
if (result.error)
|
|
53
|
+
throw new Error(result.error);
|
|
54
|
+
return { data: result.data };
|
|
55
|
+
}
|
|
56
|
+
async write(ir, format, options = {}) {
|
|
57
|
+
this.ensureInitialized();
|
|
58
|
+
const result = this.instance.write(ir, format, options.strict || false);
|
|
59
|
+
if (result.error)
|
|
60
|
+
throw new Error(result.error);
|
|
61
|
+
return { data: result.data };
|
|
62
|
+
}
|
|
63
|
+
async getModelInfo(ir) {
|
|
64
|
+
this.ensureInitialized();
|
|
65
|
+
const result = this.instance.getModelInfo(ir);
|
|
66
|
+
if (result.error)
|
|
67
|
+
throw new Error(result.error);
|
|
68
|
+
return { data: result.data };
|
|
69
|
+
}
|
|
70
|
+
getSupportedFormats() {
|
|
71
|
+
this.ensureInitialized();
|
|
72
|
+
return this.instance.getSupportedFormats();
|
|
73
|
+
}
|
|
74
|
+
getVersion() {
|
|
75
|
+
this.ensureInitialized();
|
|
76
|
+
return this.instance.getVersion();
|
|
77
|
+
}
|
|
78
|
+
isFormatSupported(format) {
|
|
79
|
+
this.ensureInitialized();
|
|
80
|
+
const formats = this.getSupportedFormats();
|
|
81
|
+
return formats.includes(format);
|
|
82
|
+
}
|
|
83
|
+
dispose() {
|
|
84
|
+
if (this.instance) {
|
|
85
|
+
this.instance.delete();
|
|
86
|
+
this.instance = null;
|
|
87
|
+
}
|
|
88
|
+
this.module = null;
|
|
89
|
+
this.initPromise = null;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
class GaussSimplify extends GaussSimplifyBase {
|
|
94
|
+
async importWasmModule() {
|
|
95
|
+
// @ts-ignore
|
|
96
|
+
return import('./gauss_simplify.node.js');
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
let _instance = null;
|
|
100
|
+
async function createGaussSimplify(factory) {
|
|
101
|
+
if (!_instance) {
|
|
102
|
+
_instance = new GaussSimplify();
|
|
103
|
+
await _instance.init(factory);
|
|
104
|
+
}
|
|
105
|
+
return _instance;
|
|
106
|
+
}
|
|
107
|
+
function destroyGaussSimplify() {
|
|
108
|
+
if (_instance) {
|
|
109
|
+
_instance.dispose();
|
|
110
|
+
_instance = null;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export { GaussSimplify, createGaussSimplify, destroyGaussSimplify };
|
|
115
|
+
//# sourceMappingURL=index.node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.node.js","sources":["../../base.ts","../../index.node.ts"],"sourcesContent":[null,null],"names":[],"mappings":"MA8BsB,iBAAiB,CAAA;AAAvC,IAAA,WAAA,GAAA;QACc,IAAA,CAAA,MAAM,GAA4B,IAAI;QACtC,IAAA,CAAA,QAAQ,GAAqC,IAAI;QACjD,IAAA,CAAA,WAAW,GAAyB,IAAI;IAqGtD;IAjGI,MAAM,IAAI,CAAC,aAAqD,EAAA;QAC5D,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC,WAAW;AAE7C,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,YAAW;AAC3B,YAAA,IAAI;AACA,gBAAA,IAAI,cAAmB;gBACvB,IAAI,aAAa,EAAE;oBACf,cAAc,GAAG,aAAa,EAAE;gBACpC;qBAAO;AACH,oBAAA,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE;AAClD,oBAAA,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO;AACpC,oBAAA,cAAc,GAAG,OAAO,OAAO,KAAK,UAAU,GAAG,OAAO,EAAE,GAAG,OAAO;gBACxE;gBAEA,IAAI,cAAc,IAAI,OAAO,cAAc,CAAC,IAAI,KAAK,UAAU,EAAE;oBAC7D,cAAc,GAAG,MAAM,cAAc;gBACzC;AAEA,gBAAA,IAAI,CAAC,MAAM,GAAG,cAAkC;gBAChD,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE;YACvD;YAAE,OAAO,KAAK,EAAE;AACZ,gBAAA,IAAI,CAAC,WAAW,GAAG,IAAI;gBACvB,MAAM,IAAI,KAAK,CACX,CAAA,2BAAA,EAA8B,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA,CAAE,CACzF;YACL;QACJ,CAAC,GAAG;QACJ,OAAO,IAAI,CAAC,WAAW;IAC3B;IAEU,iBAAiB,GAAA;QACvB,IAAI,CAAC,IAAI,CAAC,QAAQ;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC;IAC5F;IAEA,MAAM,IAAI,CAAC,IAA8B,EAAE,MAAc,EAAE,UAAuB,EAAE,EAAA;QAChF,IAAI,CAAC,iBAAiB,EAAE;AACxB,QAAA,MAAM,KAAK,GAAG,IAAI,YAAY,WAAW,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;AACvE,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,QAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC;QAC1E,IAAI,MAAM,CAAC,KAAK;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/C,OAAO;YACH,IAAI,EAAE,MAAM,CAAC,IAAI;AACjB,YAAA,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;SACvC;IACnB;AAEA,IAAA,MAAM,QAAQ,CAAC,EAAmB,EAAE,UAA2B,EAAE,EAAA;QAC7D,IAAI,CAAC,iBAAiB,EAAE;AACxB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,QAAS,CAAC,QAAQ,CAClC,EAAE,EACF,OAAO,CAAC,KAAK,IAAI,GAAG,EACpB,OAAO,CAAC,KAAK,IAAI,EAAE,EACnB,OAAO,CAAC,SAAS,IAAI,GAAG,EACxB,OAAO,CAAC,uBAAuB,IAAI,GAAG,EACtC,OAAO,CAAC,gBAAgB,IAAI,EAAE,CACjC;QACD,IAAI,MAAM,CAAC,KAAK;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AAC/C,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAgB;IAC9C;IAEA,MAAM,KAAK,CAAC,EAAmB,EAAE,MAAc,EAAE,UAAwB,EAAE,EAAA;QACvE,IAAI,CAAC,iBAAiB,EAAE;AACxB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,QAAS,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC;QACxE,IAAI,MAAM,CAAC,KAAK;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AAC/C,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAiB;IAC/C;IAEA,MAAM,YAAY,CAAC,EAAmB,EAAA;QAClC,IAAI,CAAC,iBAAiB,EAAE;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAS,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9C,IAAI,MAAM,CAAC,KAAK;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AAC/C,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAqB;IACnD;IAEA,mBAAmB,GAAA;QACf,IAAI,CAAC,iBAAiB,EAAE;AACxB,QAAA,OAAO,IAAI,CAAC,QAAS,CAAC,mBAAmB,EAAuB;IACpE;IAEA,UAAU,GAAA;QACN,IAAI,CAAC,iBAAiB,EAAE;AACxB,QAAA,OAAO,IAAI,CAAC,QAAS,CAAC,UAAU,EAAE;IACtC;AAEA,IAAA,iBAAiB,CAAC,MAAc,EAAA;QAC5B,IAAI,CAAC,iBAAiB,EAAE;AACxB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE;AAC1C,QAAA,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAyB,CAAC;IACtD;IAEA,OAAO,GAAA;AACH,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,YAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;AACtB,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;QACxB;AACA,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI;IAC3B;AACH;;ACnIK,MAAO,aAAc,SAAQ,iBAAiB,CAAA;AACtC,IAAA,MAAM,gBAAgB,GAAA;;AAE5B,QAAA,OAAO,OAAO,0BAA0B,CAAC;IAC7C;AACH;AAED,IAAI,SAAS,GAAyB,IAAI;AACnC,eAAe,mBAAmB,CAAC,OAAa,EAAA;IACnD,IAAI,CAAC,SAAS,EAAE;AACZ,QAAA,SAAS,GAAG,IAAI,aAAa,EAAE;AAC/B,QAAA,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;IACjC;AACA,IAAA,OAAO,SAAS;AACpB;SAEgB,oBAAoB,GAAA;IAChC,IAAI,SAAS,EAAE;QACX,SAAS,CAAC,OAAO,EAAE;QACnB,SAAS,GAAG,IAAI;IACpB;AACJ;;;;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { GaussSimplifyBase } from './base';
|
|
2
|
+
export * from './types';
|
|
3
|
+
export declare class GaussSimplify extends GaussSimplifyBase {
|
|
4
|
+
protected importWasmModule(): Promise<typeof import("./gauss_simplify.web.js")>;
|
|
5
|
+
}
|
|
6
|
+
export declare function createGaussSimplify(factory?: any): Promise<GaussSimplify>;
|
|
7
|
+
export declare function destroyGaussSimplify(): void;
|
|
8
|
+
//# sourceMappingURL=index.web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../index.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,cAAc,SAAS,CAAC;AAExB,qBAAa,aAAc,SAAQ,iBAAiB;cAChC,gBAAgB;CAInC;AAGD,wBAAsB,mBAAmB,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,CAM/E;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAK3C"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
class GaussSimplifyBase {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.module = null;
|
|
4
|
+
this.instance = null;
|
|
5
|
+
this.initPromise = null;
|
|
6
|
+
}
|
|
7
|
+
async init(moduleFactory) {
|
|
8
|
+
if (this.initPromise)
|
|
9
|
+
return this.initPromise;
|
|
10
|
+
this.initPromise = (async () => {
|
|
11
|
+
try {
|
|
12
|
+
let moduleInstance;
|
|
13
|
+
if (moduleFactory) {
|
|
14
|
+
moduleInstance = moduleFactory();
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
const createModule = await this.importWasmModule();
|
|
18
|
+
const factory = createModule.default;
|
|
19
|
+
moduleInstance = typeof factory === 'function' ? factory() : factory;
|
|
20
|
+
}
|
|
21
|
+
if (moduleInstance && typeof moduleInstance.then === 'function') {
|
|
22
|
+
moduleInstance = await moduleInstance;
|
|
23
|
+
}
|
|
24
|
+
this.module = moduleInstance;
|
|
25
|
+
this.instance = new this.module.GaussSimplifyWASM();
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
this.initPromise = null;
|
|
29
|
+
throw new Error(`GaussSimplify Init Failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
30
|
+
}
|
|
31
|
+
})();
|
|
32
|
+
return this.initPromise;
|
|
33
|
+
}
|
|
34
|
+
ensureInitialized() {
|
|
35
|
+
if (!this.instance)
|
|
36
|
+
throw new Error('GaussSimplify not initialized. Call init() first.');
|
|
37
|
+
}
|
|
38
|
+
async read(data, format, options = {}) {
|
|
39
|
+
this.ensureInitialized();
|
|
40
|
+
const input = data instanceof ArrayBuffer ? new Uint8Array(data) : data;
|
|
41
|
+
const result = this.instance.read(input, format, options.strict || false);
|
|
42
|
+
if (result.error)
|
|
43
|
+
throw new Error(result.error);
|
|
44
|
+
return {
|
|
45
|
+
data: result.data,
|
|
46
|
+
...(result.warning && { warning: result.warning }),
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
async simplify(ir, options = {}) {
|
|
50
|
+
this.ensureInitialized();
|
|
51
|
+
const result = this.instance.simplify(ir, options.ratio ?? 0.1, options.knn_k ?? 16, options.merge_cap ?? 0.5, options.opacity_prune_threshold ?? 0.1, options.target_sh_degree ?? -1);
|
|
52
|
+
if (result.error)
|
|
53
|
+
throw new Error(result.error);
|
|
54
|
+
return { data: result.data };
|
|
55
|
+
}
|
|
56
|
+
async write(ir, format, options = {}) {
|
|
57
|
+
this.ensureInitialized();
|
|
58
|
+
const result = this.instance.write(ir, format, options.strict || false);
|
|
59
|
+
if (result.error)
|
|
60
|
+
throw new Error(result.error);
|
|
61
|
+
return { data: result.data };
|
|
62
|
+
}
|
|
63
|
+
async getModelInfo(ir) {
|
|
64
|
+
this.ensureInitialized();
|
|
65
|
+
const result = this.instance.getModelInfo(ir);
|
|
66
|
+
if (result.error)
|
|
67
|
+
throw new Error(result.error);
|
|
68
|
+
return { data: result.data };
|
|
69
|
+
}
|
|
70
|
+
getSupportedFormats() {
|
|
71
|
+
this.ensureInitialized();
|
|
72
|
+
return this.instance.getSupportedFormats();
|
|
73
|
+
}
|
|
74
|
+
getVersion() {
|
|
75
|
+
this.ensureInitialized();
|
|
76
|
+
return this.instance.getVersion();
|
|
77
|
+
}
|
|
78
|
+
isFormatSupported(format) {
|
|
79
|
+
this.ensureInitialized();
|
|
80
|
+
const formats = this.getSupportedFormats();
|
|
81
|
+
return formats.includes(format);
|
|
82
|
+
}
|
|
83
|
+
dispose() {
|
|
84
|
+
if (this.instance) {
|
|
85
|
+
this.instance.delete();
|
|
86
|
+
this.instance = null;
|
|
87
|
+
}
|
|
88
|
+
this.module = null;
|
|
89
|
+
this.initPromise = null;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
class GaussSimplify extends GaussSimplifyBase {
|
|
94
|
+
async importWasmModule() {
|
|
95
|
+
// @ts-ignore
|
|
96
|
+
return import('./gauss_simplify.web.js');
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
let _instance = null;
|
|
100
|
+
async function createGaussSimplify(factory) {
|
|
101
|
+
if (!_instance) {
|
|
102
|
+
_instance = new GaussSimplify();
|
|
103
|
+
await _instance.init(factory);
|
|
104
|
+
}
|
|
105
|
+
return _instance;
|
|
106
|
+
}
|
|
107
|
+
function destroyGaussSimplify() {
|
|
108
|
+
if (_instance) {
|
|
109
|
+
_instance.dispose();
|
|
110
|
+
_instance = null;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export { GaussSimplify, createGaussSimplify, destroyGaussSimplify };
|
|
115
|
+
//# sourceMappingURL=index.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.web.js","sources":["../../base.ts","../../index.web.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TypeScript type definitions for @gausssimplify/wasm
|
|
3
|
+
*/
|
|
4
|
+
export interface GaussMetadata {
|
|
5
|
+
shDegree: number;
|
|
6
|
+
sourceFormat?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface GaussianCloudIR {
|
|
9
|
+
numPoints: number;
|
|
10
|
+
positions: Float32Array;
|
|
11
|
+
scales: Float32Array;
|
|
12
|
+
rotations: Float32Array;
|
|
13
|
+
alphas: Float32Array;
|
|
14
|
+
colors: Float32Array;
|
|
15
|
+
sh: Float32Array;
|
|
16
|
+
extras: Record<string, Float32Array>;
|
|
17
|
+
meta: GaussMetadata;
|
|
18
|
+
}
|
|
19
|
+
export interface SimplifyOptions {
|
|
20
|
+
ratio?: number;
|
|
21
|
+
knn_k?: number;
|
|
22
|
+
merge_cap?: number;
|
|
23
|
+
opacity_prune_threshold?: number;
|
|
24
|
+
target_sh_degree?: number;
|
|
25
|
+
}
|
|
26
|
+
export interface ReadResult {
|
|
27
|
+
data: GaussianCloudIR;
|
|
28
|
+
warning?: string;
|
|
29
|
+
error?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface SimplifyResult {
|
|
32
|
+
data: GaussianCloudIR;
|
|
33
|
+
error?: string;
|
|
34
|
+
}
|
|
35
|
+
export interface WriteResult {
|
|
36
|
+
data: Uint8Array;
|
|
37
|
+
error?: string;
|
|
38
|
+
}
|
|
39
|
+
export type SupportedFormat = 'ply' | 'compressed.ply' | 'splat' | 'ksplat' | 'spz' | 'sog';
|
|
40
|
+
export interface ReadOptions {
|
|
41
|
+
strict?: boolean;
|
|
42
|
+
}
|
|
43
|
+
export interface WriteOptions {
|
|
44
|
+
strict?: boolean;
|
|
45
|
+
}
|
|
46
|
+
export interface FloatStats {
|
|
47
|
+
min: number;
|
|
48
|
+
max: number;
|
|
49
|
+
avg: number;
|
|
50
|
+
}
|
|
51
|
+
export interface BoundingBox {
|
|
52
|
+
x: [number, number];
|
|
53
|
+
y: [number, number];
|
|
54
|
+
z: [number, number];
|
|
55
|
+
}
|
|
56
|
+
export interface ModelInfoBasic {
|
|
57
|
+
numPoints: number;
|
|
58
|
+
fileSize?: number;
|
|
59
|
+
sourceFormat?: string;
|
|
60
|
+
}
|
|
61
|
+
export interface ModelInfoRendering {
|
|
62
|
+
shDegree: number;
|
|
63
|
+
antialiased: boolean;
|
|
64
|
+
}
|
|
65
|
+
export interface ModelInfoMeta {
|
|
66
|
+
handedness: string;
|
|
67
|
+
upAxis: string;
|
|
68
|
+
unit: string;
|
|
69
|
+
colorSpace: string;
|
|
70
|
+
}
|
|
71
|
+
export interface ModelInfoSizes {
|
|
72
|
+
positions: string;
|
|
73
|
+
scales: string;
|
|
74
|
+
rotations: string;
|
|
75
|
+
alphas: string;
|
|
76
|
+
colors: string;
|
|
77
|
+
sh: string;
|
|
78
|
+
total: string;
|
|
79
|
+
}
|
|
80
|
+
export interface ModelInfo {
|
|
81
|
+
basic: ModelInfoBasic;
|
|
82
|
+
rendering: ModelInfoRendering;
|
|
83
|
+
meta: ModelInfoMeta;
|
|
84
|
+
bounds?: BoundingBox;
|
|
85
|
+
scaleStats?: FloatStats;
|
|
86
|
+
alphaStats?: FloatStats;
|
|
87
|
+
sizes: ModelInfoSizes;
|
|
88
|
+
extraAttrs?: Record<string, string>;
|
|
89
|
+
}
|
|
90
|
+
export interface ModelInfoResult {
|
|
91
|
+
data: ModelInfo;
|
|
92
|
+
error?: string;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,EAAE,EAAE,YAAY,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACrC,IAAI,EAAE,aAAa,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,gBAAgB,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;AAE5F,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAGD,MAAM,WAAW,UAAU;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IACxB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACtB,KAAK,EAAE,cAAc,CAAC;IACtB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
package/package.json
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@gausssimplify/wasm",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"description": "GaussSimplify WASM library for 3D Gaussian Splat simplification",
|
|
6
|
+
"main": "dist/index.web.js",
|
|
7
|
+
"types": "dist/index.web.d.ts",
|
|
8
|
+
"module": "dist/index.web.js",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"browser": "./dist/index.web.js",
|
|
12
|
+
"node": "./dist/index.node.js",
|
|
13
|
+
"import": "./dist/index.web.js",
|
|
14
|
+
"require": "./dist/index.node.js",
|
|
15
|
+
"types": "./dist/index.d.ts"
|
|
16
|
+
},
|
|
17
|
+
"./package.json": "./package.json"
|
|
18
|
+
},
|
|
19
|
+
"files": [
|
|
20
|
+
"dist",
|
|
21
|
+
"README.md"
|
|
22
|
+
],
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build": "npm run build:wasm && npm run build:ts",
|
|
25
|
+
"build:wasm": "node build-wasm.js",
|
|
26
|
+
"build:ts": "tsc && rollup -c",
|
|
27
|
+
"prepublishOnly": "npm run build"
|
|
28
|
+
},
|
|
29
|
+
"publishConfig": {
|
|
30
|
+
"access": "public"
|
|
31
|
+
},
|
|
32
|
+
"keywords": [
|
|
33
|
+
"gaussian-splatting",
|
|
34
|
+
"3d",
|
|
35
|
+
"point-cloud",
|
|
36
|
+
"simplification",
|
|
37
|
+
"wasm"
|
|
38
|
+
],
|
|
39
|
+
"author": "tcodestudio",
|
|
40
|
+
"license": "GPL-3.0",
|
|
41
|
+
"devDependencies": {
|
|
42
|
+
"@rollup/plugin-typescript": "^11.1.5",
|
|
43
|
+
"@types/node": "^20.10.0",
|
|
44
|
+
"rollup": "^4.6.0",
|
|
45
|
+
"tslib": "^2.8.1",
|
|
46
|
+
"typescript": "^5.3.3"
|
|
47
|
+
},
|
|
48
|
+
"repository": {
|
|
49
|
+
"type": "git",
|
|
50
|
+
"url": "git+https://github.com/3dgscloud/GaussSimplify.git",
|
|
51
|
+
"directory": "wasm"
|
|
52
|
+
},
|
|
53
|
+
"bugs": {
|
|
54
|
+
"url": "https://github.com/3dgscloud/GaussSimplify/issues"
|
|
55
|
+
},
|
|
56
|
+
"homepage": "https://github.com/3dgscloud/GaussSimplify"
|
|
57
|
+
}
|