d6dcd36577e2ca1ef452b543a2175b87ec3cd393.svn-base 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { Map } from 'maptalks'
  2. import 'babel-core/register'
  3. import 'babel-polyfill'
  4. import './style/public.css'
  5. import Event from './core/Event'
  6. import { listStatus, analysis, mapGoto } from './business/statusManagement'
  7. import { singleDelay } from './core/util'
  8. import config from './business/config'
  9. import getTile from './business/selectTile'
  10. // import './business/testAddMesh.js'
  11. global.bus = new Event()
  12. let args = analysis()
  13. global.map = new Map('map', {
  14. center: [args.lon, args.lat],
  15. zoom: args.zoom,
  16. bearing: args.bearing,
  17. maxZoom: 19,
  18. minZoom: 6,
  19. maxPitch: 70,
  20. maxVisualPitch: 100,
  21. doubleClickZoom: false,
  22. forceRenderOnMoving: true,
  23. forceRenderOnZooming: true,
  24. forceRenderOnRotating: true,
  25. baseLayer: getTile(),
  26. })
  27. require('./business/initScene3D.js')
  28. // url状态
  29. let status = singleDelay(listStatus, 500)
  30. map.on('moving zoomend dragrotating', status);
  31. map.on('zoomend', args => {
  32. if (args.to <= config.criticalZoom && args.from > config.criticalZoom) {
  33. mapGoto({ pitch: 1, bearing: 7.5 }, 300)
  34. bus.emit('uninstall3D')
  35. bus.emit('install2D')
  36. } else if (args.to > config.criticalZoom && args.from <= config.criticalZoom) {
  37. bus.emit('uninstall2D')
  38. bus.emit('install3D')
  39. mapGoto({ pitch: 62, bearing: 90 }, 300)
  40. }
  41. })
  42. if (args.zoom > config.criticalZoom) {
  43. bus.emit('install3D')
  44. } else {
  45. bus.emit('install2D')
  46. }