Skip to content

ImageCollection 图片点集合类

判定

isImageCollection()

typescript
const isImageCollection: (tar: any) => tar is ImageCollection

属性

redonlay id: string 唯一标识

size: number 子元素数量

show: boolean 是否显示

label: HtmlLabel

方法

add 添加点

typescript
add(options: ImageCollectionOptions['addOptions']): Billboard

type ImageCollectionOptions = {
  /** add方法参数 */
  addOptions: {
    id?: string;
    /** 位置 */
    position: Point3d | [number, number, number?];
    /** 显示消失 */
    show?: boolean;
    /** 图片地址 */
    img: string | HTMLCanvasElement | ((time: JulianDate, result: object) => string | HTMLCanvasElement);
    /** 旋转角度,只针对图片 */
    rotation?: number;
    /** 宽度 */
    width?: number;
    /** 高度  */
    height?: number;
    /** 缩放大小 */
    scale?: number;
    /** 是否绝对定位  */
    absolute?: boolean;
    /** 垂直对齐方式 */
    verticalOrigin?: 'center' | 'bottom' | 'top';
    /** 水平对齐方式 */
    horizontalOrigin?: 'center' | 'left' | 'right';
    /** 近距离 */
    near?: number;
    /** 远距离 */
    far?: number;
    /** 近距离缩放 */
    nearScale?: number;
    /** 远距离缩放 */
    farScale?: number;
    /** 是否以米为单位 */
    sizeInMeters?: boolean;
    /** 偏移量 */
    offset?: [number, number];
    /** 颜色 */
    color?: MapColor;
    /** label偏移量 */
    labelOffset?: [number, number];
    property?: Record<string | symbol, any>;
  };
};

get 获取

  • id 子元素id
typescript
get(id: string): Billboard | undefined

setImage 设置改变子元素样式

typescript
setImage(id: string, options: Partial<Omit<ImageCollectionOptions['addOptions'], 'id' | 'near' | 'far' | 'nearScale' | 'farScale' | 'property'>>): Billboard | undefined

getProperty 获取属性

  • id 子元素id
typescript
getProperty(id: string): Record<string | symbol, any> | undefined

remove 移除点

  • id 子元素id
  • isRender 移除后是否进行渲染 默认true
typescript
remove(id: string, isRender: boolean): boolean

removeAll 移除所有点

  • isRender 移除后是否进行渲染 默认true
typescript
removeAll(isRender: boolean): void

on 事件注册

  • 两个函数重载
typescript
on(type: 'mouseMove', listener: (tar: [ImageCollection, Billboard | undefined], mark: 'in' | 'out', Even: MouseMoveEvent) => void): ImageCollection;
on(type: PickType, listener: (tar: [ImageCollection, Billboard | undefined], mark: 'in' | 'out', Even: PickEvent) => void): ImageCollection;

off 事件移除

typescript
off(type: PickType | 'mouseMove'): ImageCollection

focus 聚焦

  • id 子元素id
  • duration 过渡时间(秒)
typescript
focus(id: string, duration): void

destroy 销毁

typescript
destroy(): boolean