Chaos 2.0 开发文档API

chaos-next

[TOC]

开发文档

API地址 模块索引地址

特性

  • 基于TypeScript封装
  • 兼容市面常用各类明星服务(SuperMap二三维服务,ArcGIS二三维服务,OGC-WMS,OGC-WMTS,国家天地图,第三方模板服务)
  • 图层基本能力封装(图层显隐、图例、图层定位)
  • 属性查询能力封装,测量封装
  • 实体绘制封装(点、线、面、圆、文本、盒子、布告板、墙、复合实体)
  • 实体属性封装(包括:动态泛光墙、波纹圆形、螺旋圆形、闪烁颜色、电弧球体、轨迹球体、精灵穿梭、竖直飞线)
  • 常用工具能力封装

安装

引入依赖地址(dependencies)

"@tys/chaos": "ssh://git@mygitlab.tuyuansu.com.cn:8822/teams/frontend-team/release-lib/chaos.git#1.x.x"

执行 yarn 安装

yarn

使用

// 1、超图Cesium包拷贝至public/static目录下
// 2、声明文件shims-vue.d.ts添加
interface Window {
Cesium: any;
}

// 3、组件引入Chaos
<template>
<div class="absolute top-0 left-0 bottom-0 right-0" ref="chaosContainer"/>
</template>

import { Chaos } from '@tys/chaos';
import { getPublicPath } from '@tys/taichi';

setup() {
const chaosContainer = ref();
onMounted(() => {
const publicPath = getPublicPath();
const cesiumPath = `${publicPath}static/Cesium`;
const chaos = new Chaos(chaosContainer.value, cesiumPath);
chaos.readyPromise.then((base) => {
const { viewer } = base;

//TODO
//chaos存储管理
//其他初始化操作
});
});
return { chaosContainer };
}

模块结构

└── lib
├── lib\coordinate------------------------------------------坐标转换模块
│ ├── convert.d.ts
│ └── lib\coordinate\index.d.ts
│ └── Convert
├── lib\core------------------------------------------------chaos核心入口
│ ├── base.d.ts
│ └── lib\core\index.d.ts
│ ├── Chaos
│ └── CABase
├── lib\global----------------------------------------------全局变量
│ ├── constant.d.ts
│ ├── enums.d.ts
│ ├── index.d.ts
│ ├── interfaces.d.ts
│ └── lib\global\models
│ ├── index.d.ts
│ ├── LayerOption.d.ts
│ └── Legend.d.ts
├── lib\index.d.ts------------------------------------------常用工具
│ └── CommonTool
├── lib\index.js--------------------------------------------三维库对外导出模块
├── lib\interactive-----------------------------------------鼠标交互包括绘制测量
│ ├── draw.d.ts
│ ├── lib\interactive\index.d.ts
│ │ ├── InteractManager
│ │ ├── Mouse
│ │ ├── Draw
│ │ └── Measure
│ ├── measure.d.ts
│ ├── mouse.d.ts
│ └── tool.d.ts
├── lib\layers----------------------------------------------支持图层类型可扩展
│ ├── ArcGISImageLayer.d.ts
│ ├── ArcGISSceneLayer.d.ts
│ ├── BaseLayer.d.ts
│ ├── SuperMapImageLayer.d.ts
│ ├── SuperMapOSGBLayer.d.ts
│ ├── SuperMapTerrainLayer.d.ts
│ ├── SupermapVectortileLayer.d.ts
│ ├── TiandituImageLayer.d.ts
│ ├── UrlTemplateImageLayer.d.ts
│ └── WMTSLayer.d.ts
├── package.json
├── lib\property-------------------------------------------实体特殊属性模块
│ ├── lib\property\index.d.ts
│ │ └── PropertyCreator
│ ├── registerCircleSpiralMaterialProperty.d.ts
│ ├── registerCircleWaveMaterialProperty.d.ts
│ ├── registerColorFlickerMaterialProperty.d.ts
│ ├── registerDynamicWallMaterialProperty.d.ts
│ ├── registerEllipsoidElectricMaterialProperty.d.ts
│ ├── registerEllipsoidTrailMaterialProperty.d.ts
│ ├── registerSpritelineMaterialProperty.d.ts
│ └── registerVerticalFlowLineMaterialProperty.d.ts
├── lib\query----------------------------------------------属性查询模块
│ ├── index.d.ts
│ └── lib\query\utils.d.ts
│ ├── createWFSSpatialQueryParams
│ ├── createSmAttrQueryParams
│ ├── vectorSpatialQuery
│ ├── dealWithFieldInfo
│ ├── createSmSpatialQueryParams
│ └── xmlLoader.d.ts
└── lib\types
└── index.d.ts

兼容性

兼容性检测

点击检测

浏览器兼容性

设备类型 IE Chrome Firefox Opera Safari
PC机终端 10.0 及以上系列(推荐 11.0 及以上版本)注:IE不支持深度纹理 41.0 及以上系列(推荐 45.0 及以上版本) 2.0 及以上系列(推荐 5.0 及以上版本) 9.5 及以上系列(推荐 10.0 及以上版本) 3.0 及以上系列(推荐 4.0 及以上版本)

移动设备兼容性

  • iPhone 5 及以上系列
  • iPad Air 及以上系列
  • 三星 Galaxy S6 及以上系列
  • 小米 3 及以上系列
  • 华为 荣耀 6plus 及以上系列

注:目前移动设备对 WebGL 的支持存在差异,使用微信内置浏览器可能影响稳定,推荐使用 Chrome 浏览器获得最佳浏览效果。

文件结构

生态链接

开源协议

MIT

Generated using TypeDoc