@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
38 lines (37 loc) • 1.72 kB
TypeScript
import { CadGeometryType, CadTypeMap, CADTesselationParams } from './CadCommon';
import { ObjectContent, CoreObjectType } from '../../ObjectContent';
import { Object3D, Material, Matrix4, Box3 } from 'three';
import { BaseSopNodeType } from '../../../../engine/nodes/sop/_Base';
export declare class CadObject<T extends CadGeometryType> implements ObjectContent<CoreObjectType.CAD> {
private _geometry;
private _type;
visible: boolean;
get geometry(): import("./CadCommon").CadGeometry;
get type(): T;
userData: {};
name: string;
castShadow: boolean;
receiveShadow: boolean;
renderOrder: number;
frustumCulled: boolean;
matrixAutoUpdate: boolean;
material: Material | undefined;
children: ObjectContent<CoreObjectType.CAD>[];
parent: ObjectContent<CoreObjectType.CAD> | null;
constructor(_geometry: CadTypeMap[T], _type: T);
setGeometry<TE extends CadGeometryType>(geometry: CadTypeMap[TE], type: TE): void;
private _validate;
cadGeometry(): CadTypeMap[T];
dispose(): void;
applyMatrix4(matrix: Matrix4): void;
add(...object: ObjectContent<CoreObjectType>[]): void;
remove(...object: ObjectContent<CoreObjectType>[]): void;
dispatchEvent(event: {
type: string;
}): void;
traverse(callback: (object: CadObject<T>) => any): void;
clone(): CadObject<T>;
toObject3D(tesselationParams: CADTesselationParams, displayNode: BaseSopNodeType): Object3D | Object3D[] | undefined;
static toObject3D<T extends CadGeometryType>(cadObject: CadObject<T>, type: T, tesselationParams: CADTesselationParams, displayNode: BaseSopNodeType): Object3D | Object3D[] | undefined;
boundingBox(target: Box3): void;
}