UNPKG

@polygonjs/polygonjs

Version:

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

30 lines (26 loc) 1 kB
import {CoreObjectType, ObjectContent} from '../../ObjectContent'; import {CsgPrimitive} from './CsgPrimitive'; import {CsgGeometryType, CsgTypeMap} from './CsgCommon'; import {CsgObject} from './CsgObject'; export class CsgPrimitiveGeom2 extends CsgPrimitive<CsgGeometryType.GEOM2> { constructor(object: CsgObject<CsgGeometryType.GEOM2>, index: number) { super(object, index); // this._geometry = object.geometry; } static primitiveName() { return 'side'; } static override entitiesCount<T extends CoreObjectType>(object: ObjectContent<T>) { const csgOobject = object as any as CsgObject<CsgGeometryType.GEOM2>; const geometry = csgOobject.geometry as CsgTypeMap[CsgGeometryType.GEOM2]; return geometry.sides.length; } // position(target: Vector3): Vector3 { // console.warn('CsgPrimitiveGeom2.position not implemented'); // return target; // } // normal(target: Vector3): Vector3 { // console.warn('CsgPrimitiveGeom2.normal not implemented'); // return target; // } }