UNPKG

@polygonjs/polygonjs

Version:

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

24 lines (23 loc) 855 B
"use strict"; import { ExtrudeGeometry } from "three"; import { mergeGeometries } from "three/examples/jsm/utils/BufferGeometryUtils"; export function createGeometriesFromTypeMesh(params) { var _a; return (_a = params.shapes) == null ? void 0 : _a.map((shapes) => createGeometryFromTypeMesh({ ...params, shapes })); } function createGeometryFromTypeMesh(params) { const extrudeParams = { curveSegments: params.curveSegments, depth: params.extrude, bevelEnabled: params.bevelEnabled, bevelThickness: params.bevelThickness, bevelSize: params.bevelSize, bevelOffset: params.bevelOffset, bevelSegments: params.bevelSegments }; const geometries = params.shapes.map((s) => new ExtrudeGeometry(s, extrudeParams)); if (geometries == null || geometries.length == 0) { return; } return mergeGeometries(geometries); }