import { Material } from './../materials/Material'; import { Raycaster } from './../core/Raycaster'; import { Object3D } from './../core/Object3D'; import { BufferGeometry } from '../core/BufferGeometry'; import { Intersection } from '../core/Raycaster'; /** * A class for displaying points. The points are rendered by the WebGLRenderer using gl.POINTS. */ export class Points extends Object3D { /** * @param geometry An instance of BufferGeometry. * @param material An instance of Material (optional). */ constructor(geometry?: TGeometry, material?: TMaterial); type: 'Points'; morphTargetInfluences?: number[] | undefined; morphTargetDictionary?: { [key: string]: number } | undefined; readonly isPoints: true; /** * An instance of BufferGeometry, where each vertex designates the position of a particle in the system. */ geometry: TGeometry; /** * An instance of Material, defining the object's appearance. Default is a PointsMaterial with randomised colour. */ material: TMaterial; raycast(raycaster: Raycaster, intersects: Intersection[]): void; updateMorphTargets(): void; }