@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
33 lines (32 loc) • 1.25 kB
JavaScript
;
import { Object3D } from "three";
import { objectCloneDeep } from "../ObjectUtils";
export var CoreObjectType = /* @__PURE__ */ ((CoreObjectType2) => {
CoreObjectType2["THREEJS"] = "Object3D";
CoreObjectType2["CAD"] = "CADObject";
CoreObjectType2["CSG"] = "CSGObject";
CoreObjectType2["QUAD"] = "QUADObject";
CoreObjectType2["SDF"] = "SDFObject";
CoreObjectType2["TET"] = "TetObject";
return CoreObjectType2;
})(CoreObjectType || {});
export function isObject3D(o) {
return o instanceof Object3D || o.isObject3D == true;
}
export function objectContentCopyProperties(src, target, options) {
target.visible = src.visible;
target.name = src.name;
if (options == null || options.castShadow == null || options.castShadow == true) {
target.castShadow = src.castShadow;
}
if (options == null || options.receiveShadow == null || options.receiveShadow == true) {
target.receiveShadow = src.receiveShadow;
}
target.renderOrder = src.renderOrder;
target.frustumCulled = src.frustumCulled;
target.matrixAutoUpdate = src.matrixAutoUpdate;
if (src.material && (options == null ? void 0 : options.material) == null) {
target.material = src.material;
}
target.userData = objectCloneDeep(src.userData);
}