aircitytype 1.1.27 → 1.1.29

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.
Files changed (2) hide show
  1. package/aircity/index.d.ts +330 -2
  2. package/package.json +1 -1
@@ -1,4 +1,18 @@
1
+ // 基础坐标点类型(支持2D/3D)
2
+ type Point = number[];
3
+
4
+ // 单个环类型(闭合多边形)
5
+ type Ring = Point[];
6
+
7
+ // 单个Part类型(外环+可选内环)
8
+ type Part = Ring[];
9
+
10
+ // 完整的多边形结构(支持单Part和多Part)
11
+ type PolygonStructure = Ring | Part | Part[];
12
+
13
+
1
14
  interface HOSTINFO {
15
+ Path: string;
2
16
  AirCityPlayer: string;
3
17
  AirCityManager: string;
4
18
  Token: string;
@@ -24,6 +38,7 @@ interface InfoTree {
24
38
  fn?: () => void
25
39
  ): void;
26
40
  get(fn?: (e: { infotree: InfoTreeItem[] }) => void): Promise<{ infotree: InfoTreeItem[] }>;
41
+ focus(id:string,fn?:()=>void);
27
42
  hide(ids: string[] | string, fn?: () => void): void;
28
43
  hideByGroupId(groupId: string, fn?: () => void): void;
29
44
  highlightByGroupId(groupId: string, fn: () => void): void;
@@ -90,7 +105,6 @@ interface Weather {
90
105
  day: number,
91
106
  hour: number,
92
107
  minute: number,
93
- // second: number,
94
108
  daynightLoop: boolean,
95
109
  fn?: () => void
96
110
  ): void;
@@ -263,6 +277,14 @@ interface TileLayer {
263
277
  stopHighlightActor(id: string, objectId: string): void;
264
278
  updateBegin(): void;
265
279
  updateEnd(): void;
280
+ addHole(data:{
281
+ id:string; // 挖洞操作唯一标识符
282
+ tileLayerId:string; //TileLayer对象的ID
283
+ coordinates: PolygonStructure; //挖洞多边形的坐标数组,二维数组,数组元素类型:挖洞多边形的坐标,取值示例
284
+ innerRings: any[]; //挖洞多边形的内环,三维数组,数组元素类型:挖洞多边形的坐标数组
285
+ isReverseCut:boolean //挖洞多边形是否反转,默认值:false
286
+ }[]): void;
287
+ clearHole(id:string|string[],fn?:()=>void):void;
266
288
 
267
289
  // Name Type Description
268
290
  // id string
@@ -455,7 +477,7 @@ interface Polygon3D {
455
477
  }
456
478
 
457
479
  interface Polyline {
458
- add(arg0: PolyLineType | PolyLineType[]): void;
480
+ add(arg0: PolyLineType | PolyLineType[], fn: (r)=>void): void;
459
481
  update(arg:PolyLineType|PolyLineType[]):void;
460
482
  focus(id: string, distance?: number): void;
461
483
  delete(id: string | string[]): void;
@@ -742,6 +764,7 @@ interface PolygonType {
742
764
 
743
765
  declare enum PolygonStyle {
744
766
  OnTerrain = 0,
767
+ SingleColor = 0
745
768
  }
746
769
 
747
770
  interface PolyLineType {
@@ -781,6 +804,286 @@ interface VehicleData{
781
804
  supportAttach :boolean //是否支持贴画贴合,默认值:true
782
805
  }
783
806
 
807
+
808
+ // Name Type Description
809
+ // option object
810
+ // 加载GeoJSON的配置项对象,包含以下属性
811
+
812
+ // id (string) 必选,字符串类型唯一id
813
+
814
+ // url (string) 二选一,GeoJSON文件本地磁盘路径或者对应的url地址
815
+
816
+ // sourceJson (Object) 二选一,GeoJSON标准对象(JsonObject)
817
+
818
+ // visible (boolean) 可选,设置图层加载后是否显示,默认:true
819
+
820
+ // rotation (array) 旋转:[Pitch,Yaw,Roll],数组元素类型:(number),取值范围:[任意数值]
821
+
822
+ // offset (array) 可选,基于原始位置的偏移量,默认值:[0,0,0]
823
+
824
+ // range (array) 点的可视范围: [近裁距离, 远裁距离],默认值: [0, 10000],注意:此参数仅对point类型的GeoJSON生效
825
+
826
+ // viewHeightRange (array) 可见高度范围:[最小可见高度, 远最大可见高度],默认值: [-1000000000, 1000000000]
827
+
828
+ // needProject (boolean) 可选,是否进行投影转换,默认:true
829
+
830
+ // textMarkerField (string) 可选,使用Geojson的属性字段显示文字标注
831
+
832
+ // textRange (array) 可选,文字标注的可视范围: [近裁距离, 远裁距离],单位:米
833
+
834
+ // onTerrain (boolean) 可选,设置图层加载后是否贴地,默认:false
835
+
836
+ // collision (boolean) 是否开启碰撞,默认值:true
837
+
838
+ // renderer (object) 必选,渲染器配置对象参数如下:
839
+
840
+ // style Polygon3DStyle 仅对Polygon3D渲染生效,设置Polygon3D的样式
841
+
842
+ // material (string) 可选参数,自定义材质路径,即资源库PAK文件里材质文件的路径,设置自定义材质参数后style相关参数会失效
843
+
844
+ // scalarParameters (array) 可选参数,仅在设置自定义材质路径后生效,自定义材质数值类型参数,包含name/value键值对的数组,其中value为数值,格式示例:[{"name":"不透明度","value":0.5},{"name":"UV重复","value":1.0}]
845
+
846
+ // vectorParameters (array) 可选参数,仅在设置自定义材质路径后生效,自定义材质矢量类型参数,包含name/value键值对的数组,其中value为数组,格式示例:[{"name":"color1","value":[1,1,1,1]},{"name":"color2","value":[1,0,0,1]}]
847
+
848
+ // rendererType (RendererType) 渲染器类型,包含三种:简单渲染器、唯一值渲染器、分类渲染器
849
+
850
+ // type (VisualType) 控制显示的可视化类型枚举
851
+
852
+ // field (string) GeoJSON文件内的属性字段名称
853
+
854
+ // fieldType (FieldType) GeoJSON文件内的属性字段类型,枚举支持数值类型和字符串类型
855
+
856
+ // gradient (boolean) 颜色是否渐变
857
+
858
+ // defaultSymbol (object) 必选,默认符号化配置参数如下:
859
+
860
+ // symbolType (number) 符号化类型,0 simple-marker圆形点填充 1 simple-line线填充(注意:目前仅支持1px的线宽) 2 simple-fill面填充 3 polygon3d填充
861
+
862
+ // size (number) 可选,点的默认尺寸,仅针对simple-marker圆形填充生效;
863
+
864
+ // height (number) 可选,polygon3d的默认高度,仅针对polygon3d填充生效;
865
+
866
+ // color (array) 默认填充颜色
867
+
868
+ // outline (object) 默认轮廓线,包含线宽和颜色,注意:目前仅支持1px的线宽。对象结构示例:{width: 1,color: [1, 1, 1, 1]}
869
+
870
+ // uniqueValueInfos (array) 可选,唯一值渲染器配置数组,对象结构如下:
871
+
872
+ // value (any) field字段对应值
873
+
874
+ // symbol (object) 各唯一值对应的符号化配置对象,结构如下:
875
+
876
+ // color (Color) 可选,三选一,唯一值对应的颜色
877
+
878
+ // size (number) 可选,三选一,唯一值对应的尺寸
879
+
880
+ // height (number) 可选,三选一,唯一值对应的高度
881
+
882
+ // classBreakInfos (array) 可选,分类渲染器配置数组,对象结构如下:
883
+
884
+ // minValue (number) 区间最小值
885
+
886
+ // maxValue (number) 区间最大值
887
+
888
+ // symbol (object) 不同分类的符号化配置对象,结构如下:
889
+
890
+ // color (Color) 可选,二选一,区间值对应的颜色
891
+
892
+ // size (number) 可选,二选一,区间值对应的尺寸
893
+
894
+ // height (number) 可选,三选一,区间值对应的高度
895
+
896
+ // visualVariables (array) 简单渲染器支持根据字段属性控制颜色、尺寸和透明度的显示,参数如下:
897
+
898
+ // type (VisualType) 控制显示的可视化类型枚举
899
+
900
+ // field (string) GeoJSON文件内的属性字段名称
901
+
902
+ // fieldType (FieldType) GeoJSON文件内的属性字段类型,枚举支持数值类型和字符串类型
903
+
904
+ // visibleRenderer (object) 可选,要素可见性渲染器配置对象,包含的参数结构如下:
905
+
906
+ // rendererType (RendererType) 渲染器类型:可见性渲染器
907
+
908
+ // field (string) GeoJSON文件内的属性字段名称
909
+
910
+ // fieldType (FieldType) GeoJSON文件内的属性字段类型,枚举支持数值类型和字符串类型
911
+
912
+ // defaultVisible (boolean) 全局要素默认是否可见,默认值:true 可见
913
+
914
+ // visibleValueInfos (array) 可选,分类渲染器配置数组,对象结构如下:
915
+
916
+ // value (any) 可选,field字段对应值
917
+
918
+ // minValue (number) 可选,区间最小值,注意:数值类型字段可以使用此属性
919
+
920
+ // maxValue (number) 可选,区间最大值,注意:数值类型字段可以使用此属性
921
+
922
+ // visible (boolean) 必选,根据字段值或区间控制要素块是否显隐
923
+
924
+ // 请求参数示例
925
+
926
+ // //简单渲染器
927
+ // let simpleRenderer = {
928
+ // //渲染器类型
929
+ // rendererType: RendererType.SimpleRenderer,
930
+ // //默认符号化配置
931
+ // defaultSymbol: {
932
+ // //符号化类型枚举:0 simple-marker圆形点填充 1 simple-line线填充 2 simple-fill面填充 3 polygon3d填充
933
+ // symbolType: 3,
934
+ // //默认高度
935
+ // height: 10,
936
+ // //默认填充颜色
937
+ // color: [0, 0, 1, 1],
938
+ // //默认轮廓线
939
+ // outline: {
940
+ // //线宽
941
+ // width: 1,
942
+ // //颜色
943
+ // color: [1, 1, 1, 1],
944
+ // }
945
+ // },
946
+ // //简单渲染器支持根据字段属性控制颜色、尺寸和透明度的显示
947
+ // visualVariables: [{
948
+ // //控制可视化显示的类型: 颜色color、尺寸size、高度height和不透明度opacity
949
+ // type: VisualType.Height,
950
+ // //属性字段名称
951
+ // field: "hight",
952
+ // //属性字段类型
953
+ // fieldType: FieldType.Number,
954
+ // }]
955
+ // };
956
+
957
+ // //唯一值渲染器
958
+ // let uniqueValueRenderer = {
959
+ // //渲染器类型
960
+ // rendererType: RendererType.UniqueValueRenderer,
961
+ // //渲染字段名称
962
+ // field: "name",
963
+ // //属性字段类型
964
+ // fieldType: FieldType.String,
965
+ // //控制可视化显示的类型: 颜色color、尺寸size、高度height和不透明度opacity
966
+ // type: VisualType.Color,
967
+ // //默认符号化配置
968
+ // defaultSymbol: {
969
+ // //符号化类型枚举:0 simple-marker圆形点填充 1 simple-line线填充 2 simple-fill面填充 3 polygon3d填充
970
+ // symbolType: 2,
971
+ // //填充色
972
+ // color: [0, 1, 1, 1],
973
+ // //轮廓线
974
+ // outline: {
975
+ // //线宽
976
+ // width: 1,
977
+ // //颜色
978
+ // color: [1, 1, 1, 1]
979
+ // },
980
+ // },
981
+ // //根据颜色字段的唯一值进行符号化填充
982
+ // uniqueValueInfos: [{
983
+ // // 深圳湾体育馆填充为蓝色
984
+ // value: "深圳湾体育馆",
985
+ // symbol: {
986
+ // //填充色
987
+ // color: [0, 0, 1, 1]
988
+ // }
989
+ // }, {
990
+ // // 北京师大南山附属学校小学部填充为红色
991
+ // value: "北京师大南山附属学校小学部",
992
+ // symbol: {
993
+ // color: [1, 0, 0, 1]
994
+ // }
995
+ // }, {
996
+ // // 腾讯滨海大厦填充为绿色
997
+ // value: "腾讯滨海大厦",
998
+ // symbol: {
999
+ // color: [0, 1, 0, 1]
1000
+ // }
1001
+ // }, {
1002
+ // // 科技第三幼儿园填充为黄色
1003
+ // value: "科技第三幼儿园",
1004
+ // symbol: {
1005
+ // color: [1, 1, 0, 1]
1006
+ // }
1007
+ // }]
1008
+ // };
1009
+
1010
+
1011
+ // //分类渲染对应颜色
1012
+ // let less25 = {
1013
+ // color: [0,0,1,1]
1014
+ // };
1015
+
1016
+ // let less50 = {
1017
+ // color: [0,1,0,1]
1018
+ // };
1019
+
1020
+ // let less75 = {
1021
+ // color: [1,1,0,1]
1022
+ // };
1023
+
1024
+ // let less100 = {
1025
+ // color: [1,0,0,1]
1026
+ // };
1027
+
1028
+ // //分类渲染器
1029
+ // let classBreaksRenderer = {
1030
+ // rendererType: RendererType.ClassBreaksRenderer,
1031
+ // field: "hight",
1032
+ // //属性字段类型
1033
+ // fieldType: FieldType.Number,
1034
+ // //控制可视化显示的类型: 颜色color、尺寸size、高度height和不透明度opacity
1035
+ // type: VisualType.Color,
1036
+ // //默认符号化配置
1037
+ // defaultSymbol: {
1038
+ // //符号化类型枚举:0 simple-marker圆形点填充 1 simple-line线填充 2 simple-fill面填充 3 polygon3d填充
1039
+ // symbolType: 2,
1040
+ // //填充色
1041
+ // color: [0, 1, 1, 1],
1042
+ // //轮廓线
1043
+ // outline: {
1044
+ // //线宽
1045
+ // width: 1,
1046
+ // //颜色
1047
+ // color: [1, 1, 1, 1]
1048
+ // },
1049
+ // },
1050
+ // //根据hight字段的不同区间值使用不同的符号化配置
1051
+ // classBreakInfos: [
1052
+ // {
1053
+ // minValue: 0,
1054
+ // maxValue: 25,
1055
+ // symbol: less25
1056
+ // },
1057
+ // {
1058
+ // minValue: 25,
1059
+ // maxValue: 50,
1060
+ // symbol: less50
1061
+ // },
1062
+ // {
1063
+ // minValue: 50,
1064
+ // maxValue: 75,
1065
+ // symbol: less75
1066
+ // },
1067
+ // {
1068
+ // minValue: 75,
1069
+ // maxValue: 100,
1070
+ // symbol: less100
1071
+ // }
1072
+ // ]
1073
+ // };
1074
+
1075
+ interface GeoJSONLayerOption{
1076
+ id: string,
1077
+ visible?: boolean,//加载后是否显示
1078
+ rotation?: [number, number, number],//图层旋转
1079
+ offset?: [number, number, number],//基于原始位置的偏移量
1080
+ needProject?: boolean,//开启投影转换
1081
+ collision?: boolean, //开启碰撞
1082
+ onTerrain?: boolean,//是否贴地
1083
+ url?: string;
1084
+ renderer?: any;
1085
+ }
1086
+
784
1087
  interface Marker {
785
1088
  clear(): void;
786
1089
  add(p: markType | markType[]): Promise<null>;
@@ -871,6 +1174,25 @@ interface Vehicle {
871
1174
  updateEnd(fn?:()=>void):void;
872
1175
  }
873
1176
 
1177
+ interface GeoJSONLayer {
1178
+ add(option:GeoJSONLayerOption, fn?:()=>void):void;
1179
+ clear(fn?:()=>void):void;
1180
+ delete(ids:string|string[], fn?:()=>void):void;
1181
+ focus(ids:string|string[], distance?:number, flyTime?:number, rotation?:[number,number,number], fn?:()=>void):void;
1182
+ focusFeature(id:string|string[], featureId:number, distance, flyTime, rotation:[number,number,number], fn?:()=>void):void;
1183
+ hide(ids:string|string[], fn?:()=>void):void;
1184
+ highlightFeature(id:string, featureId:number, fn?:()=>void):void;
1185
+ highlightFeatures(data:any, fn?:()=>void):void;
1186
+ setViewHeightRange(id:string, minViewHeight:number, maxViewHeight:number, fn?:()=>void):void;
1187
+ show(ids:string|string[], fn?:()=>void):void;
1188
+ stopAllHighlightFeaturesById(ids:string|string[], fn?:()=>void):void;
1189
+ stopHighlightFeature(id:string, featureId:number, fn?:()=>void):void;
1190
+ stopHighlightFeatures(data:any, fn?:()=>void):void;
1191
+ update(option:GeoJSONLayerOption, fn?:()=>void):void;
1192
+ updateBegin():void;
1193
+ updateEnd(fn?:()=>void):void;
1194
+ }
1195
+
874
1196
  type BeamData = {
875
1197
  id:string; // (string) 字符串类型的ID
876
1198
  groupId?:string;// (string) 可选,Group分组
@@ -997,6 +1319,7 @@ declare class FDAPITYPE {
997
1319
  polyline: Polyline;
998
1320
  marker: Marker;
999
1321
  vehicle: Vehicle;
1322
+ geoJSONLayer: GeoJSONLayer;
1000
1323
  beam:Beam;
1001
1324
  marker3d: Marker3D;
1002
1325
  editHelper: EditHelper;
@@ -1110,5 +1433,10 @@ declare var imgURL: string;
1110
1433
  declare var Disk: string;
1111
1434
  declare var objectIds: string[];
1112
1435
  declare var wrap: (id: string, id1: string, url: string) => void;
1436
+ declare var RendererType: {
1437
+ SimpleRenderer: any;
1438
+ UniqueValueRenderer :any;
1439
+ ClassBreaksRenderer:any;
1440
+ }
1113
1441
 
1114
1442
 
package/package.json CHANGED
@@ -18,5 +18,5 @@
18
18
  "fs-extra": "^11.3.0",
19
19
  "jsonc-parser": "^3.3.1"
20
20
  },
21
- "version": "1.1.27"
21
+ "version": "1.1.29"
22
22
  }