s2maps-gpu
Version:
S2 Maps GPU - An open source, high-performance, and GPU-accelerated map engine for rendering large-scale, interactive maps.
34 lines (33 loc) • 1.57 kB
TypeScript
import VectorWorker from './vectorWorker.js';
import type { LineDefinition, LineWorkerLayer } from 'style/style.spec.js';
import type { TileRequest } from '../worker.spec.js';
import type { LineFeature, LineWorker as LineWorkerSpec, VTFeature } from './process.spec.js';
/** Worker for processing line data */
export default class LineWorker extends VectorWorker implements LineWorkerSpec {
#private;
featureStore: Map<string, LineFeature[]>;
/**
* Setup the worker layer to process future line data
* @param lineLayer - input style layer guide
* @returns the worker layer to process future line vector data
*/
setupLayer(lineLayer: LineDefinition): LineWorkerLayer;
/**
* Build a line feature
* @param tile - the tile request
* @param extent - the tile extent
* @param feature - the vector tile feature
* @param lineLayer - the line worker layer
* @param mapID - the map id to ship the data back to
* @param sourceName - the name of the source the data belongs to
* @returns true if the feature was built
*/
buildFeature(tile: TileRequest, extent: number, feature: VTFeature, lineLayer: LineWorkerLayer, mapID: string, sourceName: string): boolean;
/**
* Flush a tile-request's result line data to the render thread
* @param mapID - id of the map to ship the data back to
* @param tile - tile request
* @param sourceName - name of the source the data belongs to
*/
flush(mapID: string, tile: TileRequest, sourceName: string): Promise<void>;
}