deeptwins-engine-3d 0.0.42
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/LICENSE +21 -0
- package/README.md +39 -0
- package/dist/assets/Build/DeepTwins/Image/line.png +0 -0
- package/dist/assets/Build/DeepTwins/Image/qingtian/backav9.jpg +0 -0
- package/dist/assets/Build/DeepTwins/Image/qingtian/bottomav9.jpg +0 -0
- package/dist/assets/Build/DeepTwins/Image/qingtian/frontav9.jpg +0 -0
- package/dist/assets/Build/DeepTwins/Image/qingtian/leftav9.jpg +0 -0
- package/dist/assets/Build/DeepTwins/Image/qingtian/rightav9.jpg +0 -0
- package/dist/assets/Build/DeepTwins/Image/qingtian/topav9.jpg +0 -0
- package/dist/assets/Build/DeepTwins/Image/video-mask.png +0 -0
- package/dist/assets/Build/DeepTwins/Image/wall.png +0 -0
- package/dist/assets/Build/DeepTwins/Image/wanxia/SunSetBack.png +0 -0
- package/dist/assets/Build/DeepTwins/Image/wanxia/SunSetDown.png +0 -0
- package/dist/assets/Build/DeepTwins/Image/wanxia/SunSetFront.png +0 -0
- package/dist/assets/Build/DeepTwins/Image/wanxia/SunSetLeft.png +0 -0
- package/dist/assets/Build/DeepTwins/Image/wanxia/SunSetRight.png +0 -0
- package/dist/assets/Build/DeepTwins/Image/wanxia/SunSetUp.png +0 -0
- package/dist/assets/Build/DeepTwins/YunJing/yunjing-for-cesium.js +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_0.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_1.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_10.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_11.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_12.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_13.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_14.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_15.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_16.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_17.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_18.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_19.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_2.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_20.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_21.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_22.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_23.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_24.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_25.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_26.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_27.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_3.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_4.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_5.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_6.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_7.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_8.json +1 -0
- package/dist/assets/Build/Map3d/Assets/IAU2006_XYS/IAU2006_XYS_9.json +1 -0
- package/dist/assets/Build/Map3d/Assets/Images/bing_maps_credit.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Images/cesium_credit.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Images/google_earth_credit.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Images/ion-credit.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/LensFlare/DirtMask.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/LensFlare/StarBurst.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/0/0/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/0/1/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/1/0/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/1/0/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/1/1/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/1/1/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/1/2/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/1/2/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/1/3/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/1/3/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/0/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/0/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/0/2.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/0/3.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/1/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/1/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/1/2.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/1/3.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/2/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/2/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/2/2.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/2/3.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/3/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/3/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/3/2.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/3/3.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/4/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/4/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/4/2.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/4/3.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/5/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/5/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/5/2.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/5/3.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/6/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/6/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/6/2.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/6/3.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/7/0.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/7/1.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/7/2.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/2/7/3.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/NaturalEarthII/tilemapresource.xml +14 -0
- package/dist/assets/Build/Map3d/Assets/Textures/SkyBox/tycho2t3_80_mx.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/SkyBox/tycho2t3_80_my.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/SkyBox/tycho2t3_80_mz.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/SkyBox/tycho2t3_80_px.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/SkyBox/tycho2t3_80_py.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/SkyBox/tycho2t3_80_pz.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/airfield.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/airport.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/alcohol-shop.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/america-football.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/art-gallery.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/bakery.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/bank.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/bar.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/baseball.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/basketball.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/beer.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/bicycle.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/building.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/bus.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/cafe.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/camera.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/campsite.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/car.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/cemetery.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/cesium.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/chemist.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/cinema.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/circle-stroked.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/circle.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/city.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/clothing-store.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/college.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/commercial.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/cricket.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/cross.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/dam.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/danger.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/disability.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/dog-park.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/embassy.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/emergency-telephone.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/entrance.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/farm.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/fast-food.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/ferry.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/fire-station.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/fuel.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/garden.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/gift.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/golf.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/grocery.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/hairdresser.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/harbor.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/heart.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/heliport.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/hospital.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/ice-cream.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/industrial.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/land-use.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/laundry.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/library.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/lighthouse.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/lodging.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/logging.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/london-underground.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/marker-stroked.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/marker.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/minefield.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/mobilephone.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/monument.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/museum.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/music.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/oil-well.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/park.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/park2.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/parking-garage.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/parking.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/pharmacy.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/pitch.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/place-of-worship.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/playground.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/police.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/polling-place.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/post.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/prison.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/rail-above.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/rail-light.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/rail-metro.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/rail-underground.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/rail.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/religious-christian.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/religious-jewish.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/religious-muslim.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/restaurant.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/roadblock.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/rocket.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/school.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/scooter.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/shop.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/skiing.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/slaughterhouse.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/soccer.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/square-stroked.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/square.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/star-stroked.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/star.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/suitcase.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/swimming.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/telephone.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/tennis.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/theatre.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/toilets.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/town-hall.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/town.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/triangle-stroked.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/triangle.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/village.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/warehouse.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/waste-basket.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/water.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/wetland.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/maki/zoo.png +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/moonSmall.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/pin.svg +1 -0
- package/dist/assets/Build/Map3d/Assets/Textures/waterNormals.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/Textures/waterNormalsSmall.jpg +0 -0
- package/dist/assets/Build/Map3d/Assets/approximateTerrainHeights.json +1 -0
- package/dist/assets/Build/Map3d/Cesium.js +16071 -0
- package/dist/assets/Build/Map3d/ThirdParty/Workers/package.json +1 -0
- package/dist/assets/Build/Map3d/ThirdParty/Workers/pako_deflate.min.js +1 -0
- package/dist/assets/Build/Map3d/ThirdParty/Workers/pako_inflate.min.js +1 -0
- package/dist/assets/Build/Map3d/ThirdParty/Workers/z-worker-pako.js +1 -0
- package/dist/assets/Build/Map3d/ThirdParty/basis_transcoder.wasm +0 -0
- package/dist/assets/Build/Map3d/ThirdParty/draco_decoder.wasm +0 -0
- package/dist/assets/Build/Map3d/ThirdParty/google-earth-dbroot-parser.js +1 -0
- package/dist/assets/Build/Map3d/Widgets/Animation/Animation.css +127 -0
- package/dist/assets/Build/Map3d/Widgets/Animation/lighter.css +70 -0
- package/dist/assets/Build/Map3d/Widgets/BaseLayerPicker/BaseLayerPicker.css +108 -0
- package/dist/assets/Build/Map3d/Widgets/BaseLayerPicker/lighter.css +22 -0
- package/dist/assets/Build/Map3d/Widgets/Cesium3DTilesInspector/Cesium3DTilesInspector.css +102 -0
- package/dist/assets/Build/Map3d/Widgets/CesiumInspector/CesiumInspector.css +113 -0
- package/dist/assets/Build/Map3d/Widgets/CesiumWidget/CesiumWidget.css +119 -0
- package/dist/assets/Build/Map3d/Widgets/CesiumWidget/lighter.css +14 -0
- package/dist/assets/Build/Map3d/Widgets/FullscreenButton/FullscreenButton.css +8 -0
- package/dist/assets/Build/Map3d/Widgets/Geocoder/Geocoder.css +70 -0
- package/dist/assets/Build/Map3d/Widgets/Geocoder/lighter.css +17 -0
- package/dist/assets/Build/Map3d/Widgets/I3SBuildingSceneLayerExplorer/I3SBuildingSceneLayerExplorer.css +27 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/ArcGisMapServiceWorldHillshade.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/ArcGisMapServiceWorldImagery.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/ArcGisMapServiceWorldOcean.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/bingAerial.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/bingAerialLabels.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/bingRoads.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/blueMarble.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/earthAtNight.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/mapQuestOpenStreetMap.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/mapboxSatellite.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/mapboxStreets.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/mapboxTerrain.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/naturalEarthII.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/openStreetMap.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/sentinel-2.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/stadiaAlidadeSmooth.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/stadiaAlidadeSmoothDark.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/stamenToner.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/ImageryProviders/stamenWatercolor.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/Mouse.svg +84 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/MouseLeft.svg +76 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/MouseMiddle.svg +76 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/MouseRight.svg +76 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/Touch.svg +120 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/TouchDrag.svg +129 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/TouchRotate.svg +76 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/TouchTilt.svg +135 -0
- package/dist/assets/Build/Map3d/Widgets/Images/NavigationHelp/TouchZoom.svg +74 -0
- package/dist/assets/Build/Map3d/Widgets/Images/TerrainProviders/CesiumWorldTerrain.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/TerrainProviders/Ellipsoid.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/TimelineIcons.png +0 -0
- package/dist/assets/Build/Map3d/Widgets/Images/info-loading.gif +0 -0
- package/dist/assets/Build/Map3d/Widgets/InfoBox/InfoBox.css +92 -0
- package/dist/assets/Build/Map3d/Widgets/InfoBox/InfoBoxDescription.css +178 -0
- package/dist/assets/Build/Map3d/Widgets/NavigationHelpButton/NavigationHelpButton.css +93 -0
- package/dist/assets/Build/Map3d/Widgets/NavigationHelpButton/lighter.css +38 -0
- package/dist/assets/Build/Map3d/Widgets/PerformanceWatchdog/PerformanceWatchdog.css +15 -0
- package/dist/assets/Build/Map3d/Widgets/ProjectionPicker/ProjectionPicker.css +38 -0
- package/dist/assets/Build/Map3d/Widgets/SceneModePicker/SceneModePicker.css +56 -0
- package/dist/assets/Build/Map3d/Widgets/SelectionIndicator/SelectionIndicator.css +20 -0
- package/dist/assets/Build/Map3d/Widgets/Timeline/Timeline.css +103 -0
- package/dist/assets/Build/Map3d/Widgets/Timeline/lighter.css +23 -0
- package/dist/assets/Build/Map3d/Widgets/VRButton/VRButton.css +8 -0
- package/dist/assets/Build/Map3d/Widgets/Viewer/Viewer.css +107 -0
- package/dist/assets/Build/Map3d/Widgets/VoxelInspector/VoxelInspector.css +16 -0
- package/dist/assets/Build/Map3d/Widgets/lighter.css +237 -0
- package/dist/assets/Build/Map3d/Widgets/lighterShared.css +46 -0
- package/dist/assets/Build/Map3d/Widgets/shared.css +103 -0
- package/dist/assets/Build/Map3d/Widgets/widgets.css +1342 -0
- package/dist/assets/Build/Map3d/Workers/chunk-26PPBGHW.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-2H32TJK3.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-3DLZAS7T.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-4RP6ACF6.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-55B3WQ6I.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-6CSMIMD7.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-A4R6HP5H.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-AUO2K2B5.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-BAH467HD.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-BC3RBQRQ.js +28 -0
- package/dist/assets/Build/Map3d/Workers/chunk-CZ6DDD6J.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-D32DZSEC.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-DG7B7W65.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-DLCTHPIV.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-E25VRLIZ.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-E2NX4UJ2.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-EP544XEE.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-EQTQGYI2.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-FMJWH3RL.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-FSU6RZ6S.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-FZEJ65E6.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-GKS4EDRQ.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-GMF7KJHC.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-HZQ2LRMY.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-I2ICH2LD.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-I4G5DYCC.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-IIT3SHXK.js +28 -0
- package/dist/assets/Build/Map3d/Workers/chunk-JBPQP6LH.js +66 -0
- package/dist/assets/Build/Map3d/Workers/chunk-JPOF5MJM.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-K4QHJFYW.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-MDIGQ5JT.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-MNEOPOLK.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-NLPIV6OK.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-NOHRD3OR.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-NYFH7JC3.js +27 -0
- package/dist/assets/Build/Map3d/Workers/chunk-NZWLV2A4.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-OWZATOOT.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-R6A52HT4.js +27 -0
- package/dist/assets/Build/Map3d/Workers/chunk-R6YRFJ3K.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-RCLU4DVL.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-REP6L7BH.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-SOSKHJVT.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-SPFUTSGC.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-TRWH7IZP.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-TTK4OD75.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-VSCNOKDU.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-WDSHVSF7.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-WV3AQKZG.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-XDITHZHZ.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-XLESIVYV.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-YGC52UMX.js +26 -0
- package/dist/assets/Build/Map3d/Workers/chunk-ZRPUDUIP.js +26 -0
- package/dist/assets/Build/Map3d/Workers/combineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createBoxGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createBoxOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createCircleGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createCircleOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createCoplanarPolygonGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createCoplanarPolygonOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createCorridorGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createCorridorOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createCylinderGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createCylinderOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createEllipseGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createEllipseOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createEllipsoidGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createEllipsoidOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createFrustumGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createFrustumOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createGroundPolylineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createPlaneGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createPlaneOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createPolygonGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createPolygonOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createPolylineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createPolylineVolumeGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createPolylineVolumeOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createRectangleGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createRectangleOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createSimplePolylineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createSphereGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createSphereOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createTaskProcessorWorker.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createVectorTileClampedPolylines.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createVectorTileGeometries.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createVectorTilePoints.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createVectorTilePolygons.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createVectorTilePolylines.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createVerticesFromHeightmap.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createVerticesFromQuantizedTerrainMesh.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createWallGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/createWallOutlineGeometry.js +26 -0
- package/dist/assets/Build/Map3d/Workers/decodeDraco.js +26 -0
- package/dist/assets/Build/Map3d/Workers/decodeGoogleEarthEnterprisePacket.js +26 -0
- package/dist/assets/Build/Map3d/Workers/decodeI3S.js +26 -0
- package/dist/assets/Build/Map3d/Workers/transcodeKTX2.js +56 -0
- package/dist/assets/Build/Map3d/Workers/transferTypedArrayTest.js +26 -0
- package/dist/assets/Build/Map3d/Workers/upsampleQuantizedTerrainMesh.js +26 -0
- package/dist/assets/Build/Map3d/index.cjs +16071 -0
- package/dist/assets/Build/Map3d/index.js +16071 -0
- package/dist/cameraControl/ModelRoamHistory.d.ts +28 -0
- package/dist/cameraControl/ModelRoamHistory.js +290 -0
- package/dist/cameraControl/ModelRoamRealTime.d.ts +136 -0
- package/dist/cameraControl/ModelRoamRealTime.js +668 -0
- package/dist/cameraControl/ModelRoamRunTime.d.ts +32 -0
- package/dist/cameraControl/ModelRoamRunTime.js +244 -0
- package/dist/cameraControl/Roam.d.ts +19 -0
- package/dist/cameraControl/Roam.js +414 -0
- package/dist/cameraControl/Rotate.d.ts +11 -0
- package/dist/cameraControl/Rotate.js +110 -0
- package/dist/cameraControl/RotateInPlace.d.ts +11 -0
- package/dist/cameraControl/RotateInPlace.js +96 -0
- package/dist/constant.d.ts +409 -0
- package/dist/constant.js +805 -0
- package/dist/deepTwins/index.d.ts +17 -0
- package/dist/deepTwins/index.js +118 -0
- package/dist/drawer/base.d.ts +51 -0
- package/dist/drawer/base.js +179 -0
- package/dist/drawer/index.d.ts +62 -0
- package/dist/drawer/index.js +350 -0
- package/dist/drawer/painter.d.ts +41 -0
- package/dist/drawer/painter.js +115 -0
- package/dist/drawer/shape/Ellipse.d.ts +10 -0
- package/dist/drawer/shape/Ellipse.js +62 -0
- package/dist/drawer/shape/Point.d.ts +12 -0
- package/dist/drawer/shape/Point.js +59 -0
- package/dist/drawer/shape/Polygon.d.ts +10 -0
- package/dist/drawer/shape/Polygon.js +87 -0
- package/dist/drawer/shape/Polyline.d.ts +11 -0
- package/dist/drawer/shape/Polyline.js +54 -0
- package/dist/drawer/shape/Rectangle.d.ts +10 -0
- package/dist/drawer/shape/Rectangle.js +85 -0
- package/dist/drawer/typings.d.ts +106 -0
- package/dist/drawer/typings.js +1 -0
- package/dist/global.less +3 -0
- package/dist/graphicLayer/BaseEntity.d.ts +12 -0
- package/dist/graphicLayer/BaseEntity.js +45 -0
- package/dist/graphicLayer/BaseLayer.d.ts +29 -0
- package/dist/graphicLayer/BaseLayer.js +340 -0
- package/dist/graphicLayer/BasePointPrimitive.d.ts +10 -0
- package/dist/graphicLayer/BasePointPrimitive.js +41 -0
- package/dist/graphicLayer/BasePrimitive.d.ts +12 -0
- package/dist/graphicLayer/BasePrimitive.js +50 -0
- package/dist/graphicLayer/BasePrimitiveInstance.d.ts +10 -0
- package/dist/graphicLayer/BasePrimitiveInstance.js +37 -0
- package/dist/graphicLayer/BaseSource.d.ts +33 -0
- package/dist/graphicLayer/BaseSource.js +599 -0
- package/dist/graphicLayer/BillboardEntity.d.ts +7 -0
- package/dist/graphicLayer/BillboardEntity.js +109 -0
- package/dist/graphicLayer/BillboardPrimitive.d.ts +7 -0
- package/dist/graphicLayer/BillboardPrimitive.js +95 -0
- package/dist/graphicLayer/BoxEntity.d.ts +7 -0
- package/dist/graphicLayer/BoxEntity.js +102 -0
- package/dist/graphicLayer/BoxPrimitive.d.ts +5 -0
- package/dist/graphicLayer/BoxPrimitive.js +43 -0
- package/dist/graphicLayer/BoxPrimitiveInstance.d.ts +7 -0
- package/dist/graphicLayer/BoxPrimitiveInstance.js +97 -0
- package/dist/graphicLayer/EllipseEntity.d.ts +7 -0
- package/dist/graphicLayer/EllipseEntity.js +113 -0
- package/dist/graphicLayer/EllipsePrimitive.d.ts +5 -0
- package/dist/graphicLayer/EllipsePrimitive.js +42 -0
- package/dist/graphicLayer/EllipsePrimitiveInstance.d.ts +7 -0
- package/dist/graphicLayer/EllipsePrimitiveInstance.js +105 -0
- package/dist/graphicLayer/EllipsoidEntity.d.ts +7 -0
- package/dist/graphicLayer/EllipsoidEntity.js +121 -0
- package/dist/graphicLayer/EllipsoidPrimitive.d.ts +5 -0
- package/dist/graphicLayer/EllipsoidPrimitive.js +43 -0
- package/dist/graphicLayer/EllipsoidPrimitiveInstance.d.ts +7 -0
- package/dist/graphicLayer/EllipsoidPrimitiveInstance.js +117 -0
- package/dist/graphicLayer/GraphicLayerCollection.d.ts +31 -0
- package/dist/graphicLayer/GraphicLayerCollection.js +387 -0
- package/dist/graphicLayer/HtmlEntity.d.ts +19 -0
- package/dist/graphicLayer/HtmlEntity.js +179 -0
- package/dist/graphicLayer/LabelEntity.d.ts +7 -0
- package/dist/graphicLayer/LabelEntity.js +113 -0
- package/dist/graphicLayer/LabelPrimitive.d.ts +7 -0
- package/dist/graphicLayer/LabelPrimitive.js +104 -0
- package/dist/graphicLayer/ModelEntity.d.ts +7 -0
- package/dist/graphicLayer/ModelEntity.js +125 -0
- package/dist/graphicLayer/ModelPrimitive.d.ts +5 -0
- package/dist/graphicLayer/ModelPrimitive.js +46 -0
- package/dist/graphicLayer/ModelPrimitiveInstance.d.ts +7 -0
- package/dist/graphicLayer/ModelPrimitiveInstance.js +96 -0
- package/dist/graphicLayer/PointEntity.d.ts +7 -0
- package/dist/graphicLayer/PointEntity.js +97 -0
- package/dist/graphicLayer/PointPrimitive.d.ts +7 -0
- package/dist/graphicLayer/PointPrimitive.js +83 -0
- package/dist/graphicLayer/PolygonEntity.d.ts +7 -0
- package/dist/graphicLayer/PolygonEntity.js +106 -0
- package/dist/graphicLayer/PolygonPrimitive.d.ts +5 -0
- package/dist/graphicLayer/PolygonPrimitive.js +42 -0
- package/dist/graphicLayer/PolygonPrimitiveInstance.d.ts +7 -0
- package/dist/graphicLayer/PolygonPrimitiveInstance.js +103 -0
- package/dist/graphicLayer/PolylineEntity.d.ts +7 -0
- package/dist/graphicLayer/PolylineEntity.js +99 -0
- package/dist/graphicLayer/PolylinePrimitive.d.ts +5 -0
- package/dist/graphicLayer/PolylinePrimitive.js +48 -0
- package/dist/graphicLayer/PolylinePrimitiveInstance.d.ts +7 -0
- package/dist/graphicLayer/PolylinePrimitiveInstance.js +93 -0
- package/dist/graphicLayer/PolylineVolumeEntity.d.ts +7 -0
- package/dist/graphicLayer/PolylineVolumeEntity.js +107 -0
- package/dist/graphicLayer/PolylineVolumePrimitive.d.ts +5 -0
- package/dist/graphicLayer/PolylineVolumePrimitive.js +42 -0
- package/dist/graphicLayer/PolylineVolumePrimitiveInstance.d.ts +7 -0
- package/dist/graphicLayer/PolylineVolumePrimitiveInstance.js +101 -0
- package/dist/graphicLayer/WallEntity.d.ts +7 -0
- package/dist/graphicLayer/WallEntity.js +99 -0
- package/dist/graphicLayer/WallPrimitive.d.ts +5 -0
- package/dist/graphicLayer/WallPrimitive.js +42 -0
- package/dist/graphicLayer/WallPrimitiveInstance.d.ts +7 -0
- package/dist/graphicLayer/WallPrimitiveInstance.js +95 -0
- package/dist/index.d.ts +64 -0
- package/dist/index.js +108 -0
- package/dist/map/Event.d.ts +12 -0
- package/dist/map/Event.js +284 -0
- package/dist/map/GroundSkyBox.d.ts +20 -0
- package/dist/map/GroundSkyBox.js +166 -0
- package/dist/map/Map.d.ts +66 -0
- package/dist/map/Map.js +658 -0
- package/dist/map/Property.d.ts +6 -0
- package/dist/map/Property.js +35 -0
- package/dist/material/CircleWaveMaterialProperty.d.ts +17 -0
- package/dist/material/CircleWaveMaterialProperty.js +108 -0
- package/dist/material/DynamicWallMaterialProperty.d.ts +45 -0
- package/dist/material/DynamicWallMaterialProperty.js +162 -0
- package/dist/material/ImageMaterial.d.ts +4 -0
- package/dist/material/ImageMaterial.js +35 -0
- package/dist/material/ImageMaterialProperty.d.ts +4 -0
- package/dist/material/ImageMaterialProperty.js +34 -0
- package/dist/material/PolylineTrailLinkMaterialProperty.d.ts +19 -0
- package/dist/material/PolylineTrailLinkMaterialProperty.js +102 -0
- package/dist/material/WeatherEffects.d.ts +16 -0
- package/dist/material/WeatherEffects.js +159 -0
- package/dist/measure/AreaMeasure.d.ts +19 -0
- package/dist/measure/AreaMeasure.js +97 -0
- package/dist/measure/AreaSurfaceMeasure.d.ts +30 -0
- package/dist/measure/AreaSurfaceMeasure.js +151 -0
- package/dist/measure/DistanceMeasure.d.ts +19 -0
- package/dist/measure/DistanceMeasure.js +91 -0
- package/dist/measure/DistanceSurfaceMeasure.d.ts +37 -0
- package/dist/measure/DistanceSurfaceMeasure.js +122 -0
- package/dist/measure/Measure.d.ts +111 -0
- package/dist/measure/Measure.js +177 -0
- package/dist/measure/index.d.ts +5 -0
- package/dist/measure/index.js +5 -0
- package/dist/measure/utils.d.ts +23 -0
- package/dist/measure/utils.js +58 -0
- package/dist/property/PositionProperty.d.ts +8 -0
- package/dist/property/PositionProperty.js +56 -0
- package/dist/tileLayer/ArcGisLayer.d.ts +5 -0
- package/dist/tileLayer/ArcGisLayer.js +41 -0
- package/dist/tileLayer/ImageryLayer.d.ts +6 -0
- package/dist/tileLayer/ImageryLayer.js +44 -0
- package/dist/tileLayer/RasterLayer.d.ts +4 -0
- package/dist/tileLayer/RasterLayer.js +23 -0
- package/dist/tileLayer/WmsLayer.d.ts +6 -0
- package/dist/tileLayer/WmsLayer.js +26 -0
- package/dist/tileLayer/WmtsLayer.d.ts +4 -0
- package/dist/tileLayer/WmtsLayer.js +23 -0
- package/dist/tool/PrimitiveCluster.d.ts +37 -0
- package/dist/tool/PrimitiveCluster.js +705 -0
- package/dist/tool/TimerInterval.d.ts +10 -0
- package/dist/tool/TimerInterval.js +58 -0
- package/dist/tool/cesiumExtends/Subscriber/index.d.ts +66 -0
- package/dist/tool/cesiumExtends/Subscriber/index.js +246 -0
- package/dist/tool/common.d.ts +36 -0
- package/dist/tool/common.js +388 -0
- package/dist/tool/heatmap.js +631 -0
- package/dist/tool/utils.d.ts +30 -0
- package/dist/tool/utils.js +235 -0
- package/dist/toolTip/index.d.ts +13 -0
- package/dist/toolTip/index.js +73 -0
- package/dist/toolTip/index.less +24 -0
- package/dist/videoFusion/BaseVideo.d.ts +23 -0
- package/dist/videoFusion/BaseVideo.js +255 -0
- package/dist/videoFusion/VideoProject.d.ts +12 -0
- package/dist/videoFusion/VideoProject.js +230 -0
- package/dist/videoFusion/VideoTexture.d.ts +5 -0
- package/dist/videoFusion/VideoTexture.js +70 -0
- package/dist/visualization/Airspace.d.ts +11 -0
- package/dist/visualization/Airspace.js +87 -0
- package/dist/visualization/BaseFrustum.d.ts +12 -0
- package/dist/visualization/BaseFrustum.js +82 -0
- package/dist/visualization/BaseHeatmap.d.ts +23 -0
- package/dist/visualization/BaseHeatmap.js +214 -0
- package/dist/visualization/Frustum.d.ts +5 -0
- package/dist/visualization/Frustum.js +132 -0
- package/dist/visualization/FrustumWithCamera.d.ts +5 -0
- package/dist/visualization/FrustumWithCamera.js +131 -0
- package/dist/visualization/Heatmap2d.d.ts +7 -0
- package/dist/visualization/Heatmap2d.js +79 -0
- package/dist/visualization/Heatmap3d.d.ts +8 -0
- package/dist/visualization/Heatmap3d.js +127 -0
- package/dist/visualization/PointCluster.d.ts +17 -0
- package/dist/visualization/PointCluster.js +181 -0
- package/package.json +103 -0
|
@@ -0,0 +1,705 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import * as Cesium from 'deeptwins-cesium';
|
|
3
|
+
import { Billboard, BillboardCollection, BoundingRectangle, Cartesian2, Cartesian3, defaultValue, defined, Event, Label, LabelCollection, Matrix4, PointPrimitive, PointPrimitiveCollection, SceneMode } from 'deeptwins-cesium';
|
|
4
|
+
import KDBush from 'kdbush';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Defines how screen space objects (billboards, points, labels) are clustered.
|
|
8
|
+
*
|
|
9
|
+
* @param {object} [options] An object with the following properties:
|
|
10
|
+
* @param {boolean} [options.enabled=false] Whether or not to enable clustering.
|
|
11
|
+
* @param {number} [options.pixelRange=80] The pixel range to extend the screen space bounding box.
|
|
12
|
+
* @param {number} [options.minimumClusterSize=2] The minimum number of screen space objects that can be clustered.
|
|
13
|
+
* @param {boolean} [options.clusterBillboards=true] Whether or not to cluster the billboards of an entity.
|
|
14
|
+
* @param {boolean} [options.clusterLabels=true] Whether or not to cluster the labels of an entity.
|
|
15
|
+
* @param {boolean} [options.clusterPoints=true] Whether or not to cluster the points of an entity.
|
|
16
|
+
* @param {boolean} [options.show=true] Determines if the entities in the cluster will be shown.
|
|
17
|
+
*
|
|
18
|
+
* @alias PrimitiveCluster
|
|
19
|
+
* @constructor
|
|
20
|
+
*
|
|
21
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?src=Clustering.html|Cesium Sandcastle Clustering Demo}
|
|
22
|
+
*/
|
|
23
|
+
function PrimitiveCluster(options) {
|
|
24
|
+
options = defaultValue(options, defaultValue.EMPTY_OBJECT);
|
|
25
|
+
this._enabled = defaultValue(options.enabled, false);
|
|
26
|
+
this._pixelRange = defaultValue(options.pixelRange, 80);
|
|
27
|
+
this._minimumClusterSize = defaultValue(options.minimumClusterSize, 2);
|
|
28
|
+
this._clusterBillboards = defaultValue(options.clusterBillboards, true);
|
|
29
|
+
this._clusterLabels = defaultValue(options.clusterLabels, true);
|
|
30
|
+
this._clusterPoints = defaultValue(options.clusterPoints, true);
|
|
31
|
+
this._labelCollection = undefined;
|
|
32
|
+
this._billboardCollection = undefined;
|
|
33
|
+
this._pointCollection = undefined;
|
|
34
|
+
this._clusterBillboardCollection = undefined;
|
|
35
|
+
this._clusterLabelCollection = undefined;
|
|
36
|
+
this._clusterPointCollection = undefined;
|
|
37
|
+
this._collectionIndicesByEntity = {};
|
|
38
|
+
this._unusedLabelIndices = [];
|
|
39
|
+
this._unusedBillboardIndices = [];
|
|
40
|
+
this._unusedPointIndices = [];
|
|
41
|
+
this._previousClusters = [];
|
|
42
|
+
this._previousHeight = undefined;
|
|
43
|
+
this._enabledDirty = false;
|
|
44
|
+
this._clusterDirty = false;
|
|
45
|
+
this._cluster = undefined;
|
|
46
|
+
this._removeEventListener = undefined;
|
|
47
|
+
this._clusterEvent = new Event();
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Determines if entities in this collection will be shown.
|
|
51
|
+
*
|
|
52
|
+
* @type {boolean}
|
|
53
|
+
* @default true
|
|
54
|
+
*/
|
|
55
|
+
this.show = defaultValue(options.show, true);
|
|
56
|
+
}
|
|
57
|
+
function expandBoundingBox(bbox, pixelRange) {
|
|
58
|
+
bbox.x -= pixelRange;
|
|
59
|
+
bbox.y -= pixelRange;
|
|
60
|
+
bbox.width += pixelRange * 2.0;
|
|
61
|
+
bbox.height += pixelRange * 2.0;
|
|
62
|
+
}
|
|
63
|
+
var labelBoundingBoxScratch = new BoundingRectangle();
|
|
64
|
+
function getBoundingBox(item, coord, pixelRange, entityCluster, result) {
|
|
65
|
+
if (defined(item._labelCollection) && entityCluster._clusterLabels) {
|
|
66
|
+
result = Label.getScreenSpaceBoundingBox(item, coord, result);
|
|
67
|
+
} else if (defined(item._billboardCollection) && entityCluster._clusterBillboards) {
|
|
68
|
+
result = Billboard.getScreenSpaceBoundingBox(item, coord, result);
|
|
69
|
+
} else if (defined(item._pointPrimitiveCollection) && entityCluster._clusterPoints) {
|
|
70
|
+
result = PointPrimitive.getScreenSpaceBoundingBox(item, coord, result);
|
|
71
|
+
}
|
|
72
|
+
expandBoundingBox(result, pixelRange);
|
|
73
|
+
if (entityCluster._clusterLabels && !defined(item._labelCollection) && defined(item.id) && hasLabelIndex(entityCluster, item.id.id) && defined(item.id._label)) {
|
|
74
|
+
var labelIndex = entityCluster._collectionIndicesByEntity[item.id.id].labelIndex;
|
|
75
|
+
var label = entityCluster._labelCollection.get(labelIndex);
|
|
76
|
+
var labelBBox = Label.getScreenSpaceBoundingBox(label, coord, labelBoundingBoxScratch);
|
|
77
|
+
expandBoundingBox(labelBBox, pixelRange);
|
|
78
|
+
result = BoundingRectangle.union(result, labelBBox, result);
|
|
79
|
+
}
|
|
80
|
+
return result;
|
|
81
|
+
}
|
|
82
|
+
function addNonClusteredItem(item, entityCluster) {
|
|
83
|
+
item.clusterShow = true;
|
|
84
|
+
if (!defined(item._labelCollection) && defined(item.id) && hasLabelIndex(entityCluster, item.id.id) && defined(item.id._label)) {
|
|
85
|
+
var labelIndex = entityCluster._collectionIndicesByEntity[item.id.id].labelIndex;
|
|
86
|
+
var label = entityCluster._labelCollection.get(labelIndex);
|
|
87
|
+
label.clusterShow = true;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
function addCluster(position, numPoints, ids, entityCluster) {
|
|
91
|
+
var cluster = {
|
|
92
|
+
billboard: entityCluster._clusterBillboardCollection.add(),
|
|
93
|
+
label: entityCluster._clusterLabelCollection.add(),
|
|
94
|
+
point: entityCluster._clusterPointCollection.add()
|
|
95
|
+
};
|
|
96
|
+
cluster.billboard.show = false;
|
|
97
|
+
cluster.point.show = false;
|
|
98
|
+
cluster.label.show = true;
|
|
99
|
+
cluster.label.text = numPoints.toLocaleString();
|
|
100
|
+
cluster.label.id = ids;
|
|
101
|
+
cluster.billboard.position = cluster.label.position = cluster.point.position = position;
|
|
102
|
+
entityCluster._clusterEvent.raiseEvent(ids, cluster);
|
|
103
|
+
}
|
|
104
|
+
function hasLabelIndex(entityCluster, entityId) {
|
|
105
|
+
return defined(entityCluster) && defined(entityCluster._collectionIndicesByEntity[entityId]) && defined(entityCluster._collectionIndicesByEntity[entityId].labelIndex);
|
|
106
|
+
}
|
|
107
|
+
function getScreenSpacePositions(collection, points, scene, occluder, entityCluster) {
|
|
108
|
+
if (!defined(collection)) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
var length = collection.length;
|
|
112
|
+
for (var i = 0; i < length; ++i) {
|
|
113
|
+
var item = collection.get(i);
|
|
114
|
+
item.clusterShow = false;
|
|
115
|
+
if (!item.show || entityCluster._scene.mode === SceneMode.SCENE3D && !occluder.isPointVisible(item.position)) {
|
|
116
|
+
continue;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
// const canClusterLabels =
|
|
120
|
+
// entityCluster._clusterLabels && defined(item._labelCollection);
|
|
121
|
+
// const canClusterBillboards =
|
|
122
|
+
// entityCluster._clusterBillboards && defined(item.id._billboard);
|
|
123
|
+
// const canClusterPoints =
|
|
124
|
+
// entityCluster._clusterPoints && defined(item.id._point);
|
|
125
|
+
// if (canClusterLabels && (canClusterPoints || canClusterBillboards)) {
|
|
126
|
+
// continue;
|
|
127
|
+
// }
|
|
128
|
+
|
|
129
|
+
var coord = item.computeScreenSpacePosition(scene);
|
|
130
|
+
if (!defined(coord)) {
|
|
131
|
+
continue;
|
|
132
|
+
}
|
|
133
|
+
points.push({
|
|
134
|
+
index: i,
|
|
135
|
+
collection: collection,
|
|
136
|
+
clustered: false,
|
|
137
|
+
coord: coord
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
var pointBoundinRectangleScratch = new BoundingRectangle();
|
|
142
|
+
var totalBoundingRectangleScratch = new BoundingRectangle();
|
|
143
|
+
var neighborBoundingRectangleScratch = new BoundingRectangle();
|
|
144
|
+
function createDeclutterCallback(entityCluster) {
|
|
145
|
+
return function (amount) {
|
|
146
|
+
if (defined(amount) && amount < 0.05 || !entityCluster.enabled) {
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
var scene = entityCluster._scene;
|
|
150
|
+
var labelCollection = entityCluster._labelCollection;
|
|
151
|
+
var billboardCollection = entityCluster._billboardCollection;
|
|
152
|
+
var pointCollection = entityCluster._pointCollection;
|
|
153
|
+
if (!defined(labelCollection) && !defined(billboardCollection) && !defined(pointCollection) || !entityCluster._clusterBillboards && !entityCluster._clusterLabels && !entityCluster._clusterPoints) {
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
var clusteredLabelCollection = entityCluster._clusterLabelCollection;
|
|
157
|
+
var clusteredBillboardCollection = entityCluster._clusterBillboardCollection;
|
|
158
|
+
var clusteredPointCollection = entityCluster._clusterPointCollection;
|
|
159
|
+
if (defined(clusteredLabelCollection)) {
|
|
160
|
+
clusteredLabelCollection.removeAll();
|
|
161
|
+
} else {
|
|
162
|
+
clusteredLabelCollection = entityCluster._clusterLabelCollection = new LabelCollection({
|
|
163
|
+
scene: scene
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
if (defined(clusteredBillboardCollection)) {
|
|
167
|
+
clusteredBillboardCollection.removeAll();
|
|
168
|
+
} else {
|
|
169
|
+
clusteredBillboardCollection = entityCluster._clusterBillboardCollection = new BillboardCollection({
|
|
170
|
+
scene: scene
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
if (defined(clusteredPointCollection)) {
|
|
174
|
+
clusteredPointCollection.removeAll();
|
|
175
|
+
} else {
|
|
176
|
+
clusteredPointCollection = entityCluster._clusterPointCollection = new PointPrimitiveCollection();
|
|
177
|
+
}
|
|
178
|
+
var pixelRange = entityCluster._pixelRange;
|
|
179
|
+
var minimumClusterSize = entityCluster._minimumClusterSize;
|
|
180
|
+
var clusters = entityCluster._previousClusters;
|
|
181
|
+
var newClusters = [];
|
|
182
|
+
var previousHeight = entityCluster._previousHeight;
|
|
183
|
+
var currentHeight = scene.camera.positionCartographic.height;
|
|
184
|
+
var ellipsoid = scene.ellipsoid;
|
|
185
|
+
var cameraPosition = scene.camera.positionWC;
|
|
186
|
+
var occluder = new Cesium.EllipsoidalOccluder(ellipsoid, cameraPosition);
|
|
187
|
+
var points = [];
|
|
188
|
+
if (entityCluster._clusterLabels) {
|
|
189
|
+
getScreenSpacePositions(labelCollection, points, scene, occluder, entityCluster);
|
|
190
|
+
}
|
|
191
|
+
if (entityCluster._clusterBillboards) {
|
|
192
|
+
getScreenSpacePositions(billboardCollection, points, scene, occluder, entityCluster);
|
|
193
|
+
}
|
|
194
|
+
if (entityCluster._clusterPoints) {
|
|
195
|
+
getScreenSpacePositions(pointCollection, points, scene, occluder, entityCluster);
|
|
196
|
+
}
|
|
197
|
+
var i;
|
|
198
|
+
var j;
|
|
199
|
+
var length;
|
|
200
|
+
var bbox;
|
|
201
|
+
var neighbors;
|
|
202
|
+
var neighborLength;
|
|
203
|
+
var neighborIndex;
|
|
204
|
+
var neighborPoint;
|
|
205
|
+
var ids;
|
|
206
|
+
var numPoints;
|
|
207
|
+
var collection;
|
|
208
|
+
var collectionIndex;
|
|
209
|
+
if (points.length > 0) {
|
|
210
|
+
var index = new KDBush(points.length, 64, Uint32Array);
|
|
211
|
+
for (var p = 0; p < points.length; ++p) {
|
|
212
|
+
index.add(points[p].coord.x, points[p].coord.y);
|
|
213
|
+
}
|
|
214
|
+
index.finish();
|
|
215
|
+
if (currentHeight < previousHeight) {
|
|
216
|
+
length = clusters.length;
|
|
217
|
+
for (i = 0; i < length; ++i) {
|
|
218
|
+
var cluster = clusters[i];
|
|
219
|
+
if (!occluder.isPointVisible(cluster.position)) {
|
|
220
|
+
continue;
|
|
221
|
+
}
|
|
222
|
+
var coord = Billboard._computeScreenSpacePosition(Matrix4.IDENTITY, cluster.position, Cartesian3.ZERO, Cartesian2.ZERO, scene);
|
|
223
|
+
if (!defined(coord)) {
|
|
224
|
+
continue;
|
|
225
|
+
}
|
|
226
|
+
var factor = 1.0 - currentHeight / previousHeight;
|
|
227
|
+
var width = cluster.width = cluster.width * factor;
|
|
228
|
+
var height = cluster.height = cluster.height * factor;
|
|
229
|
+
width = Math.max(width, cluster.minimumWidth);
|
|
230
|
+
height = Math.max(height, cluster.minimumHeight);
|
|
231
|
+
var minX = coord.x - width * 0.5;
|
|
232
|
+
var minY = coord.y - height * 0.5;
|
|
233
|
+
var maxX = coord.x + width;
|
|
234
|
+
var maxY = coord.y + height;
|
|
235
|
+
neighbors = index.range(minX, minY, maxX, maxY);
|
|
236
|
+
neighborLength = neighbors.length;
|
|
237
|
+
numPoints = 0;
|
|
238
|
+
ids = [];
|
|
239
|
+
for (j = 0; j < neighborLength; ++j) {
|
|
240
|
+
neighborIndex = neighbors[j];
|
|
241
|
+
neighborPoint = points[neighborIndex];
|
|
242
|
+
if (!neighborPoint.clustered) {
|
|
243
|
+
++numPoints;
|
|
244
|
+
collection = neighborPoint.collection;
|
|
245
|
+
collectionIndex = neighborPoint.index;
|
|
246
|
+
ids.push(collection.get(collectionIndex).id);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
if (numPoints >= minimumClusterSize) {
|
|
250
|
+
addCluster(cluster.position, numPoints, ids, entityCluster);
|
|
251
|
+
newClusters.push(cluster);
|
|
252
|
+
for (j = 0; j < neighborLength; ++j) {
|
|
253
|
+
points[neighbors[j]].clustered = true;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
length = points.length;
|
|
259
|
+
for (i = 0; i < length; ++i) {
|
|
260
|
+
var point = points[i];
|
|
261
|
+
if (point.clustered) {
|
|
262
|
+
continue;
|
|
263
|
+
}
|
|
264
|
+
point.clustered = true;
|
|
265
|
+
collection = point.collection;
|
|
266
|
+
collectionIndex = point.index;
|
|
267
|
+
var item = collection.get(collectionIndex);
|
|
268
|
+
bbox = getBoundingBox(item, point.coord, pixelRange, entityCluster, pointBoundinRectangleScratch);
|
|
269
|
+
var totalBBox = BoundingRectangle.clone(bbox, totalBoundingRectangleScratch);
|
|
270
|
+
neighbors = index.range(bbox.x, bbox.y, bbox.x + bbox.width, bbox.y + bbox.height);
|
|
271
|
+
neighborLength = neighbors.length;
|
|
272
|
+
var clusterPosition = Cartesian3.clone(item.position);
|
|
273
|
+
numPoints = 1;
|
|
274
|
+
ids = [item.id];
|
|
275
|
+
for (j = 0; j < neighborLength; ++j) {
|
|
276
|
+
neighborIndex = neighbors[j];
|
|
277
|
+
neighborPoint = points[neighborIndex];
|
|
278
|
+
if (!neighborPoint.clustered) {
|
|
279
|
+
var neighborItem = neighborPoint.collection.get(neighborPoint.index);
|
|
280
|
+
var neighborBBox = getBoundingBox(neighborItem, neighborPoint.coord, pixelRange, entityCluster, neighborBoundingRectangleScratch);
|
|
281
|
+
Cartesian3.add(neighborItem.position, clusterPosition, clusterPosition);
|
|
282
|
+
BoundingRectangle.union(totalBBox, neighborBBox, totalBBox);
|
|
283
|
+
++numPoints;
|
|
284
|
+
ids.push(neighborItem.id);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
if (numPoints >= minimumClusterSize) {
|
|
288
|
+
var position = Cartesian3.multiplyByScalar(clusterPosition, 1.0 / numPoints, clusterPosition);
|
|
289
|
+
addCluster(position, numPoints, ids, entityCluster);
|
|
290
|
+
newClusters.push({
|
|
291
|
+
position: position,
|
|
292
|
+
width: totalBBox.width,
|
|
293
|
+
height: totalBBox.height,
|
|
294
|
+
minimumWidth: bbox.width,
|
|
295
|
+
minimumHeight: bbox.height
|
|
296
|
+
});
|
|
297
|
+
for (j = 0; j < neighborLength; ++j) {
|
|
298
|
+
points[neighbors[j]].clustered = true;
|
|
299
|
+
}
|
|
300
|
+
} else {
|
|
301
|
+
addNonClusteredItem(item, entityCluster);
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
if (clusteredLabelCollection.length === 0) {
|
|
306
|
+
clusteredLabelCollection.destroy();
|
|
307
|
+
entityCluster._clusterLabelCollection = undefined;
|
|
308
|
+
}
|
|
309
|
+
if (clusteredBillboardCollection.length === 0) {
|
|
310
|
+
clusteredBillboardCollection.destroy();
|
|
311
|
+
entityCluster._clusterBillboardCollection = undefined;
|
|
312
|
+
}
|
|
313
|
+
if (clusteredPointCollection.length === 0) {
|
|
314
|
+
clusteredPointCollection.destroy();
|
|
315
|
+
entityCluster._clusterPointCollection = undefined;
|
|
316
|
+
}
|
|
317
|
+
entityCluster._previousClusters = newClusters;
|
|
318
|
+
entityCluster._previousHeight = currentHeight;
|
|
319
|
+
};
|
|
320
|
+
}
|
|
321
|
+
PrimitiveCluster.prototype._initialize = function (scene) {
|
|
322
|
+
this._scene = scene;
|
|
323
|
+
var cluster = createDeclutterCallback(this);
|
|
324
|
+
this._cluster = cluster;
|
|
325
|
+
this._removeEventListener = scene.camera.changed.addEventListener(cluster);
|
|
326
|
+
};
|
|
327
|
+
Object.defineProperties(PrimitiveCluster.prototype, {
|
|
328
|
+
/**
|
|
329
|
+
* Gets or sets whether clustering is enabled.
|
|
330
|
+
* @memberof PrimitiveCluster.prototype
|
|
331
|
+
* @type {boolean}
|
|
332
|
+
*/
|
|
333
|
+
enabled: {
|
|
334
|
+
get: function get() {
|
|
335
|
+
return this._enabled;
|
|
336
|
+
},
|
|
337
|
+
set: function set(value) {
|
|
338
|
+
this._enabledDirty = value !== this._enabled;
|
|
339
|
+
this._enabled = value;
|
|
340
|
+
}
|
|
341
|
+
},
|
|
342
|
+
/**
|
|
343
|
+
* Gets or sets the pixel range to extend the screen space bounding box.
|
|
344
|
+
* @memberof PrimitiveCluster.prototype
|
|
345
|
+
* @type {number}
|
|
346
|
+
*/
|
|
347
|
+
pixelRange: {
|
|
348
|
+
get: function get() {
|
|
349
|
+
return this._pixelRange;
|
|
350
|
+
},
|
|
351
|
+
set: function set(value) {
|
|
352
|
+
this._clusterDirty = this._clusterDirty || value !== this._pixelRange;
|
|
353
|
+
this._pixelRange = value;
|
|
354
|
+
}
|
|
355
|
+
},
|
|
356
|
+
/**
|
|
357
|
+
* Gets or sets the minimum number of screen space objects that can be clustered.
|
|
358
|
+
* @memberof PrimitiveCluster.prototype
|
|
359
|
+
* @type {number}
|
|
360
|
+
*/
|
|
361
|
+
minimumClusterSize: {
|
|
362
|
+
get: function get() {
|
|
363
|
+
return this._minimumClusterSize;
|
|
364
|
+
},
|
|
365
|
+
set: function set(value) {
|
|
366
|
+
this._clusterDirty = this._clusterDirty || value !== this._minimumClusterSize;
|
|
367
|
+
this._minimumClusterSize = value;
|
|
368
|
+
}
|
|
369
|
+
},
|
|
370
|
+
/**
|
|
371
|
+
* Gets the event that will be raised when a new cluster will be displayed. The signature of the event listener is {@link PrimitiveCluster.newClusterCallback}.
|
|
372
|
+
* @memberof PrimitiveCluster.prototype
|
|
373
|
+
* @type {Event<PrimitiveCluster.newClusterCallback>}
|
|
374
|
+
*/
|
|
375
|
+
clusterEvent: {
|
|
376
|
+
get: function get() {
|
|
377
|
+
return this._clusterEvent;
|
|
378
|
+
}
|
|
379
|
+
},
|
|
380
|
+
/**
|
|
381
|
+
* Gets or sets whether clustering billboard entities is enabled.
|
|
382
|
+
* @memberof PrimitiveCluster.prototype
|
|
383
|
+
* @type {boolean}
|
|
384
|
+
*/
|
|
385
|
+
clusterBillboards: {
|
|
386
|
+
get: function get() {
|
|
387
|
+
return this._clusterBillboards;
|
|
388
|
+
},
|
|
389
|
+
set: function set(value) {
|
|
390
|
+
this._clusterDirty = this._clusterDirty || value !== this._clusterBillboards;
|
|
391
|
+
this._clusterBillboards = value;
|
|
392
|
+
}
|
|
393
|
+
},
|
|
394
|
+
/**
|
|
395
|
+
* Gets or sets whether clustering labels entities is enabled.
|
|
396
|
+
* @memberof PrimitiveCluster.prototype
|
|
397
|
+
* @type {boolean}
|
|
398
|
+
*/
|
|
399
|
+
clusterLabels: {
|
|
400
|
+
get: function get() {
|
|
401
|
+
return this._clusterLabels;
|
|
402
|
+
},
|
|
403
|
+
set: function set(value) {
|
|
404
|
+
this._clusterDirty = this._clusterDirty || value !== this._clusterLabels;
|
|
405
|
+
this._clusterLabels = value;
|
|
406
|
+
}
|
|
407
|
+
},
|
|
408
|
+
/**
|
|
409
|
+
* Gets or sets whether clustering point entities is enabled.
|
|
410
|
+
* @memberof PrimitiveCluster.prototype
|
|
411
|
+
* @type {boolean}
|
|
412
|
+
*/
|
|
413
|
+
clusterPoints: {
|
|
414
|
+
get: function get() {
|
|
415
|
+
return this._clusterPoints;
|
|
416
|
+
},
|
|
417
|
+
set: function set(value) {
|
|
418
|
+
this._clusterDirty = this._clusterDirty || value !== this._clusterPoints;
|
|
419
|
+
this._clusterPoints = value;
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
});
|
|
423
|
+
function createGetEntity(collectionProperty, CollectionConstructor, unusedIndicesProperty, entityIndexProperty) {
|
|
424
|
+
return function (entity) {
|
|
425
|
+
var collection = this[collectionProperty];
|
|
426
|
+
if (!defined(this._collectionIndicesByEntity)) {
|
|
427
|
+
this._collectionIndicesByEntity = {};
|
|
428
|
+
}
|
|
429
|
+
var entityIndices = this._collectionIndicesByEntity[entity.id];
|
|
430
|
+
if (!defined(entityIndices)) {
|
|
431
|
+
entityIndices = this._collectionIndicesByEntity[entity.id] = {
|
|
432
|
+
billboardIndex: undefined,
|
|
433
|
+
labelIndex: undefined,
|
|
434
|
+
pointIndex: undefined
|
|
435
|
+
};
|
|
436
|
+
}
|
|
437
|
+
if (defined(collection) && defined(entityIndices[entityIndexProperty])) {
|
|
438
|
+
return collection.get(entityIndices[entityIndexProperty]);
|
|
439
|
+
}
|
|
440
|
+
if (!defined(collection)) {
|
|
441
|
+
collection = this[collectionProperty] = new CollectionConstructor({
|
|
442
|
+
scene: this._scene
|
|
443
|
+
});
|
|
444
|
+
}
|
|
445
|
+
var index;
|
|
446
|
+
var entityItem;
|
|
447
|
+
var unusedIndices = this[unusedIndicesProperty];
|
|
448
|
+
if (unusedIndices.length > 0) {
|
|
449
|
+
index = unusedIndices.shift();
|
|
450
|
+
entityItem = collection.get(index);
|
|
451
|
+
} else {
|
|
452
|
+
entityItem = collection.add();
|
|
453
|
+
index = collection.length - 1;
|
|
454
|
+
}
|
|
455
|
+
entityIndices[entityIndexProperty] = index;
|
|
456
|
+
var that = this;
|
|
457
|
+
Promise.resolve().then(function () {
|
|
458
|
+
that._clusterDirty = true;
|
|
459
|
+
});
|
|
460
|
+
return entityItem;
|
|
461
|
+
};
|
|
462
|
+
}
|
|
463
|
+
function removeEntityIndicesIfUnused(entityCluster, entityId) {
|
|
464
|
+
var indices = entityCluster._collectionIndicesByEntity[entityId];
|
|
465
|
+
if (!defined(indices.billboardIndex) && !defined(indices.labelIndex) && !defined(indices.pointIndex)) {
|
|
466
|
+
delete entityCluster._collectionIndicesByEntity[entityId];
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
/**
|
|
471
|
+
* Returns a new {@link Label}.
|
|
472
|
+
* @param {Entity} entity The entity that will use the returned {@link Label} for visualization.
|
|
473
|
+
* @returns {Label} The label that will be used to visualize an entity.
|
|
474
|
+
*
|
|
475
|
+
* @private
|
|
476
|
+
*/
|
|
477
|
+
PrimitiveCluster.prototype.getLabel = createGetEntity('_labelCollection', LabelCollection, '_unusedLabelIndices', 'labelIndex');
|
|
478
|
+
|
|
479
|
+
/**
|
|
480
|
+
* Removes the {@link Label} associated with an entity so it can be reused by another entity.
|
|
481
|
+
* @param {Entity} entity The entity that will uses the returned {@link Label} for visualization.
|
|
482
|
+
*
|
|
483
|
+
* @private
|
|
484
|
+
*/
|
|
485
|
+
PrimitiveCluster.prototype.removeLabel = function (entity) {
|
|
486
|
+
var entityIndices = this._collectionIndicesByEntity && this._collectionIndicesByEntity[entity.id];
|
|
487
|
+
if (!defined(this._labelCollection) || !defined(entityIndices) || !defined(entityIndices.labelIndex)) {
|
|
488
|
+
return;
|
|
489
|
+
}
|
|
490
|
+
var index = entityIndices.labelIndex;
|
|
491
|
+
entityIndices.labelIndex = undefined;
|
|
492
|
+
removeEntityIndicesIfUnused(this, entity.id);
|
|
493
|
+
var label = this._labelCollection.get(index);
|
|
494
|
+
label.show = false;
|
|
495
|
+
label.text = '';
|
|
496
|
+
label.id = undefined;
|
|
497
|
+
this._unusedLabelIndices.push(index);
|
|
498
|
+
this._clusterDirty = true;
|
|
499
|
+
};
|
|
500
|
+
|
|
501
|
+
/**
|
|
502
|
+
* Returns a new {@link Billboard}.
|
|
503
|
+
* @param {Entity} entity The entity that will use the returned {@link Billboard} for visualization.
|
|
504
|
+
* @returns {Billboard} The label that will be used to visualize an entity.
|
|
505
|
+
*
|
|
506
|
+
* @private
|
|
507
|
+
*/
|
|
508
|
+
PrimitiveCluster.prototype.getBillboard = createGetEntity('_billboardCollection', BillboardCollection, '_unusedBillboardIndices', 'billboardIndex');
|
|
509
|
+
|
|
510
|
+
/**
|
|
511
|
+
* Removes the {@link Billboard} associated with an entity so it can be reused by another entity.
|
|
512
|
+
* @param {Entity} entity The entity that will uses the returned {@link Billboard} for visualization.
|
|
513
|
+
*
|
|
514
|
+
* @private
|
|
515
|
+
*/
|
|
516
|
+
PrimitiveCluster.prototype.removeBillboard = function (entity) {
|
|
517
|
+
var entityIndices = this._collectionIndicesByEntity && this._collectionIndicesByEntity[entity.id];
|
|
518
|
+
if (!defined(this._billboardCollection) || !defined(entityIndices) || !defined(entityIndices.billboardIndex)) {
|
|
519
|
+
return;
|
|
520
|
+
}
|
|
521
|
+
var index = entityIndices.billboardIndex;
|
|
522
|
+
entityIndices.billboardIndex = undefined;
|
|
523
|
+
removeEntityIndicesIfUnused(this, entity.id);
|
|
524
|
+
var billboard = this._billboardCollection.get(index);
|
|
525
|
+
billboard.id = undefined;
|
|
526
|
+
billboard.show = false;
|
|
527
|
+
billboard.image = undefined;
|
|
528
|
+
this._unusedBillboardIndices.push(index);
|
|
529
|
+
this._clusterDirty = true;
|
|
530
|
+
};
|
|
531
|
+
|
|
532
|
+
/**
|
|
533
|
+
* Returns a new {@link Point}.
|
|
534
|
+
* @param {Entity} entity The entity that will use the returned {@link Point} for visualization.
|
|
535
|
+
* @returns {Point} The label that will be used to visualize an entity.
|
|
536
|
+
*
|
|
537
|
+
* @private
|
|
538
|
+
*/
|
|
539
|
+
PrimitiveCluster.prototype.getPoint = createGetEntity('_pointCollection', PointPrimitiveCollection, '_unusedPointIndices', 'pointIndex');
|
|
540
|
+
|
|
541
|
+
/**
|
|
542
|
+
* Removes the {@link Point} associated with an entity so it can be reused by another entity.
|
|
543
|
+
* @param {Entity} entity The entity that will uses the returned {@link Point} for visualization.
|
|
544
|
+
*
|
|
545
|
+
* @private
|
|
546
|
+
*/
|
|
547
|
+
PrimitiveCluster.prototype.removePoint = function (entity) {
|
|
548
|
+
var entityIndices = this._collectionIndicesByEntity && this._collectionIndicesByEntity[entity.id];
|
|
549
|
+
if (!defined(this._pointCollection) || !defined(entityIndices) || !defined(entityIndices.pointIndex)) {
|
|
550
|
+
return;
|
|
551
|
+
}
|
|
552
|
+
var index = entityIndices.pointIndex;
|
|
553
|
+
entityIndices.pointIndex = undefined;
|
|
554
|
+
removeEntityIndicesIfUnused(this, entity.id);
|
|
555
|
+
var point = this._pointCollection.get(index);
|
|
556
|
+
point.show = false;
|
|
557
|
+
point.id = undefined;
|
|
558
|
+
this._unusedPointIndices.push(index);
|
|
559
|
+
this._clusterDirty = true;
|
|
560
|
+
};
|
|
561
|
+
function disableCollectionClustering(collection) {
|
|
562
|
+
if (!defined(collection)) {
|
|
563
|
+
return;
|
|
564
|
+
}
|
|
565
|
+
var length = collection.length;
|
|
566
|
+
for (var i = 0; i < length; ++i) {
|
|
567
|
+
collection.get(i).clusterShow = true;
|
|
568
|
+
}
|
|
569
|
+
}
|
|
570
|
+
function updateEnable(entityCluster) {
|
|
571
|
+
if (entityCluster.enabled) {
|
|
572
|
+
return;
|
|
573
|
+
}
|
|
574
|
+
if (defined(entityCluster._clusterLabelCollection)) {
|
|
575
|
+
entityCluster._clusterLabelCollection.destroy();
|
|
576
|
+
}
|
|
577
|
+
if (defined(entityCluster._clusterBillboardCollection)) {
|
|
578
|
+
entityCluster._clusterBillboardCollection.destroy();
|
|
579
|
+
}
|
|
580
|
+
if (defined(entityCluster._clusterPointCollection)) {
|
|
581
|
+
entityCluster._clusterPointCollection.destroy();
|
|
582
|
+
}
|
|
583
|
+
entityCluster._clusterLabelCollection = undefined;
|
|
584
|
+
entityCluster._clusterBillboardCollection = undefined;
|
|
585
|
+
entityCluster._clusterPointCollection = undefined;
|
|
586
|
+
disableCollectionClustering(entityCluster._labelCollection);
|
|
587
|
+
disableCollectionClustering(entityCluster._billboardCollection);
|
|
588
|
+
disableCollectionClustering(entityCluster._pointCollection);
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
/**
|
|
592
|
+
* Gets the draw commands for the clustered billboards/points/labels if enabled, otherwise,
|
|
593
|
+
* queues the draw commands for billboards/points/labels created for entities.
|
|
594
|
+
* @private
|
|
595
|
+
*/
|
|
596
|
+
PrimitiveCluster.prototype.update = function (frameState) {
|
|
597
|
+
if (!this.show) {
|
|
598
|
+
return;
|
|
599
|
+
}
|
|
600
|
+
|
|
601
|
+
// If clustering is enabled before the label collection is updated,
|
|
602
|
+
// the glyphs haven't been created so the screen space bounding boxes
|
|
603
|
+
// are incorrect.
|
|
604
|
+
var commandList;
|
|
605
|
+
if (defined(this._labelCollection) && this._labelCollection.length > 0 && this._labelCollection.get(0)._glyphs.length === 0) {
|
|
606
|
+
commandList = frameState.commandList;
|
|
607
|
+
frameState.commandList = [];
|
|
608
|
+
this._labelCollection.update(frameState);
|
|
609
|
+
frameState.commandList = commandList;
|
|
610
|
+
}
|
|
611
|
+
|
|
612
|
+
// If clustering is enabled before the billboard collection is updated,
|
|
613
|
+
// the images haven't been added to the image atlas so the screen space bounding boxes
|
|
614
|
+
// are incorrect.
|
|
615
|
+
if (defined(this._billboardCollection) && this._billboardCollection.length > 0 && !defined(this._billboardCollection.get(0).width)) {
|
|
616
|
+
commandList = frameState.commandList;
|
|
617
|
+
frameState.commandList = [];
|
|
618
|
+
this._billboardCollection.update(frameState);
|
|
619
|
+
frameState.commandList = commandList;
|
|
620
|
+
}
|
|
621
|
+
if (this._enabledDirty) {
|
|
622
|
+
this._enabledDirty = false;
|
|
623
|
+
updateEnable(this);
|
|
624
|
+
this._clusterDirty = true;
|
|
625
|
+
}
|
|
626
|
+
if (this._clusterDirty) {
|
|
627
|
+
this._clusterDirty = false;
|
|
628
|
+
this._cluster();
|
|
629
|
+
}
|
|
630
|
+
if (defined(this._clusterLabelCollection)) {
|
|
631
|
+
this._clusterLabelCollection.update(frameState);
|
|
632
|
+
}
|
|
633
|
+
if (defined(this._clusterBillboardCollection)) {
|
|
634
|
+
this._clusterBillboardCollection.update(frameState);
|
|
635
|
+
}
|
|
636
|
+
if (defined(this._clusterPointCollection)) {
|
|
637
|
+
this._clusterPointCollection.update(frameState);
|
|
638
|
+
}
|
|
639
|
+
if (defined(this._labelCollection)) {
|
|
640
|
+
this._labelCollection.update(frameState);
|
|
641
|
+
}
|
|
642
|
+
if (defined(this._billboardCollection)) {
|
|
643
|
+
this._billboardCollection.update(frameState);
|
|
644
|
+
}
|
|
645
|
+
if (defined(this._pointCollection)) {
|
|
646
|
+
this._pointCollection.update(frameState);
|
|
647
|
+
}
|
|
648
|
+
};
|
|
649
|
+
|
|
650
|
+
/**
|
|
651
|
+
* Destroys the WebGL resources held by this object. Destroying an object allows for deterministic
|
|
652
|
+
* release of WebGL resources, instead of relying on the garbage collector to destroy this object.
|
|
653
|
+
* <p>
|
|
654
|
+
* Unlike other objects that use WebGL resources, this object can be reused. For example, if a data source is removed
|
|
655
|
+
* from a data source collection and added to another.
|
|
656
|
+
* </p>
|
|
657
|
+
*/
|
|
658
|
+
PrimitiveCluster.prototype.destroy = function () {
|
|
659
|
+
this._labelCollection = this._labelCollection && this._labelCollection.destroy();
|
|
660
|
+
this._billboardCollection = this._billboardCollection && this._billboardCollection.destroy();
|
|
661
|
+
this._pointCollection = this._pointCollection && this._pointCollection.destroy();
|
|
662
|
+
this._clusterLabelCollection = this._clusterLabelCollection && this._clusterLabelCollection.destroy();
|
|
663
|
+
this._clusterBillboardCollection = this._clusterBillboardCollection && this._clusterBillboardCollection.destroy();
|
|
664
|
+
this._clusterPointCollection = this._clusterPointCollection && this._clusterPointCollection.destroy();
|
|
665
|
+
if (defined(this._removeEventListener)) {
|
|
666
|
+
this._removeEventListener();
|
|
667
|
+
this._removeEventListener = undefined;
|
|
668
|
+
}
|
|
669
|
+
this._labelCollection = undefined;
|
|
670
|
+
this._billboardCollection = undefined;
|
|
671
|
+
this._pointCollection = undefined;
|
|
672
|
+
this._clusterBillboardCollection = undefined;
|
|
673
|
+
this._clusterLabelCollection = undefined;
|
|
674
|
+
this._clusterPointCollection = undefined;
|
|
675
|
+
this._collectionIndicesByEntity = undefined;
|
|
676
|
+
this._unusedLabelIndices = [];
|
|
677
|
+
this._unusedBillboardIndices = [];
|
|
678
|
+
this._unusedPointIndices = [];
|
|
679
|
+
this._previousClusters = [];
|
|
680
|
+
this._previousHeight = undefined;
|
|
681
|
+
this._enabledDirty = false;
|
|
682
|
+
this._pixelRangeDirty = false;
|
|
683
|
+
this._minimumClusterSizeDirty = false;
|
|
684
|
+
return undefined;
|
|
685
|
+
};
|
|
686
|
+
|
|
687
|
+
/**
|
|
688
|
+
* A event listener function used to style clusters.
|
|
689
|
+
* @callback PrimitiveCluster.newClusterCallback
|
|
690
|
+
*
|
|
691
|
+
* @param {Entity[]} clusteredEntities An array of the entities contained in the cluster.
|
|
692
|
+
* @param {object} cluster An object containing the Billboard, Label, and Point
|
|
693
|
+
* primitives that represent this cluster of entities.
|
|
694
|
+
* @param {Billboard} cluster.billboard
|
|
695
|
+
* @param {Label} cluster.label
|
|
696
|
+
* @param {PointPrimitive} cluster.point
|
|
697
|
+
*
|
|
698
|
+
* @example
|
|
699
|
+
* // The default cluster values.
|
|
700
|
+
* dataSource.clustering.clusterEvent.addEventListener(function(entities, cluster) {
|
|
701
|
+
* cluster.label.show = true;
|
|
702
|
+
* cluster.label.text = entities.length.toLocaleString();
|
|
703
|
+
* });
|
|
704
|
+
*/
|
|
705
|
+
export default PrimitiveCluster;
|