fuchengshen
2022-07-09 3a25c05b5ab837714f30469cdcb1e2a77d8d7f6c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
{
  "label": {
    "name": "文字",
    "style": [
      { "name": "text", "label": "内容", "type": "textarea", "defval": "" },
 
      {
        "name": "font_family",
        "label": "字体",
        "type": "combobox",
        "defval": "楷体",
        "data": [
          { "label": "微软雅黑", "value": "微软雅黑" },
          { "label": "宋体", "value": "宋体" },
          { "label": "楷体", "value": "楷体" },
          { "label": "隶书", "value": "隶书" },
          { "label": "黑体", "value": "黑体" }
        ]
      },
      { "name": "font_size", "label": "字体大小", "type": "number", "step": 1, "defval": 30.0 },
      {
        "name": "font_weight",
        "label": "是否加粗",
        "type": "combobox",
        "defval": "normal",
        "data": [
          { "label": "是", "value": "bold" },
          { "label": "否", "value": "normal" }
        ]
      },
      {
        "name": "font_style",
        "label": "是否斜体",
        "type": "combobox",
        "defval": "normal",
        "data": [
          { "label": "是", "value": "italic" },
          { "label": "否", "value": "normal" }
        ]
      },
 
      { "name": "color", "label": "颜色", "type": "color", "defval": "#ffffff" },
      { "name": "opacity", "label": "透明度", "type": "slider", "defval": 1.0, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "outline", "label": "是否衬色", "type": "radio", "defval": false, "impact": ["outlineColor", "outlineOpacity", "outlineWidth"] },
      { "name": "outlineColor", "isImpact": true, "label": "衬色颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "衬色透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
      { "name": "outlineWidth", "isImpact": true, "label": "衬色宽度", "type": "number", "min": 1, "max": 5, "step": 1, "defval": 3.0 },
 
      {
        "name": "background",
        "label": "是否背景",
        "type": "radio",
        "defval": false,
        "impact": ["backgroundColor", "backgroundOpacity", "backgroundPadding"]
      },
      { "name": "backgroundColor", "isImpact": true, "label": "背景颜色", "type": "color", "defval": "#000000" },
      { "name": "backgroundOpacity", "isImpact": true, "label": "背景透明度", "type": "slider", "defval": 0.5, "min": 0, "max": 1, "step": 0.01 },
      { "name": "backgroundPadding", "label": "背景内边距", "type": "number", "step": 1, "defval": 5 },
 
      { "name": "pixelOffsetX", "label": "横向偏移像素", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "pixelOffsetY", "label": "纵向偏移像素", "type": "number", "step": 1, "defval": 0.0 },
 
      {
        "name": "scaleByDistance",
        "label": "是否按视距缩放",
        "type": "radio",
        "defval": false,
        "impact": ["scaleByDistance_far", "scaleByDistance_farValue", "scaleByDistance_near", "scaleByDistance_nearValue"]
      },
      { "name": "scaleByDistance_far", "isImpact": true, "label": "上限", "type": "number", "step": 1, "defval": 1000000.0 },
      { "name": "scaleByDistance_farValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 0.1 },
      { "name": "scaleByDistance_near", "isImpact": true, "label": "下限", "type": "number", "step": 1, "defval": 1000.0 },
      { "name": "scaleByDistance_nearValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 1.0 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "clampToGround", "label": "是否贴地", "type": "radio", "defval": false },
      { "name": "visibleDepth", "label": "是否被遮挡", "type": "radio", "defval": true }
    ]
  },
 
  "point": {
    "name": "点标记",
    "style": [
      { "name": "pixelSize", "label": "像素大小", "type": "number", "step": 1, "defval": 10.0 },
      { "name": "color", "label": "颜色", "type": "color", "defval": "#3388ff" },
      { "name": "opacity", "label": "透明度", "type": "slider", "defval": 1.0, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": true, "impact": ["outlineColor", "outlineOpacity", "outlineWidth"] },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "number", "step": 1, "defval": 0 },
 
      {
        "name": "scaleByDistance",
        "label": "是否按视距缩放",
        "type": "radio",
        "defval": false,
        "impact": ["scaleByDistance_far", "scaleByDistance_farValue", "scaleByDistance_near", "scaleByDistance_nearValue"]
      },
      { "name": "scaleByDistance_far", "isImpact": true, "label": "上限", "type": "number", "step": 1, "defval": 1000000.0 },
      { "name": "scaleByDistance_farValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 0.1 },
      { "name": "scaleByDistance_near", "isImpact": true, "label": "下限", "type": "number", "step": 1, "defval": 1000.0 },
      { "name": "scaleByDistance_nearValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 1.0 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 10000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "clampToGround", "label": "是否贴地", "type": "radio", "defval": false },
      { "name": "visibleDepth", "label": "是否被遮挡", "type": "radio", "defval": true }
    ]
  },
 
  "billboard": {
    "name": "图标点标记",
    "style": [
      { "name": "image", "label": "图标", "type": "label", "defval": "" },
      { "name": "opacity", "label": "透明度", "type": "slider", "defval": 1.0, "min": 0, "max": 1, "step": 0.01 },
      { "name": "scale", "label": "大小比例", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "rotationDegree", "label": "旋转角度", "type": "number", "step": 1, "defval": 0.0 },
 
      {
        "name": "horizontalOrigin",
        "label": "横向对齐",
        "type": "combobox",
        "valType": "number",
        "defval": 0,
        "data": [
          { "label": "左边", "value": 1 },
          { "label": "居中", "value": 0 },
          { "label": "右边", "value": -1 }
        ]
      },
      {
        "name": "verticalOrigin",
        "label": "垂直对齐",
        "type": "combobox",
        "valType": "number",
        "defval": 1,
        "data": [
          { "label": "顶部", "value": -1 },
          { "label": "居中", "value": 0 },
          { "label": "底部", "value": 1 }
        ]
      },
 
      {
        "name": "scaleByDistance",
        "label": "是否按视距缩放",
        "type": "radio",
        "defval": false,
        "impact": ["scaleByDistance_far", "scaleByDistance_farValue", "scaleByDistance_near", "scaleByDistance_nearValue"]
      },
      { "name": "scaleByDistance_far", "isImpact": true, "label": "上限", "type": "number", "step": 1, "defval": 1000000.0 },
      { "name": "scaleByDistance_farValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 0.1 },
      { "name": "scaleByDistance_near", "isImpact": true, "label": "下限", "type": "number", "step": 1, "defval": 1000.0 },
      { "name": "scaleByDistance_nearValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 1 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 10000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "clampToGround", "label": "是否贴地", "type": "radio", "defval": false },
      { "name": "visibleDepth", "label": "是否被遮挡", "type": "radio", "defval": true }
    ]
  },
 
  "div": {
    "name": "DIV点标记",
    "style": [
      { "name": "html", "label": "Html文本", "type": "hidden", "defval": "" },
 
      {
        "name": "horizontalOrigin",
        "label": "横向定位",
        "type": "combobox",
        "valType": "number",
        "defval": 0,
        "data": [
          { "label": "左边", "value": 1 },
          { "label": "居中", "value": 0 },
          { "label": "右边", "value": -1 }
        ]
      },
      {
        "name": "verticalOrigin",
        "label": "垂直定位",
        "type": "combobox",
        "valType": "number",
        "defval": 0,
        "data": [
          { "label": "顶部", "value": -1 },
          { "label": "居中", "value": 0 },
          { "label": "底部", "value": 1 }
        ]
      },
 
      {
        "name": "scaleByDistance",
        "label": "是否按视距缩放",
        "type": "radio",
        "defval": false,
        "impact": ["scaleByDistance_far", "scaleByDistance_farValue", "scaleByDistance_near", "scaleByDistance_nearValue"]
      },
      { "name": "scaleByDistance_far", "isImpact": true, "label": "上限", "type": "number", "step": 1, "defval": 1000000.0 },
      { "name": "scaleByDistance_farValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 0.1 },
      { "name": "scaleByDistance_near", "isImpact": true, "label": "下限", "type": "number", "step": 1, "defval": 1000.0 },
      { "name": "scaleByDistance_nearValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 1 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 10000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "clampToGround", "label": "是否贴地", "type": "radio", "defval": false }
    ]
  },
 
  "fontBillboard": {
    "name": "字体点标记",
    "style": [
      { "name": "iconClass", "label": "字体样式", "type": "label", "defval": "fa fa-automobile" },
      { "name": "iconSize", "label": "字体大小", "type": "number", "step": 1, "defval": 50 },
 
      { "name": "color", "label": "颜色", "type": "color", "defval": "#00ffff" },
      { "name": "opacity", "label": "透明度", "type": "slider", "defval": 1.0, "min": 0, "max": 1, "step": 0.01 },
 
      {
        "name": "horizontalOrigin",
        "label": "横向对齐",
        "type": "combobox",
        "valType": "number",
        "defval": 0,
        "data": [
          { "label": "左边", "value": 1 },
          { "label": "居中", "value": 0 },
          { "label": "右边", "value": -1 }
        ]
      },
      {
        "name": "verticalOrigin",
        "label": "垂直对齐",
        "type": "combobox",
        "valType": "number",
        "defval": 1,
        "data": [
          { "label": "顶部", "value": -1 },
          { "label": "居中", "value": 0 },
          { "label": "底部", "value": 1 }
        ]
      },
 
      { "name": "rotationDegree", "label": "旋转角度", "type": "number", "step": 1, "defval": 0.0 },
 
      {
        "name": "scaleByDistance",
        "label": "是否按视距缩放",
        "type": "radio",
        "defval": false,
        "impact": ["scaleByDistance_far", "scaleByDistance_farValue", "scaleByDistance_near", "scaleByDistance_nearValue"]
      },
      { "name": "scaleByDistance_far", "isImpact": true, "label": "上限", "type": "number", "step": 1, "defval": 1000000.0 },
      { "name": "scaleByDistance_farValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 0.1 },
      { "name": "scaleByDistance_near", "isImpact": true, "label": "下限", "type": "number", "step": 1, "defval": 1000.0 },
      { "name": "scaleByDistance_nearValue", "isImpact": true, "label": "比例值", "type": "number", "step": 1, "defval": 1 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 10000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "clampToGround", "label": "是否贴地", "type": "radio", "defval": false },
      { "name": "visibleDepth", "label": "是否被遮挡", "type": "radio", "defval": true }
    ]
  },
 
  "model": {
    "name": "gltf模型",
    "style": [
      { "name": "url", "label": "路径", "type": "label", "defval": "" },
      { "name": "scale", "label": "比例", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "heading", "label": "方向角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "pitch", "label": "俯仰角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "roll", "label": "翻滚角", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "minimumPixelSize", "label": "最小像素大小", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": false, "impact": ["color"] },
      { "name": "color", "isImpact": true, "label": "颜色", "type": "color", "defval": "#ffffff" },
      { "name": "opacity", "label": "透明度", "type": "slider", "defval": 1.0, "min": 0, "max": 1, "step": 0.01 },
 
      {
        "name": "silhouette",
        "label": "是否轮廓",
        "type": "radio",
        "defval": false,
        "impact": ["silhouetteColor", "silhouetteSize", "silhouetteAlpha"]
      },
      { "name": "silhouetteColor", "isImpact": true, "label": "轮廓颜色", "type": "color", "defval": "#ff0000" },
      { "name": "silhouetteSize", "isImpact": true, "label": "轮廓宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "silhouetteAlpha", "isImpact": true, "label": "轮廓透明度", "type": "slider", "defval": 0.8, "min": 0.01, "max": 1, "step": 0.01 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "runAnimations", "label": "是否动画", "type": "radio", "defval": true },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": true },
      { "name": "clampToGround", "label": "是否贴地", "type": "radio", "defval": false }
    ]
  },
 
  "circle": {
    "name": "圆",
    "style": [
      { "name": "radius", "label": "半径", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "diffHeight", "label": "立体高度", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["materialType", "color", "opacity"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color", "impact": ["color", "opacity"] },
          { "label": "网格", "value": "Grid", "impact": ["color", "opacity", "cellAlpha", "lineCount", "lineThickness", "stRotationDegree"] },
          { "label": "条纹", "value": "Stripe", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "棋盘", "value": "Checkerboard", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "图片", "value": "Image", "impact": ["image", "opacity", "stRotationDegree"] },
          { "label": "波纹效果", "value": "CircleWave", "impact": ["color", "opacity", "speed", "count", "gradient"] },
          { "label": "放大扫描线", "value": "ScanLine", "impact": ["color", "opacity", "speed"] },
          { "label": "雷达线", "value": "RadarLine", "impact": ["color", "opacity", "speed"] },
          { "label": "波纹雷达", "value": "RadarWave", "impact": ["color", "opacity", "speed"] }
        ]
      },
      { "name": "speed", "isImpact": true, "label": "速度", "type": "number", "step": 1, "defval": 10.0 },
      { "name": "count", "isImpact": true, "label": "波纹圈数", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "gradient", "label": "圈间系数", "type": "number", "step": 0.1, "defval": 0.1 },
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
      { "name": "evenColor", "isImpact": true, "label": "主色", "type": "color", "defval": "#ffffff" },
      { "name": "oddColor", "isImpact": true, "label": "衬色", "type": "color", "defval": "#000000" },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 2 },
      { "name": "image", "isImpact": true, "label": "图片", "type": "label", "defval": "img/textures/poly-lake.jpg" },
 
      { "name": "color", "isImpact": true, "label": "填充颜色", "type": "color", "defval": "#3388ff" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
      { "name": "stRotationDegree", "label": "填充方向", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "rotationDegree", "label": "旋转角度", "type": "number", "step": 1, "defval": 0.0 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false },
      { "name": "clampToGround", "label": "是否贴地", "type": "hidden", "defval": false },
      { "name": "zIndex", "label": "层级顺序", "type": "number", "step": 1, "defval": 0.0 }
    ]
  },
 
  "ellipse": {
    "name": "椭圆",
    "style": [
      { "name": "semiMinorAxis", "label": "短半径", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "semiMajorAxis", "label": "长半径", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "diffHeight", "label": "立体高度", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["materialType", "color", "opacity", "stRotationDegree"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color", "impact": ["color", "opacity"] },
          { "label": "波纹", "value": "CircleWave", "impact": ["color", "opacity", "speed", "count", "gradient"] },
          { "label": "网格", "value": "Grid", "impact": ["cellAlpha", "lineCount", "lineThickness"] },
          { "label": "条纹", "value": "Stripe", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "棋盘", "value": "Checkerboard", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "图片", "value": "Image", "impact": ["image", "opacity", "stRotationDegree"] }
        ]
      },
      { "name": "speed", "isImpact": true, "label": "速度", "type": "number", "step": 1, "defval": 10.0 },
      { "name": "count", "isImpact": true, "label": "波纹圈数", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "gradient", "isImpact": true, "label": "圈间系数", "type": "number", "step": 0.1, "defval": 0.1 },
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
      { "name": "evenColor", "isImpact": true, "label": "主色", "type": "color", "defval": "#000000" },
      { "name": "oddColor", "isImpact": true, "label": "衬色", "type": "color", "defval": "#ffffff" },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 2 },
      { "name": "image", "isImpact": true, "label": "图片", "type": "label", "defval": "img/textures/poly-lake.jpg" },
 
      { "name": "color", "isImpact": true, "label": "填充颜色", "type": "color", "defval": "#3388ff" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
      { "name": "stRotationDegree", "isImpact": true, "label": "填充方向", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "number", "step": 1, "defval": 1 },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "rotationDegree", "label": "旋转角度", "type": "number", "step": 1, "defval": 0.0 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false },
      { "name": "clampToGround", "label": "是否贴地", "type": "hidden", "defval": false },
      { "name": "zIndex", "label": "层级顺序", "type": "number", "step": 1, "defval": 0.0 }
    ]
  },
 
  "cylinder": {
    "name": "圆锥体",
    "style": [
      { "name": "topRadius", "label": "顶部半径", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "bottomRadius", "label": "底部半径", "type": "number", "step": 1, "defval": 100.0 },
      { "name": "length", "label": "锥体高度", "type": "number", "step": 1, "defval": 100.0 },
 
      { "name": "heading", "label": "方向角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "pitch", "label": "俯仰角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "roll", "label": "翻滚角", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["color", "opacity"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color" },
          { "label": "波纹", "value": "CircleWave", "impact": ["speed", "count", "gradient"] }
        ]
      },
      { "name": "speed", "isImpact": true, "label": "速度", "type": "number", "step": 1, "defval": 10.0 },
      { "name": "count", "isImpact": true, "label": "波纹圈数", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "gradient", "isImpact": true, "label": "圈间系数", "type": "number", "step": 1, "defval": 0.1 },
 
      { "name": "color", "isImpact": true, "label": "填充颜色", "type": "color", "defval": "#00FF00" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "hidden", "defval": 1 },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "numberOfVerticalLines", "label": "边线边数", "type": "number", "step": 1, "defval": 16.0 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false }
    ]
  },
 
  "ellipsoid": {
    "name": "球体",
    "style": [
      { "name": "radii_x", "label": "X半径", "type": "number", "step": 1, "defval": 100.0 },
      { "name": "radii_y", "label": "Y半径", "type": "number", "step": 1, "defval": 100.0 },
      { "name": "radii_z", "label": "Z半径", "type": "number", "step": 1, "defval": 100.0 },
 
      { "name": "innerRadii_x", "label": "内部X半径", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "innerRadii_y", "label": "内部Y半径", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "innerRadii_z", "label": "内部Z半径", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "minimumClockDegree", "label": "最小时钟角度", "type": "hidden", "defval": 0.0 },
      { "name": "maximumClockDegree", "label": "最大时钟角度", "type": "hidden", "defval": 360.0 },
      { "name": "minimumConeDegree", "label": "最小锥角", "type": "hidden", "defval": 0.0 },
      { "name": "maximumConeDegree", "label": "最大圆锥角", "type": "hidden", "defval": 180.0 },
 
      { "name": "heading", "label": "方向角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "pitch", "label": "俯仰角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "roll", "label": "翻滚角", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["materialType", "color", "opacity"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color", "impact": ["color", "opacity"] },
          { "label": "网格", "value": "Grid", "impact": ["cellAlpha", "lineCount", "lineThickness"] },
          { "label": "条纹", "value": "Stripe", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "波纹", "value": "EllipsoidWave", "impact": ["color", "opacity", "speed"] },
          { "label": "电弧", "value": "EllipsoidElectric", "impact": ["color", "opacity", "speed"] }
        ]
      },
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
      { "name": "evenColor", "isImpact": true, "label": "主色", "type": "color", "defval": "#000000" },
      { "name": "oddColor", "isImpact": true, "label": "衬色", "type": "color", "defval": "#ffffff" },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 2 },
      { "name": "speed", "isImpact": true, "label": "速度", "type": "number", "step": 1, "defval": 8.0 },
 
      { "name": "color", "isImpact": true, "label": "颜色", "type": "color", "defval": "#00FF00" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "label": "边框宽度", "type": "hidden", "defval": 1.0 },
      { "name": "outlineColor", "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false }
    ]
  },
 
  "plane": {
    "name": "平面",
    "style": [
      { "name": "dimensions_x", "label": "长度", "type": "number", "step": 1, "defval": 100.0 },
      { "name": "dimensions_y", "label": "宽度", "type": "number", "step": 1, "defval": 100.0 },
 
      {
        "name": "plane_normal",
        "label": "方向",
        "type": "combobox",
        "defval": "z",
        "data": [
          { "label": "X轴", "value": "x" },
          { "label": "Y轴", "value": "y" },
          { "label": "Z轴", "value": "z" }
        ]
      },
      { "name": "plane_distance", "label": "偏移距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "heading", "label": "方向角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "pitch", "label": "俯仰角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "roll", "label": "翻滚角", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["materialType", "color", "opacity"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color", "impact": ["color", "opacity"] },
          { "label": "网格", "value": "Grid", "impact": ["color", "opacity", "cellAlpha", "lineCount", "lineThickness"] },
          { "label": "条纹", "value": "Stripe", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "棋盘", "value": "Checkerboard", "impact": ["repeat", "evenColor", "oddColor"] }
        ]
      },
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
      { "name": "evenColor", "isImpact": true, "label": "主色", "type": "color", "defval": "#000000" },
      { "name": "oddColor", "isImpact": true, "label": "衬色", "type": "color", "defval": "#ffffff" },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 2 },
 
      { "name": "color", "isImpact": true, "label": "颜色", "type": "color", "defval": "#00FF00" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "hidden", "defval": 1.0 },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false }
    ]
  },
 
  "box": {
    "name": "盒子",
    "style": [
      { "name": "dimensions_x", "label": "盒子长度", "type": "number", "step": 1, "defval": 100.0 },
      { "name": "dimensions_y", "label": "盒子宽度", "type": "number", "step": 1, "defval": 100.0 },
      { "name": "dimensions_z", "label": "盒子高度", "type": "number", "step": 1, "defval": 100.0 },
 
      { "name": "heading", "label": "方向角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "pitch", "label": "俯仰角", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "roll", "label": "翻滚角", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["materialType", "color", "opacity"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color", "impact": ["color", "opacity"] },
          { "label": "网格", "value": "Grid", "impact": ["color", "opacity", "cellAlpha", "lineCount", "lineThickness"] },
          { "label": "条纹", "value": "Stripe", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "棋盘", "value": "Checkerboard", "impact": ["repeat", "evenColor", "oddColor"] }
        ]
      },
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
      { "name": "evenColor", "isImpact": true, "label": "主色", "type": "color", "defval": "#000000" },
      { "name": "oddColor", "isImpact": true, "label": "衬色", "type": "color", "defval": "#ffffff" },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 2 },
 
      { "name": "color", "isImpact": true, "label": "颜色", "type": "color", "defval": "#00FF00" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "hidden", "defval": 1.0 },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false },
      { "name": "clampToGround", "label": "是否贴地", "type": "radio", "defval": false }
    ]
  },
 
  "polyline": {
    "name": "线",
    "style": [
      {
        "name": "materialType",
        "label": "线型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "实线", "value": "Color" },
          { "label": "虚线", "value": "PolylineDash", "impact": ["dashLength"] },
          { "label": "衬色线", "value": "PolylineOutline", "impact": ["outlineColor", "outlineWidth"] },
          { "label": "光晕", "value": "PolylineGlow", "impact": ["glowPower"] },
          { "label": "箭头", "value": "PolylineArrow" },
          { "label": "流动线", "value": "LineFlow", "impact": ["speed", "image", "repeat"] },
          { "label": "OD线", "value": "ODLine", "impact": ["speed"] },
          { "label": "闪烁线", "value": "LineFlicker", "impact": ["speed"] },
          { "label": "轨迹线", "value": "LineTrail", "impact": ["speed"] }
        ]
      },
      { "name": "dashLength", "isImpact": true, "label": "虚线间长", "type": "number", "step": 1, "defval": 16.0 },
      { "name": "outlineColor", "isImpact": true, "label": "衬色颜色", "type": "color", "defval": "#ffffff" },
      { "name": "outlineWidth", "isImpact": true, "label": "衬色宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "glowPower", "isImpact": true, "label": "高亮强度", "type": "number", "step": 1, "defval": 0.25 },
      { "name": "image", "isImpact": true, "label": "图片", "type": "label", "defval": "img/textures/line-color-yellow.png" },
      { "name": "speed", "isImpact": true, "label": "速度", "type": "number", "step": 1, "defval": 10.0 },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 1 },
 
      { "name": "color", "label": "颜色", "type": "color", "defval": "#3388ff" },
      { "name": "opacity", "label": "透明度", "type": "slider", "defval": 1.0, "min": 0, "max": 1, "step": 0.01 },
      { "name": "width", "label": "线宽", "type": "number", "step": 1, "defval": 4.0 },
 
      { "name": "closure", "label": "是否闭合", "type": "radio", "defval": false },
      { "name": "clampToGround", "label": "是否贴地", "type": "radio", "defval": false },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "zIndex", "label": "层级顺序", "type": "number", "step": 1, "defval": 0.0 }
    ]
  },
 
  "polylineVolume": {
    "name": "管道线",
    "style": [
      { "name": "color", "label": "颜色", "type": "color", "defval": "#00FF00" },
      { "name": "opacity", "label": "透明度", "type": "slider", "defval": 1.0, "min": 0, "max": 1, "step": 0.01 },
      { "name": "radius", "label": "半径", "type": "number", "step": 1, "defval": 10.0 },
      {
        "name": "shape",
        "label": "形状",
        "type": "combobox",
        "defval": "pipeline",
        "data": [
          { "label": "空心管", "value": "pipeline" },
          { "label": "实心管", "value": "circle" },
          { "label": "星状管", "value": "star" }
        ]
      },
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineColor", "outlineOpacity"] },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false }
    ]
  },
 
  "wall": {
    "name": "墙体",
    "style": [
      { "name": "diffHeight", "label": "墙高", "type": "number", "step": 1, "defval": 100.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["materialType", "color", "opacity"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color", "impact": ["color", "opacity"] },
          { "label": "流动效果", "value": "LineFlow", "impact": ["color", "opacity", "speed", "image", "repeat_x", "repeat_y", "axisY"] },
          { "label": "走马灯效果", "value": "WallScroll", "impact": ["color", "opacity", "speed", "image", "count"] },
          { "label": "文本", "value": "Text", "impact": ["fillColor", "opacity", "text", "font_size", "font_weight", "font_family", "font_style"] },
          { "label": "网格", "value": "Grid", "impact": ["color", "opacity", "cellAlpha", "lineCount", "lineThickness"] },
          { "label": "条纹", "value": "Stripe", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "棋盘", "value": "Checkerboard", "impact": ["repeat", "evenColor", "oddColor"] }
        ]
      },
      { "name": "speed", "isImpact": true, "label": "速度", "type": "number", "step": 1, "defval": 10.0 },
      { "name": "image", "isImpact": true, "label": "图片", "type": "label", "defval": "img/textures/fence.png" },
      { "name": "repeat_x", "isImpact": true, "label": "X重复数量", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "repeat_y", "isImpact": true, "label": "Y重复数量", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "axisY", "isImpact": true, "label": "竖直方向", "type": "radio", "defval": false },
      { "name": "count", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 1.0 },
 
      { "name": "text", "isImpact": true, "label": "文本内容", "type": "textarea", "defval": "文字" },
      { "name": "fillColor", "isImpact": true, "label": "文本颜色", "type": "color", "defval": "#00FF00" },
      {
        "name": "font_family",
        "label": "字体",
        "type": "combobox",
        "defval": "楷体",
        "data": [
          { "label": "微软雅黑", "value": "微软雅黑" },
          { "label": "宋体", "value": "宋体" },
          { "label": "楷体", "value": "楷体" },
          { "label": "隶书", "value": "隶书" },
          { "label": "黑体", "value": "黑体" }
        ]
      },
      { "name": "font_size", "isImpact": true, "label": "字体大小", "type": "number", "step": 1, "defval": 100 },
      {
        "name": "font_weight",
        "isImpact": true,
        "label": "是否加粗",
        "type": "combobox",
        "defval": "normal",
        "data": [
          { "label": "是", "value": "bold" },
          { "label": "否", "value": "normal" }
        ]
      },
      {
        "name": "font_style",
        "isImpact": true,
        "label": "是否斜体",
        "type": "combobox",
        "defval": "normal",
        "data": [
          { "label": "是", "value": "italic" },
          { "label": "否", "value": "normal" }
        ]
      },
 
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
      { "name": "evenColor", "isImpact": true, "label": "主色", "type": "color", "defval": "#000000" },
      { "name": "oddColor", "isImpact": true, "label": "衬色", "type": "color", "defval": "#ffffff" },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 1 },
 
      { "name": "color", "isImpact": true, "label": "颜色", "type": "color", "defval": "#00FF00" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "closure", "label": "是否闭合", "type": "radio", "defval": false },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "hidden", "defval": 1.0 },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false }
    ]
  },
 
  "corridor": {
    "name": "走廊",
    "style": [
      { "name": "height", "label": "高程", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "diffHeight", "label": "立体高度", "type": "hidden", "step": 1, "defval": 0.0 },
 
      { "name": "width", "label": "走廊宽度", "type": "number", "step": 1, "defval": 100.0 },
      {
        "name": "cornerType",
        "label": "顶点样式",
        "type": "combobox",
        "valType": "number",
        "defval": 0,
        "data": [
          { "label": "圆滑", "value": 0 },
          { "label": "斜接", "value": 1 },
          { "label": "斜切", "value": 2 }
        ]
      },
 
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color" },
          { "label": "网格", "value": "Grid", "impact": ["cellAlpha", "lineCount", "lineThickness"] }
        ]
      },
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "color", "label": "颜色", "type": "color", "defval": "#3388ff" },
      { "name": "opacity", "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false },
      { "name": "clampToGround", "label": "是否贴地", "type": "hidden", "defval": false },
      { "name": "zIndex", "label": "层级顺序", "type": "number", "step": 1, "defval": 0.0 }
    ]
  },
 
  "rectangle": {
    "name": "矩形",
    "style": [
      { "name": "height", "label": "高程", "type": "number", "step": 1, "defval": 0.0 },
      {
        "name": "clampToGround",
        "label": "是否贴地",
        "type": "hidden",
        "defval": false,
        "data": [{ "label": "纯色", "value": false, "impact": ["diffHeight"] }]
      },
      { "name": "diffHeight", "isImpact": true, "label": "立体高度", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["materialType", "color", "opacity"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color", "impact": ["color", "opacity"] },
          { "label": "网格", "value": "Grid", "impact": ["color", "opacity", "cellAlpha", "lineCount", "lineThickness"] },
          { "label": "条纹", "value": "Stripe", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "棋盘", "value": "Checkerboard", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "文本", "value": "Text", "impact": ["fillColor", "opacity", "text", "font_size", "font_weight", "font_family", "font_style"] },
          { "label": "图片", "value": "Image", "impact": ["image", "opacity"] }
        ]
      },
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
      { "name": "evenColor", "isImpact": true, "label": "主色", "type": "color", "defval": "#000000" },
      { "name": "oddColor", "isImpact": true, "label": "衬色", "type": "color", "defval": "#ffffff" },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 2 },
      { "name": "image", "isImpact": true, "label": "图片", "type": "label", "defval": "img/textures/poly-lake.jpg" },
 
      { "name": "color", "isImpact": true, "label": "颜色", "type": "color", "defval": "#3388ff" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "text", "isImpact": true, "label": "文本内容", "type": "textarea", "defval": "文字" },
      { "name": "fillColor", "isImpact": true, "label": "文本颜色", "type": "color", "defval": "#00FF00" },
      {
        "name": "font_family",
        "isImpact": true,
        "label": "字体",
        "type": "combobox",
        "defval": "楷体",
        "data": [
          { "label": "微软雅黑", "value": "微软雅黑" },
          { "label": "宋体", "value": "宋体" },
          { "label": "楷体", "value": "楷体" },
          { "label": "隶书", "value": "隶书" },
          { "label": "黑体", "value": "黑体" }
        ]
      },
      { "name": "font_size", "isImpact": true, "label": "字体大小", "type": "number", "step": 1, "defval": 100 },
      {
        "name": "font_weight",
        "isImpact": true,
        "label": "是否加粗",
        "type": "combobox",
        "defval": "normal",
        "data": [
          { "label": "是", "value": "bold" },
          { "label": "否", "value": "normal" }
        ]
      },
      {
        "name": "font_style",
        "isImpact": true,
        "label": "是否斜体",
        "type": "combobox",
        "defval": "normal",
        "data": [
          { "label": "是", "value": "italic" },
          { "label": "否", "value": "normal" }
        ]
      },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "number", "step": 1, "defval": 1 },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "defval": 0.6, "min": 0, "max": 1, "step": 0.01 },
 
      { "name": "rotationDegree", "label": "旋转角度", "type": "number", "step": 1, "defval": 0.0 },
      { "name": "stRotationDegree", "label": "材质角度", "type": "number", "step": 1, "defval": 0.0 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "clampToGround", "label": "是否贴地", "type": "hidden", "defval": false },
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false },
      { "name": "zIndex", "label": "层级顺序", "type": "number", "step": 1, "defval": 0.0 }
    ]
  },
 
  "polygon": {
    "name": "面",
    "style": [
      { "name": "diffHeight", "label": "立体高度", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "fill", "label": "是否填充", "type": "radio", "defval": true, "impact": ["materialType", "opacity"] },
      {
        "name": "materialType",
        "label": "填充类型",
        "type": "combobox",
        "defval": "Color",
        "data": [
          { "label": "纯色", "value": "Color", "impact": ["color", "opacity"] },
          { "label": "网格", "value": "Grid", "impact": ["color", "opacity", "cellAlpha", "lineCount", "lineThickness"] },
          { "label": "条纹", "value": "Stripe", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "棋盘", "value": "Checkerboard", "impact": ["repeat", "evenColor", "oddColor"] },
          { "label": "图片", "value": "Image", "impact": ["opacity", "image", "stRotationDegree"] }
        ]
      },
      { "name": "lineCount", "isImpact": true, "label": "网格数量", "type": "number", "step": 1, "defval": 8.0 },
      { "name": "lineThickness", "isImpact": true, "label": "网格宽度", "type": "number", "step": 1, "defval": 2.0 },
      { "name": "cellAlpha", "isImpact": true, "label": "填充透明度", "type": "slider", "defval": 0.1, "min": 0, "max": 1, "step": 0.01 },
      { "name": "evenColor", "isImpact": true, "label": "主色", "type": "color", "defval": "#000000" },
      { "name": "oddColor", "isImpact": true, "label": "衬色", "type": "color", "defval": "#ffffff" },
      { "name": "repeat", "isImpact": true, "label": "数量", "type": "number", "step": 1, "defval": 2 },
      { "name": "image", "isImpact": true, "label": "图片", "type": "label", "defval": "img/textures/poly-lake.jpg" },
 
      { "name": "color", "isImpact": true, "label": "颜色", "type": "color", "defval": "#3388ff" },
      { "name": "opacity", "isImpact": true, "label": "透明度", "type": "slider", "min": 0, "max": 1, "step": 0.01, "defval": 0.6 },
      { "name": "stRotationDegree", "isImpact": true, "label": "填充方向", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "outline", "label": "是否边框", "type": "radio", "defval": false, "impact": ["outlineWidth", "outlineColor", "outlineOpacity"] },
      { "name": "outlineWidth", "isImpact": true, "label": "边框宽度", "type": "number", "step": 1, "defval": 1.0 },
      { "name": "outlineColor", "isImpact": true, "label": "边框颜色", "type": "color", "defval": "#000000" },
      { "name": "outlineOpacity", "isImpact": true, "label": "边框透明度", "type": "slider", "min": 0, "max": 1, "step": 0.01, "defval": 0.6 },
 
      {
        "name": "distanceDisplayCondition",
        "label": "是否按视距显示",
        "type": "radio",
        "defval": false,
        "impact": ["distanceDisplayCondition_far", "distanceDisplayCondition_near"]
      },
      { "name": "distanceDisplayCondition_far", "isImpact": true, "label": "最大距离", "type": "number", "step": 1, "defval": 100000.0 },
      { "name": "distanceDisplayCondition_near", "isImpact": true, "label": "最小距离", "type": "number", "step": 1, "defval": 0.0 },
 
      { "name": "hasShadows", "label": "是否阴影", "type": "radio", "defval": false },
 
      { "name": "clampToGround", "label": "是否贴地", "type": "hidden", "defval": false },
      { "name": "zIndex", "label": "层级顺序", "type": "number", "step": 1, "defval": 0.0 }
    ]
  }
}