UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

42 lines (41 loc) 1.15 kB
"use strict"; import { ExporterSopNode, BaseExporterSopParamsConfig } from "./_BaseExporter"; import { PLYExporter } from "three/examples/jsm/exporters/PLYExporter"; import { SopExporter } from "../../poly/registers/nodes/types/Sop"; class ExporterPLYSopParamsConfig extends BaseExporterSopParamsConfig { } const ParamsConfig = new ExporterPLYSopParamsConfig(); export class ExporterPLYSopNode extends ExporterSopNode { constructor() { super(...arguments); this.paramsConfig = ParamsConfig; } static type() { return SopExporter.EXPORTER_PLY; } fileExtension() { return "ply"; } createBlob() { return new Promise(async (resolve) => { const sceneData = await this._prepareScene(); if (!sceneData) { return; } const { scene, objects } = sceneData; const options = { binary: true // excludeAttributes?: string[]; // littleEndian: boolean; }; const exporter = new PLYExporter(); exporter.parse( scene, (result) => { this._handleResult(result, objects, resolve); }, options ); }); } }