deeptwins-engine-3d 0.1.63 → 0.1.65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/Build/DeepTwins/Workers/MvtVector.worker.js +1 -0
- package/dist/esm/{plot/utils/Algorithm.js → drawer/algorithm.js} +1 -3
- package/dist/esm/drawer/common.d.ts +61 -0
- package/dist/esm/{plot/utils/PlotCommon.js → drawer/common.js} +104 -551
- package/dist/esm/{plot/utils/Coordinate.d.ts → drawer/coordinate.d.ts} +1 -1
- package/dist/esm/drawer/index.d.ts +11 -18
- package/dist/esm/drawer/index.js +329 -80
- package/dist/esm/{plot/utils → drawer}/plotUtil.js +1 -3
- package/dist/esm/drawer/shape/Assemble.d.ts +34 -0
- package/dist/esm/drawer/shape/Assemble.js +415 -0
- package/dist/esm/drawer/shape/AttackArrow.d.ts +32 -0
- package/dist/esm/drawer/shape/AttackArrow.js +442 -0
- package/dist/esm/drawer/shape/BaseShape.d.ts +14 -4
- package/dist/esm/drawer/shape/BaseShape.js +175 -20
- package/dist/esm/drawer/shape/Bow.d.ts +31 -0
- package/dist/esm/drawer/shape/Bow.js +375 -0
- package/dist/esm/drawer/shape/Circle.d.ts +37 -0
- package/dist/esm/drawer/shape/Circle.js +461 -0
- package/dist/esm/drawer/shape/Curve.d.ts +29 -0
- package/dist/esm/drawer/shape/Curve.js +386 -0
- package/dist/esm/drawer/shape/DragPoint.d.ts +32 -0
- package/dist/esm/drawer/shape/DragPoint.js +211 -0
- package/dist/esm/drawer/shape/Elliptic.d.ts +38 -0
- package/dist/esm/drawer/shape/Elliptic.js +491 -0
- package/dist/esm/drawer/shape/Formation.d.ts +33 -0
- package/dist/esm/drawer/shape/Formation.js +395 -0
- package/dist/esm/drawer/shape/PincerArrow.d.ts +32 -0
- package/dist/esm/drawer/shape/PincerArrow.js +445 -0
- package/dist/esm/drawer/shape/Point.d.ts +2 -31
- package/dist/esm/drawer/shape/Point.js +7 -201
- package/dist/esm/drawer/shape/Polygon.d.ts +1 -1
- package/dist/esm/drawer/shape/Polygon.js +10 -81
- package/dist/esm/drawer/shape/Polyline.d.ts +1 -1
- package/dist/esm/drawer/shape/Polyline.js +10 -81
- package/dist/esm/drawer/shape/RegularPolygon.d.ts +37 -0
- package/dist/esm/drawer/shape/RegularPolygon.js +468 -0
- package/dist/esm/drawer/shape/RightAngleArrow.d.ts +34 -0
- package/dist/esm/drawer/shape/RightAngleArrow.js +423 -0
- package/dist/esm/drawer/shape/Sector.d.ts +37 -0
- package/dist/esm/drawer/shape/Sector.js +568 -0
- package/dist/esm/drawer/shape/StraightArrow.d.ts +34 -0
- package/dist/esm/drawer/shape/StraightArrow.js +422 -0
- package/dist/esm/drawer/shape/SwallowtailArrow.d.ts +36 -0
- package/dist/esm/drawer/shape/SwallowtailArrow.js +438 -0
- package/dist/esm/drawer/types.d.ts +23 -0
- package/dist/esm/drawer/types.js +11 -0
- package/dist/esm/drawer/utils.d.ts +14 -0
- package/dist/esm/drawer/utils.js +320 -2
- package/dist/esm/graphicLayer/BaseSource.d.ts +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +5 -3
- package/dist/esm/measure/Area.d.ts +17 -17
- package/dist/esm/measure/Area.js +95 -63
- package/dist/esm/measure/BaseDraw.d.ts +9 -4
- package/dist/esm/measure/BaseDraw.js +37 -2
- package/dist/esm/measure/Distance.d.ts +9 -9
- package/dist/esm/measure/Distance.js +52 -68
- package/dist/esm/measure/index.d.ts +16 -26
- package/dist/esm/measure/index.js +72 -84
- package/dist/esm/measure/types.d.ts +94 -0
- package/dist/esm/measure/types.js +17 -0
- package/dist/esm/measure/utils.d.ts +7 -7
- package/dist/esm/measure/utils.js +43 -24
- package/dist/esm/tileLayer/MvtVectorLoad.d.ts +241 -0
- package/dist/esm/tileLayer/MvtVectorLoad.js +1353 -0
- package/dist/esm/tileLayer/MvtVectorWorkerClient.d.ts +25 -0
- package/dist/esm/tileLayer/MvtVectorWorkerClient.js +126 -0
- package/dist/esm/tool/utils.js +1 -1
- package/dist/umd/deeptwins-engine-3d.min.js +1 -1
- package/package.json +2 -1
- package/dist/assets/Build/DeepTwins/Image/compass/pointer-white.png +0 -0
- package/dist/esm/plot/create/CreateAssemble.d.ts +0 -2
- package/dist/esm/plot/create/CreateAssemble.js +0 -63
- package/dist/esm/plot/create/CreateAttackArrow.d.ts +0 -5
- package/dist/esm/plot/create/CreateAttackArrow.js +0 -75
- package/dist/esm/plot/create/CreateBillboard.d.ts +0 -2
- package/dist/esm/plot/create/CreateBillboard.js +0 -47
- package/dist/esm/plot/create/CreateBow.d.ts +0 -2
- package/dist/esm/plot/create/CreateBow.js +0 -63
- package/dist/esm/plot/create/CreateCircle.d.ts +0 -2
- package/dist/esm/plot/create/CreateCircle.js +0 -68
- package/dist/esm/plot/create/CreateCurve.d.ts +0 -2
- package/dist/esm/plot/create/CreateCurve.js +0 -76
- package/dist/esm/plot/create/CreateElliptic.d.ts +0 -2
- package/dist/esm/plot/create/CreateElliptic.js +0 -69
- package/dist/esm/plot/create/CreateFlag.d.ts +0 -2
- package/dist/esm/plot/create/CreateFlag.js +0 -80
- package/dist/esm/plot/create/CreateFormation.d.ts +0 -2
- package/dist/esm/plot/create/CreateFormation.js +0 -65
- package/dist/esm/plot/create/CreateFreeLine.d.ts +0 -2
- package/dist/esm/plot/create/CreateFreeLine.js +0 -69
- package/dist/esm/plot/create/CreateFreePolygon.d.ts +0 -2
- package/dist/esm/plot/create/CreateFreePolygon.js +0 -65
- package/dist/esm/plot/create/CreateLabel.d.ts +0 -2
- package/dist/esm/plot/create/CreateLabel.js +0 -55
- package/dist/esm/plot/create/CreateLineArrow.d.ts +0 -2
- package/dist/esm/plot/create/CreateLineArrow.js +0 -79
- package/dist/esm/plot/create/CreatePincerArrow.d.ts +0 -5
- package/dist/esm/plot/create/CreatePincerArrow.js +0 -73
- package/dist/esm/plot/create/CreatePoint.d.ts +0 -2
- package/dist/esm/plot/create/CreatePoint.js +0 -47
- package/dist/esm/plot/create/CreatePolygon.d.ts +0 -2
- package/dist/esm/plot/create/CreatePolygon.js +0 -80
- package/dist/esm/plot/create/CreatePolyline.d.ts +0 -2
- package/dist/esm/plot/create/CreatePolyline.js +0 -70
- package/dist/esm/plot/create/CreateRectangle.d.ts +0 -2
- package/dist/esm/plot/create/CreateRectangle.js +0 -60
- package/dist/esm/plot/create/CreateRegularPolygon.d.ts +0 -2
- package/dist/esm/plot/create/CreateRegularPolygon.js +0 -75
- package/dist/esm/plot/create/CreateRightAngleArrow.d.ts +0 -5
- package/dist/esm/plot/create/CreateRightAngleArrow.js +0 -73
- package/dist/esm/plot/create/CreateRoundRectangle.d.ts +0 -2
- package/dist/esm/plot/create/CreateRoundRectangle.js +0 -63
- package/dist/esm/plot/create/CreateSector.d.ts +0 -2
- package/dist/esm/plot/create/CreateSector.js +0 -65
- package/dist/esm/plot/create/CreateStraightArrow.d.ts +0 -5
- package/dist/esm/plot/create/CreateStraightArrow.js +0 -65
- package/dist/esm/plot/create/CreateSwallowtailArrow.d.ts +0 -5
- package/dist/esm/plot/create/CreateSwallowtailArrow.js +0 -67
- package/dist/esm/plot/create/index.d.ts +0 -25
- package/dist/esm/plot/create/index.js +0 -25
- package/dist/esm/plot/edit/EditAssemble.d.ts +0 -8
- package/dist/esm/plot/edit/EditAssemble.js +0 -120
- package/dist/esm/plot/edit/EditAttackArrow.d.ts +0 -8
- package/dist/esm/plot/edit/EditAttackArrow.js +0 -182
- package/dist/esm/plot/edit/EditBillboard.d.ts +0 -7
- package/dist/esm/plot/edit/EditBillboard.js +0 -70
- package/dist/esm/plot/edit/EditBow.d.ts +0 -8
- package/dist/esm/plot/edit/EditBow.js +0 -119
- package/dist/esm/plot/edit/EditCircle.d.ts +0 -8
- package/dist/esm/plot/edit/EditCircle.js +0 -133
- package/dist/esm/plot/edit/EditCurve.d.ts +0 -8
- package/dist/esm/plot/edit/EditCurve.js +0 -180
- package/dist/esm/plot/edit/EditElliptic.d.ts +0 -8
- package/dist/esm/plot/edit/EditElliptic.js +0 -144
- package/dist/esm/plot/edit/EditFlag.d.ts +0 -8
- package/dist/esm/plot/edit/EditFlag.js +0 -121
- package/dist/esm/plot/edit/EditFormation.d.ts +0 -8
- package/dist/esm/plot/edit/EditFormation.js +0 -120
- package/dist/esm/plot/edit/EditLabel.d.ts +0 -7
- package/dist/esm/plot/edit/EditLabel.js +0 -100
- package/dist/esm/plot/edit/EditLineArrow.d.ts +0 -8
- package/dist/esm/plot/edit/EditLineArrow.js +0 -180
- package/dist/esm/plot/edit/EditPincerArrow.d.ts +0 -8
- package/dist/esm/plot/edit/EditPincerArrow.js +0 -121
- package/dist/esm/plot/edit/EditPoint.d.ts +0 -7
- package/dist/esm/plot/edit/EditPoint.js +0 -70
- package/dist/esm/plot/edit/EditPolygon.d.ts +0 -8
- package/dist/esm/plot/edit/EditPolygon.js +0 -181
- package/dist/esm/plot/edit/EditPolyline.d.ts +0 -8
- package/dist/esm/plot/edit/EditPolyline.js +0 -179
- package/dist/esm/plot/edit/EditRectangle.d.ts +0 -8
- package/dist/esm/plot/edit/EditRectangle.js +0 -119
- package/dist/esm/plot/edit/EditRegularPolygon.d.ts +0 -8
- package/dist/esm/plot/edit/EditRegularPolygon.js +0 -170
- package/dist/esm/plot/edit/EditRightAngleArrow.d.ts +0 -8
- package/dist/esm/plot/edit/EditRightAngleArrow.js +0 -143
- package/dist/esm/plot/edit/EditRoundRectangle.d.ts +0 -8
- package/dist/esm/plot/edit/EditRoundRectangle.js +0 -119
- package/dist/esm/plot/edit/EditSector.d.ts +0 -8
- package/dist/esm/plot/edit/EditSector.js +0 -120
- package/dist/esm/plot/edit/EditStraightArrow.d.ts +0 -8
- package/dist/esm/plot/edit/EditStraightArrow.js +0 -120
- package/dist/esm/plot/edit/EditSwallowtailArrow.d.ts +0 -8
- package/dist/esm/plot/edit/EditSwallowtailArrow.js +0 -121
- package/dist/esm/plot/edit/index.d.ts +0 -23
- package/dist/esm/plot/edit/index.js +0 -23
- package/dist/esm/plot/utils/DomUtil.d.ts +0 -34
- package/dist/esm/plot/utils/DomUtil.js +0 -100
- package/dist/esm/plot/utils/PlotCommon.d.ts +0 -101
- package/dist/esm/plot/utils/ReminderTip.d.ts +0 -10
- package/dist/esm/plot/utils/ReminderTip.js +0 -67
- package/dist/esm/plot/utils/Tooltip.d.ts +0 -3
- package/dist/esm/plot/utils/Tooltip.js +0 -97
- /package/dist/esm/{plot/utils/Algorithm.d.ts → drawer/algorithm.d.ts} +0 -0
- /package/dist/esm/{plot/utils/Coordinate.js → drawer/coordinate.js} +0 -0
- /package/dist/esm/{plot/utils → drawer}/plotUtil.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(()=>{"use strict";const e=Object.fromEntries(Object.entries({Point:1,MultiPoint:2,LineString:3,MultiLineString:4,Polygon:5,MultiPolygon:6}).map(([e,t])=>[t,e])),t=(new TextEncoder,new TextDecoder);class r{constructor(e){this.bytes=function(e){if(e instanceof Uint8Array)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("输入不是可解码的二进制数据。")}(e),this.offset=0}isEnd(){return this.offset>=this.bytes.length}readVarint(){let e=0,t=0;for(;;){if(this.offset>=this.bytes.length)throw new Error("读取 protobuf varint 时遇到意外 EOF。");const r=this.bytes[this.offset];if(this.offset+=1,e+=(127&r)*2**t,!(128&r))return e;if(t+=7,t>49)throw new Error("protobuf varint 超出当前实现支持范围。")}}readDouble(){if(this.offset+8>this.bytes.length)throw new Error("读取 protobuf double 时遇到意外 EOF。");const e=new DataView(this.bytes.buffer,this.bytes.byteOffset+this.offset,8).getFloat64(0,!0);return this.offset+=8,e}readBytes(){const e=this.readVarint(),t=this.offset+e;if(t>this.bytes.length)throw new Error("读取 protobuf bytes 时遇到意外 EOF。");const r=this.bytes.slice(this.offset,t);return this.offset=t,r}readString(){return t.decode(this.readBytes())}readTag(){const e=this.readVarint();return{fieldNumber:e>>3,wireType:7&e}}skip(e){switch(e){case 0:return void this.readVarint();case 1:if(this.offset+8>this.bytes.length)throw new Error("跳过 protobuf fixed64 时遇到意外 EOF。");return void(this.offset+=8);case 2:{const e=this.readVarint();if(this.offset+e>this.bytes.length)throw new Error("跳过 protobuf bytes 时遇到意外 EOF。");return void(this.offset+=e)}default:throw new Error(`不支持跳过的 protobuf wire type:${e}`)}}}function s(e){const t=new r(e),s=[];let i;for(;!t.isEnd();){const{fieldNumber:e,wireType:r}=t.readTag();1!==e||1!==r?2!==e||1!==r?3!==e||1!==r?t.skip(r):i=t.readDouble():s[1]=t.readDouble():s[0]=t.readDouble()}if(!Number.isFinite(s[0])||!Number.isFinite(s[1]))throw new Error("解码 Position 失败:缺少合法经纬度。");return void 0===i?s:[s[0],s[1],i]}function i(e){const t=new r(e),i=[];for(;!t.isEnd();){const{fieldNumber:e,wireType:r}=t.readTag();1!==e||2!==r?t.skip(r):i.push(s(t.readBytes()))}return i}function o(e){const t=new r(e),i=[];for(;!t.isEnd();){const{fieldNumber:e,wireType:r}=t.readTag();1!==e||2!==r?t.skip(r):i.push(s(t.readBytes()))}return i}function n(e){const t=new r(e),s=[];for(;!t.isEnd();){const{fieldNumber:e,wireType:r}=t.readTag();1!==e||2!==r?t.skip(r):s.push(o(t.readBytes()))}return s}function a(t){const o=new r(t),a={type:"Feature",id:0,properties:{},geometry:{type:"Point",coordinates:[]}},f=[],u=[],d=[];let y=0,c="{}";for(;!o.isEnd();){const{fieldNumber:e,wireType:t}=o.readTag();1!==e||0!==t?2!==e||0!==t?3!==e||2!==t?4!==e||2!==t?5!==e||2!==t?6!==e||2!==t?o.skip(t):d.push(n(o.readBytes())):u.push(i(o.readBytes())):f.push(s(o.readBytes())):c=o.readString():y=o.readVarint():a.id=o.readVarint()}try{a.properties=JSON.parse(c||"{}")}catch(e){throw new Error(`解码 feature 失败:properties 不是合法 JSON:${e.message}`)}const h=e[y];if(!h)throw new Error(`解码 feature 失败:未知 geometryType=${y}`);switch(h){case"Point":a.geometry={type:"Point",coordinates:f[0]};break;case"MultiPoint":a.geometry={type:"MultiPoint",coordinates:f};break;case"LineString":a.geometry={type:"LineString",coordinates:u[0]||[]};break;case"MultiLineString":a.geometry={type:"MultiLineString",coordinates:u};break;case"Polygon":a.geometry={type:"Polygon",coordinates:d[0]||[]};break;case"MultiPolygon":a.geometry={type:"MultiPolygon",coordinates:d};break;default:throw new Error(`解码 feature 失败:未知几何类型 ${h}`)}return a}function f(e){const t=new r(e),s={version:1,z:0,x:0,y:0,features:[]};for(;!t.isEnd();){const{fieldNumber:e,wireType:r}=t.readTag();1!==e||0!==r?2!==e||0!==r?3!==e||0!==r?4!==e||0!==r?5!==e||2!==r?t.skip(r):s.features.push(a(t.readBytes())):s.y=t.readVarint():s.x=t.readVarint():s.z=t.readVarint():s.version=t.readVarint()}return s}const u=self;u.onmessage=e=>{const{id:t,buffer:r}=e.data;try{u.postMessage({id:t,raw:f(r)})}catch(e){u.postMessage({id:t,error:e instanceof Error&&e.message?e.message:"MVT 解码失败"})}}})();
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import * as Cesium from 'deeptwins-cesium';
|
|
2
|
+
/**
|
|
3
|
+
* 根据控制点生成贝塞尔曲线点集。
|
|
4
|
+
* 输入为 Cesium.Cartesian3 控制点,输出同样为 Cartesian3 点集。
|
|
5
|
+
*/
|
|
6
|
+
declare const createBezierPoints: (anchorpoints: any[]) => any;
|
|
7
|
+
/**
|
|
8
|
+
* 根据控制点计算攻击箭头面顶点。
|
|
9
|
+
*/
|
|
10
|
+
declare const getAttackArrowPoints: (positions: any[]) => any;
|
|
11
|
+
/**
|
|
12
|
+
* 根据控制点计算直角箭头面顶点。
|
|
13
|
+
*/
|
|
14
|
+
declare const getRightAngleArrowPoints: (anchorpoints: any[]) => Cesium.Cartesian3[];
|
|
15
|
+
/**
|
|
16
|
+
* 计算圆/椭圆的半长轴长度。
|
|
17
|
+
*/
|
|
18
|
+
declare const getSemiAxis: (points: any[]) => number;
|
|
19
|
+
/**
|
|
20
|
+
* 计算椭圆长轴相对正北方向的旋转角。
|
|
21
|
+
*/
|
|
22
|
+
declare const getEllipticAngle: (points: any[]) => number;
|
|
23
|
+
/**
|
|
24
|
+
* 计算集结地面的闭合曲线顶点。
|
|
25
|
+
* 返回值为经纬高扁平数组:[lng, lat, 0, ...]。
|
|
26
|
+
*/
|
|
27
|
+
declare const computeAssemblePoints: (anchorpoints: any[]) => number[];
|
|
28
|
+
/**
|
|
29
|
+
* 统一计算燕尾/直线箭头顶点。
|
|
30
|
+
* type: 1-燕尾箭头,2-燕尾箭头变体,3-直线箭头。
|
|
31
|
+
*/
|
|
32
|
+
declare const calculateSwallowPoints: (anchorpoints: any[], type: number) => any[];
|
|
33
|
+
/**
|
|
34
|
+
* 根据控制点计算钳击箭头面顶点。
|
|
35
|
+
*/
|
|
36
|
+
declare const calculatePincerArrowPoint: (points: any[]) => any;
|
|
37
|
+
/**
|
|
38
|
+
* 根据两个控制点生成阵型折线点集。
|
|
39
|
+
* type: 0-防御阵型,1-进攻阵型。
|
|
40
|
+
*/
|
|
41
|
+
declare const calculateFormationPoints: (anchorpoints: any[], type: number) => Cesium.Cartesian3[];
|
|
42
|
+
/**
|
|
43
|
+
* 根据两个控制点生成弓形折线点集。
|
|
44
|
+
*/
|
|
45
|
+
declare const calculateBowPoints: (anchorpoints: any[]) => Cesium.Cartesian3[];
|
|
46
|
+
/**
|
|
47
|
+
* 已知起点经纬度、角度与距离,反解目标点经纬度。
|
|
48
|
+
* 这里采用 WGS84 椭球近似计算,供弓形、阵型、扇形等算法复用。
|
|
49
|
+
*/
|
|
50
|
+
declare function getPointByAngleDistance(lng: number, lat: number, angle: number, distance: number): {
|
|
51
|
+
x: number;
|
|
52
|
+
y: number;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* 根据圆心、半径点、终止角方向点生成扇形顶点。
|
|
56
|
+
*/
|
|
57
|
+
declare const calculateSectorPoints: (points: any[]) => Cesium.Cartesian3[];
|
|
58
|
+
/**
|
|
59
|
+
* 对外暴露给 drawer/shape 的最小算法集合。
|
|
60
|
+
*/
|
|
61
|
+
export { calculateBowPoints, calculateFormationPoints, calculatePincerArrowPoint, calculateSectorPoints, calculateSwallowPoints, computeAssemblePoints, createBezierPoints, getAttackArrowPoints, getEllipticAngle, getPointByAngleDistance, getRightAngleArrowPoints, getSemiAxis, };
|