import { ConstructorProps, ContextManager, Observable } from '@zcomponent/core'; import { Object3D } from '@zcomponent/three/lib/components/Object3D'; import { FeaturePointsGeometry } from '../../util/geometries/FeaturePointsGeometry'; import * as THREE from 'three'; export type FeaturePointsConstructorProps = ConstructorProps; /** @zcomponent * A mesh node that will fit to the face/head and deform as the user's expression changes. * This can be used to apply a texture to the user's skin, much like face paint. * @zgroup AR * @zicon familiar_face_and_zone * @ztag three/Object3D/Points/Zappar/FeaturePoints * @zparents three/Object3D/Group/** */ export declare class FeaturePoints extends Object3D { private _uniforms; /** * @zui * @zgroup Appearance * @zgrouppriority 20 * @zdefault 5 */ size: Observable; /** * Color of the points * * @zprop * @zgroup Appearance * @zgrouppriority 20 * @ztype color-norm-rgb-linear * @zdefault [1, 1, 1] */ color: Observable<[number, number, number], never>; /** * Float in the range of 0.0 - 1.0 indicating how transparent the points are. * @zprop * @zgroup Appearance * @zgrouppriority 20 * @ztype proportion * @zdefault 0.4 */ opacity: Observable; /** * @zui * @zgroup Design Time * @zgrouppriority 100 * @zdefault false */ preview: Observable; element: THREE.Points; material: THREE.ShaderMaterial; constructor(ctx: ContextManager, props: FeaturePointsConstructorProps); dispose(): never; private _frame; /** @zignore */ position: Observable<[x: number, y: number, z: number], never>; /** @zignore */ scale: Observable<[x: number, y: number, z: number], never>; /** @zignore */ rotation: Observable<[x: number, y: number, z: number], never>; /** @zignore */ castShadow: Observable; /** @zignore */ receiveShadow: Observable; }