import { Layer } from '@deck.gl/core'; import { Model } from '@luma.gl/engine'; import PolygonTesselator from "./polygon-tesselator.js"; import type { LayerProps, LayerDataSource, Color, Material, Accessor, AccessorFunction, UpdateParameters, GetPickingInfoParams, PickingInfo, DefaultProps } from '@deck.gl/core'; import type { PolygonGeometry } from "./polygon.js"; type _SolidPolygonLayerProps = { data: LayerDataSource; /** Whether to fill the polygons * @default true */ filled?: boolean; /** Whether to extrude the polygons * @default false */ extruded?: boolean; /** Whether to generate a line wireframe of the polygon. * @default false */ wireframe?: boolean; /** * (Experimental) If `false`, will skip normalizing the coordinates returned by `getPolygon`. * @default true */ _normalize?: boolean; /** * (Experimental) This prop is only effective with `_normalize: false`. * It specifies the winding order of rings in the polygon data, one of 'CW' (clockwise) and 'CCW' (counter-clockwise) */ _windingOrder?: 'CW' | 'CCW'; /** * (Experimental) This prop is only effective with `XYZ` data. * When true, polygon tesselation will be performed on the plane with the largest area, instead of the xy plane. * @default false */ _full3d?: boolean; /** Elevation multiplier. * @default 1 */ elevationScale?: number; /** Polygon geometry accessor. */ getPolygon?: AccessorFunction; /** Extrusion height accessor. * @default 1000 */ getElevation?: Accessor; /** Fill color accessor. * @default [0, 0, 0, 255] */ getFillColor?: Accessor; /** Stroke color accessor. * @default [0, 0, 0, 255] */ getLineColor?: Accessor; /** * Material settings for lighting effect. Applies if `extruded: true` * * @default true * @see https://deck.gl/docs/developer-guide/using-lighting */ material?: Material; }; /** Render filled and/or extruded polygons. */ export type SolidPolygonLayerProps = _SolidPolygonLayerProps & LayerProps; export default class SolidPolygonLayer extends Layer>> { static defaultProps: DefaultProps>; static layerName: string; state: { topModel?: Model; sideModel?: Model; wireframeModel?: Model; models?: Model[]; numInstances: number; polygonTesselator: PolygonTesselator; }; getShaders(type: any): any; get wrapLongitude(): boolean; getBounds(): [number[], number[]] | null; initializeState(): void; getPickingInfo(params: GetPickingInfoParams): PickingInfo; disablePickingIndex(objectIndex: number): void; draw({ uniforms }: { uniforms: any; }): void; updateState(updateParams: UpdateParameters): void; protected updateGeometry({ props, oldProps, changeFlags }: UpdateParameters): void; protected _getModels(): { models: any[]; topModel: any; sideModel: any; wireframeModel: any; }; protected calculateIndices(attribute: any): void; protected calculatePositions(attribute: any): void; protected calculateVertexValid(attribute: any): void; } export {}; //# sourceMappingURL=solid-polygon-layer.d.ts.map