soonspacejs
Version:
soonspacejs 2.x
24 lines (23 loc) • 1.02 kB
TypeScript
import { MeshStandardMaterial } from 'three';
import { BaseObjectInfo, IColor, PlaneIVector2 } from '../Interface';
import { BaseMesh } from './BaseMesh';
import { GradientTextureOptions } from '../Shared';
interface PolygonInfo extends BaseObjectInfo {
points: PlaneIVector2[];
yHeight?: number;
depth?: number;
color?: IColor;
opacity?: number;
gradient?: GradientTextureOptions;
}
type SetOptionsPolygonInfo = Partial<Pick<PolygonInfo, 'yHeight' | 'points' | 'depth' | 'color' | 'opacity' | 'gradient'>>;
declare class Polygon extends BaseMesh {
params?: PolygonInfo | undefined;
material: MeshStandardMaterial;
constructor(params?: PolygonInfo | undefined);
updateGeometry(points: PlaneIVector2[], depth: number): void;
updateMaterialOpacity(opacity: number): void;
updateMaterial(color: IColor, gradient?: GradientTextureOptions): void;
setOptions(params: SetOptionsPolygonInfo): void;
}
export { Polygon, PolygonInfo, SetOptionsPolygonInfo, };