@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
24 lines (23 loc) • 1.57 kB
TypeScript
import { Vector3, BufferAttribute } from 'three';
import { ObjectGeometryMap, CoreObjectType, ObjectContent } from '../../ObjectContent';
import { CorePoint } from '../../entities/point/CorePoint';
import { PointAttributesDict } from '../../entities/point/Common';
import { CsgObject } from './CsgObject';
import { CsgGeometryType } from './CsgCommon';
export declare class CsgPoint extends CorePoint<CoreObjectType.CSG> {
protected _geometry?: ObjectGeometryMap[CoreObjectType.CSG];
protected _object: CsgObject<CsgGeometryType>;
constructor(object: CsgObject<CsgGeometryType>, index: number);
object(): CsgObject<CsgGeometryType>;
setIndex(index: number, object?: CsgObject<CsgGeometryType>): this;
private _updateGeometry;
geometry(): import("./CsgCommon").CsgGeometry | undefined;
static addAttribute<T extends CoreObjectType>(object: ObjectContent<T>, attribName: string, attribute: BufferAttribute): void;
static attributes<T extends CoreObjectType>(object: ObjectContent<T>): PointAttributesDict | undefined;
static entitiesCount<T extends CoreObjectType>(object: ObjectContent<T>): number;
position(target: Vector3): Vector3;
normal(target: Vector3): Vector3;
static userDataAttribs<T extends CoreObjectType>(object: ObjectContent<T>): {};
static setIndexedAttribute<T extends CoreObjectType>(object: ObjectContent<T>, attribName: string, values: string[], indices: number[]): void;
static attribValueIndex<T extends CoreObjectType>(object: ObjectContent<T>, index: number, attribName: string): number;
}