@caelann/front_mapbox_custom_layer
Version:
基于mapbox的自定义图层加载三维数据 - 组件
40 lines (39 loc) • 1.09 kB
TypeScript
import Mapboxgl from "mapbox-gl";
import { Group } from "three";
interface Model {
mesh: Group;
lon: number;
lat: number;
}
interface CustomLayerOption {
id?: string;
}
export default class CustomSingleLayer {
id: string;
type: string;
renderingMode: string;
private singleMods;
private map;
private initCamera;
private option;
private camera;
private scene;
private renderer;
private highlightMesh;
private MAX_CACHE;
private modelTransform;
constructor(option: CustomLayerOption);
private getOffsetByLonlat;
private calculateProjection;
private calculateTransform;
setInitCamera(options: Mapboxgl.CameraOptions): void;
onAdd(map: Mapboxgl.Map, gl: any): void;
onRemove(map: mapboxgl.Map): void;
render(gl: any, matrix: any): void;
pickEvent: ({ point: { x, y } }: Mapboxgl.EventData) => {
[key: string]: any;
} | undefined;
highlightByName(pickName: string): void;
addSingleMod({ mesh, lon, lat }: Model): void;
}
export {};