| { | { | ||||
| "name": "@threepipe/plugin-gaussian-splatting", | "name": "@threepipe/plugin-gaussian-splatting", | ||||
| "version": "0.1.0", | |||||
| "version": "0.2.0", | |||||
| "lockfileVersion": 3, | "lockfileVersion": 3, | ||||
| "requires": true, | "requires": true, | ||||
| "packages": { | "packages": { | ||||
| "": { | "": { | ||||
| "name": "@threepipe/plugin-gaussian-splatting", | "name": "@threepipe/plugin-gaussian-splatting", | ||||
| "version": "0.1.0", | |||||
| "version": "0.2.0", | |||||
| "license": "Apache-2.0", | "license": "Apache-2.0", | ||||
| "dependencies": { | "dependencies": { | ||||
| "threepipe": "file:./../../src/" | "threepipe": "file:./../../src/" |
| { | { | ||||
| "name": "@threepipe/plugin-gaussian-splatting", | "name": "@threepipe/plugin-gaussian-splatting", | ||||
| "description": "Gaussian Splatting for Threepipe", | "description": "Gaussian Splatting for Threepipe", | ||||
| "version": "0.1.0", | |||||
| "version": "0.2.1", | |||||
| "devDependencies": { | "devDependencies": { | ||||
| "comlink": "^4.4.1", | "comlink": "^4.4.1", | ||||
| "@types/emscripten": "^1.39.10" | "@types/emscripten": "^1.39.10" | ||||
| "markdown-to-html" | "markdown-to-html" | ||||
| ], | ], | ||||
| "replace": { | "replace": { | ||||
| "dependencies": { | |||||
| "dependencies": {}, | |||||
| "peerDependencies": { | |||||
| "threepipe": "^0.0.23" | "threepipe": "^0.0.23" | ||||
| } | } | ||||
| } | } | ||||
| "scripts": { | "scripts": { | ||||
| "new:pack": "npm run prepare && clean-package && npm pack && clean-package restore", | "new:pack": "npm run prepare && clean-package && npm pack && clean-package restore", | ||||
| "new:publish": "npm run prepare && clean-package && npm publish --access public && clean-package restore", | "new:publish": "npm run prepare && clean-package && npm publish --access public && clean-package restore", | ||||
| "prepare": "npm run build", | |||||
| "prepare": "npm run build && npm run docs", | |||||
| "build": "rimraf dist && vite build", | "build": "rimraf dist && vite build", | ||||
| "dev": "NODE_ENV=development vite build --watch", | "dev": "NODE_ENV=development vite build --watch", | ||||
| "docs": "rimraf docs && npx typedoc" | "docs": "rimraf docs && npx typedoc" | ||||
| "homepage": "https://github.com/repalash/threepipe#readme", | "homepage": "https://github.com/repalash/threepipe#readme", | ||||
| "repository": { | "repository": { | ||||
| "type": "git", | "type": "git", | ||||
| "url": "git://github.com/repalash/threepipe.git" | |||||
| "url": "git://github.com/repalash/threepipe.git", | |||||
| "directory": "plugins/gaussian-splatting" | |||||
| } | } | ||||
| } | } |
| private _ready = false | private _ready = false | ||||
| onAdded(viewer: ThreeViewer) { | onAdded(viewer: ThreeViewer) { | ||||
| super.onAdded(viewer) | super.onAdded(viewer) | ||||
| createStyles(styles) | |||||
| createStyles(styles, viewer.container) | |||||
| viewer.assetManager.importer.addImporter(this._importer) | viewer.assetManager.importer.addImporter(this._importer) | ||||
| viewer.scene.addEventListener('mainCameraUpdate', this._activeCameraUpdate) | viewer.scene.addEventListener('mainCameraUpdate', this._activeCameraUpdate) | ||||
| viewer.scene.addEventListener('geometryUpdate', this._geometryUpdate) | viewer.scene.addEventListener('geometryUpdate', this._geometryUpdate) |
| import {Remote, transfer, wrap} from 'comlink' | import {Remote, transfer, wrap} from 'comlink' | ||||
| // @ts-expect-error query param | |||||
| import WasmSorterWorker from './worker?worker&inline' | |||||
| import type {WasmSorter} from './worker' | import type {WasmSorter} from './worker' | ||||
| export const SPLAT_ROW_LENGTH = 3 * 4 + 3 * 4 + 4 + 4 | export const SPLAT_ROW_LENGTH = 3 * 4 + 3 * 4 + 4 + 4 | ||||
| } | } | ||||
| constructor() { | constructor() { | ||||
| const worker = new Worker(new URL('../cpp-sorter/worker', import.meta.url), {type: 'module'}) | |||||
| const worker = new WasmSorterWorker() | |||||
| worker.addEventListener('error', this.onError, false) | worker.addEventListener('error', this.onError, false) | ||||
| this._workerCtor = wrap(worker) as any | this._workerCtor = wrap(worker) as any | ||||
| } | } |