選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

dynamic_model.html 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  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.min.js'></script>
  8. <link href='/libs/dc-sdk/dc.min.css' type='text/css' rel='stylesheet'>
  9. <link href='../index.css' type='text/css' rel='stylesheet'>
  10. </head>
  11. <body>
  12. <div id="viewer-container" class="viewer-container"></div>
  13. <script>
  14. let viewer = undefined
  15. const generatePosition = (num) => {
  16. let list = []
  17. for (let i = 0; i < num; i++) {
  18. let lng = 120.65276089+ Math.random() * 0.5
  19. let lat = 31.310530293 + Math.random() * 0.5
  20. list.push({lng,lat})
  21. }
  22. return list
  23. }
  24. DC.config.baseUrl = '../libs/dc-sdk/resources/'
  25. let viewer = new DC.Viewer('viewer-container')
  26. let baseLayer = DC.ImageryLayerFactory.createAMapImageryLayer({
  27. crs:"WGS84"
  28. })
  29. viewer.addBaseLayer( baseLayer,{brightness:0.1})
  30. let layer = new DC.DynamicLayer('layer').addTo(viewer)
  31. for(let i = 0; i<50; i++){
  32. let model = new DC.DynamicModel(generatePosition(1)[0],'../assets/data/qiche.gltf')
  33. model.setStyle({
  34. scale:10
  35. })
  36. layer.addOverlay(model)
  37. }
  38. setInterval(()=>{
  39. layer.getOverlays().forEach(item=>{
  40. item.addPosition(generatePosition(1)[0],10)
  41. })
  42. },10000)
  43. viewer.flyTo(layer)
  44. }
  45. </script>
  46. </body>
  47. </html>