Cesium3DTilePass.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /**
  2. * The pass in which a 3D Tileset is updated.
  3. *
  4. * @private
  5. */
  6. const Cesium3DTilePass = {
  7. RENDER: 0,
  8. PICK: 1,
  9. SHADOW: 2,
  10. PRELOAD: 3,
  11. PRELOAD_FLIGHT: 4,
  12. REQUEST_RENDER_MODE_DEFER_CHECK: 5,
  13. MOST_DETAILED_PRELOAD: 6,
  14. MOST_DETAILED_PICK: 7,
  15. NUMBER_OF_PASSES: 8,
  16. };
  17. const passOptions = new Array(Cesium3DTilePass.NUMBER_OF_PASSES);
  18. passOptions[Cesium3DTilePass.RENDER] = Object.freeze({
  19. pass: Cesium3DTilePass.RENDER,
  20. isRender: true,
  21. requestTiles: true,
  22. ignoreCommands: false,
  23. });
  24. passOptions[Cesium3DTilePass.PICK] = Object.freeze({
  25. pass: Cesium3DTilePass.PICK,
  26. isRender: false,
  27. requestTiles: false,
  28. ignoreCommands: false,
  29. });
  30. passOptions[Cesium3DTilePass.SHADOW] = Object.freeze({
  31. pass: Cesium3DTilePass.SHADOW,
  32. isRender: false,
  33. requestTiles: true,
  34. ignoreCommands: false,
  35. });
  36. passOptions[Cesium3DTilePass.PRELOAD] = Object.freeze({
  37. pass: Cesium3DTilePass.SHADOW,
  38. isRender: false,
  39. requestTiles: true,
  40. ignoreCommands: true,
  41. });
  42. passOptions[Cesium3DTilePass.PRELOAD_FLIGHT] = Object.freeze({
  43. pass: Cesium3DTilePass.PRELOAD_FLIGHT,
  44. isRender: false,
  45. requestTiles: true,
  46. ignoreCommands: true,
  47. });
  48. passOptions[Cesium3DTilePass.REQUEST_RENDER_MODE_DEFER_CHECK] = Object.freeze({
  49. pass: Cesium3DTilePass.REQUEST_RENDER_MODE_DEFER_CHECK,
  50. isRender: false,
  51. requestTiles: true,
  52. ignoreCommands: true,
  53. });
  54. passOptions[Cesium3DTilePass.MOST_DETAILED_PRELOAD] = Object.freeze({
  55. pass: Cesium3DTilePass.MOST_DETAILED_PRELOAD,
  56. isRender: false,
  57. requestTiles: true,
  58. ignoreCommands: true,
  59. });
  60. passOptions[Cesium3DTilePass.MOST_DETAILED_PICK] = Object.freeze({
  61. pass: Cesium3DTilePass.MOST_DETAILED_PICK,
  62. isRender: false,
  63. requestTiles: false,
  64. ignoreCommands: false,
  65. });
  66. Cesium3DTilePass.getPassOptions = function (pass) {
  67. return passOptions[pass];
  68. };
  69. export default Object.freeze(Cesium3DTilePass);