cesium 图层构建的那些事 (十一)
今天我们来构建复杂一点的图层 云图
我们先定义一些定义参数
-
//位置
-
export interface PPoint{
-
x:Number,
-
y:Number,
-
z?:Number,
-
spatialReference?:Number;
-
}
-
export interface PCloudImageLayer {
-
name: String,
-
images: Array<any>,
-
positions: Array<PPoint>
-
}
云图layer
```javascript
import {DataSourceLayer} from "../DataSourceLayer";
import {PCloudImageLayer} from "./PCloudImageLayer";
import {PPoint} from "./PPoint";
export class CloudImageLayer extends DataSourceLayer{
public type = "CloudImageLayer";
private isRun: Boolean = true;//是否运行
private isStop: Boolean = false;//是否停止
public delay: number = 500;//切换图片延迟时间
private curIndex: number = 0;//当前展示的索引
private entitys: Array = [];//存放entity
private timer: any = null;//定时器
public get index(): number {
return this.curIndex;
}
-
constructor(option: PCloudImageLayer, delay: number = 500) {
-
super(option.name);
-
this.delay = delay;
-
if (option !== null) {
-
this.createLayer(option.images, option.positions);
-
}
-
}
-
-
public getAttribute(index: number) {
-
return this.entitys[index]._customAttr;
-
}
-
-
public start(index: number = 0, isRun: boolean = true) {
-
if (this.map == null) {
-
throw new Error("请先添加到viewer中");
-
}
-
this.curIndex = index;
-
this.isRun = isRun;
-
this.isStop = false;
-
window.requestAnimationFrame(this.animate.bind(this));
-
}
-
-
public pause() {
-
clearTimeout(this.timer);
更多参考 https://xiaozhuanlan.com/topic/3192047568
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了