@fleet-frontend/mower-maps
Version:
a mower maps in google maps
95 lines • 2.36 kB
TypeScript
import { SvgMapView } from './SvgMapView';
import { DrawElement } from './layers/types';
import { BaseConfig } from '../types/renderer';
import { AntennaData } from '../types';
/**
* 天线管理器
* 专门处理天线元素的创建、定位和管理
*/
export declare class AntennaManager {
private svgView;
private onlyRead;
private antennaElements;
private container;
private antennaElementsMap;
private mainAntennaData;
private singleAntennaData;
private globalClickHandler;
private antennaTooltipFlag;
private singleAntennaTooltipFlag;
private divLayout;
private static readonly Z_INDEX;
private rotation;
constructor(svgView: SvgMapView, onlyRead: boolean);
/**
* 初始化容器
*/
private initializeContainer;
/**
* 设置全局点击监听器
*/
private setupGlobalClickHandler;
/**
* 提升天线层级到最高
*/
private elevateAntennaZIndex;
/**
* 重置天线层级
*/
private resetAntennaZIndex;
/**
* 创建天线对应的dom元素
*/
createAntennaElement(antennaData: AntennaData): HTMLDivElement;
/**
* 创建天线tooltip
*/
private createTooltip;
/**
* 展开tooltip
*/
private expandTooltip;
/**
* 关闭其他展开的tooltip
*/
private collapseOtherTooltips;
/**
* 关闭所有展开的tooltip
*/
private collapseAllTooltips;
updateReadOnlyMode(onlyRead: boolean): void;
/**
* 添加主天线
*/
addMainAntennaElement(antennaData: AntennaData): HTMLDivElement;
addSingleAntennaElement(antennaData: AntennaData): HTMLDivElement;
/**
* 添加所有天线元素
*/
addAllElements(elements: DrawElement<BaseConfig>[]): void;
/**
* 更新天线位置
*/
updateAntennaPosition(divW: number, divH: number): void;
/**
* 获取容器元素
*/
getElement(): HTMLElement | null;
/**
* 更新天线状态
*/
updateAntennaStatus(antennaId: number, online: boolean): void;
/**
* 清空所有天线
*/
clear(): void;
/**
* 销毁管理器
*/
destroy(): void;
/**
* 设置天线旋转角度
*/
setRotation(rotation: number): void;
}
//# sourceMappingURL=AntennaManager.d.ts.map