You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

shadows.html 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1.0">
  6. <title>dc-example</title>
  7. <script src='/libs/dc-sdk/dc.base.min.js'></script>
  8. <script src='/libs/dc-sdk/dc.core.min.js'></script>
  9. <script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
  10. <link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
  11. <link href='../index.css' type='text/css' rel='stylesheet'>
  12. <style>
  13. *{
  14. margin: 0;
  15. padding: 0;
  16. }
  17. html,body,#viewer-container{
  18. width: 100%;
  19. height: 100%;
  20. overflow: hidden;
  21. }
  22. </style>
  23. </head>
  24. <body>
  25. <div id="viewer-container"></div>
  26. <div class="btn-box">
  27. <ul>
  28. <li><button onclick="start()">开始</button></li>
  29. <li><button onclick="stop()">暂停</button></li>
  30. </ul>
  31. </div>
  32. <script>
  33. let viewer = undefined
  34. function start(){
  35. viewer.analysis.shadows(new Date(),1600)
  36. }
  37. function stop(){
  38. viewer.analysis.deactivate(DC.AnalysisType.SHADOWS)
  39. }
  40. function initViewer() {
  41. viewer = new DC.Viewer('viewer-container')
  42. let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
  43. crs:"WGS84"
  44. })
  45. viewer.addBaseLayer(baselayer)
  46. let layer = new DC.TilesetLayer('layer')
  47. viewer.addLayer(layer)
  48. let tileset = new DC.Tileset(
  49. 'http://resource.dvgis.cn/data/3dtiles/ljz/tileset.json'
  50. )
  51. let style = new DC.TilesetStyle()
  52. style.color = {
  53. conditions: [
  54. ['${Height} >= 300', 'rgba(45, 0, 75, 0.5)'],
  55. ['${Height} >= 200', 'rgb(102, 71, 151)'],
  56. ['${Height} >= 100', 'rgb(170, 162, 204)'],
  57. ['${Height} >= 50', 'rgb(224, 226, 238)'],
  58. ['${Height} >= 25', 'rgb(252, 230, 200)'],
  59. ['${Height} >= 10', 'rgb(248, 176, 87)'],
  60. ['${Height} >= 5', 'rgb(198, 106, 11)'],
  61. ['true', 'rgb(127, 59, 8)']
  62. ]
  63. }
  64. tileset.setStyle(style)
  65. layer.addOverlay(tileset)
  66. viewer.use(new DC.Analysis())
  67. viewer.flyTo(tileset)
  68. }
  69. DC.ready(initViewer)
  70. </script>
  71. </body>
  72. </html>