UNPKG

@fleet-frontend/mower-maps

Version:

a mower maps in google maps

198 lines 3.97 kB
import { BaseLayer } from './layers'; /** * SVG基础MapView * 使用真正的矢量SVG渲染替代Canvas位图渲染 */ export declare class SvgMapView { private svg; private container; private viewBox; private sn; private layers; private layersGroup; private scale; private lineScale; private offsetX; private offsetY; private rotation; private destroyed; private isDragging; private lastMouseX; private lastMouseY; constructor(sn: string, containerElement: HTMLElement, width?: number, height?: number); /** * 创建SVG元素 */ private createSVGElement; /** * 设置SVG基本属性 */ private setupSVG; /** * 创建SVG组元素 */ private createSVGGroup; /** * 更新viewBox */ private updateViewBox; /** * 更新layersGroup的transform */ private updateLayersTransform; addLayers(layers: BaseLayer[]): void; getLayer<T extends BaseLayer>(type: string): T | null; /** * 添加图层 */ addLayer(layer: BaseLayer): void; /** * 移除图层 */ removeLayer(layer: BaseLayer): void; /** * 根据类型移除图层 * @param type 图层类型 */ removeLayerByType(type: string): void; /** * 设置自适应视图变换 - 让SVG刚好包裹住图形 */ fitToView(bounds: { minX: number; minY: number; maxX: number; maxY: number; }): void; /** * 获取当前缩放级别 */ getZoom(): number; /** * 获取当前线条缩放系数 */ getLineScale(): number; /** * 绘制特定的图层 */ renderLayer(type: string): void; /** * 主渲染方法 */ private render; /** * 获取图层id */ private getLayerId; /** * 清空图层组 */ private clearLayersGroup; /** * 获取图层的下一个兄弟元素 * 根据图层的level来获取 */ private getNextSibling; /** * 绘制图层,不传参数则默认绘制所有图层 */ private onDrawLayers; /** * 刷新渲染 */ refresh(): void; /** * 获取layers-group的实际边界 */ getLayersGroupBounds(): { x: number; y: number; width: number; height: number; } | null; /** * 获取ViewBox信息 */ getViewBoxInfo(): { x: number; y: number; width: number; height: number; }; /** * 获取容器的实际尺寸 */ getContainerSize(): { width: number; height: number; }; /** * 诊断SVG尺寸信息 */ diagnosticSizeInfo(): void; /** * 获取SVG元素 */ getSVG(): SVGSVGElement; /** * 获取容器元素 */ getContainer(): HTMLElement; /** * 获取所有图层 */ getLayers(): BaseLayer[]; /** * 清空所有图层 */ clear(): void; /** * 销毁MapView */ destroy(): void; /** * 设置X偏移 */ setOffsetX(x: number): void; /** * 设置Y偏移 */ setOffsetY(y: number): void; /** * 设置旋转角度(度) */ setRotation(rotation: number): void; /** * 设置完整的transform */ setTransform(transform: { x?: number; y?: number; rotation?: number; }): void; /** * 获取当前transform状态 */ getTransform(): { x: number; y: number; rotation: number; }; /** * 重置transform到默认状态 */ resetTransform(): void; /** * 获取X偏移 */ getOffsetX(): number; /** * 获取Y偏移 */ getOffsetY(): number; /** * 获取旋转角度 */ getRotation(): number; } //# sourceMappingURL=SvgMapView.d.ts.map