dechen_cave.html 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="description" content="">
  6. <meta name="author" content="">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
  8. <title>Potree Viewer</title>
  9. <link rel="stylesheet" type="text/css" href="../../build/potree/potree.css">
  10. <link rel="stylesheet" type="text/css" href="../../libs/jquery-ui/jquery-ui.min.css">
  11. <link rel="stylesheet" type="text/css" href="../../libs/openlayers3/ol.css">
  12. <link rel="stylesheet" type="text/css" href="../../libs/spectrum/spectrum.css">
  13. <link rel="stylesheet" type="text/css" href="../../libs/jstree/themes/mixed/style.css">
  14. </head>
  15. <body>
  16. <script src="../../libs/jquery/jquery-3.1.1.min.js"></script>
  17. <script src="../../libs/spectrum/spectrum.js"></script>
  18. <script src="../../libs/jquery-ui/jquery-ui.min.js"></script>
  19. <script src="../../libs/other/BinaryHeap.js"></script>
  20. <script src="../../libs/tween/tween.min.js"></script>
  21. <script src="../../libs/d3/d3.js"></script>
  22. <script src="../../libs/proj4/proj4.js"></script>
  23. <script src="../../libs/openlayers3/ol.js"></script>
  24. <script src="../../libs/i18next/i18next.js"></script>
  25. <script src="../../libs/jstree/jstree.js"></script>
  26. <script src="../../build/potree/potree.js"></script>
  27. <script src="../../libs/plasio/js/laslaz.js"></script>
  28. <!-- INCLUDE ADDITIONAL DEPENDENCIES HERE -->
  29. <!-- INCLUDE SETTINGS HERE -->
  30. <div class="potree_container" style="position: absolute; width: 100%; height: 100%; left: 0px; top: 0px; ">
  31. <div id="potree_render_area"></div>
  32. <div id="potree_sidebar_container"> </div>
  33. </div>
  34. <script type="module">
  35. import * as THREE from "../../libs/three.js/build/three.module.js";
  36. window.viewer = new Potree.Viewer(document.getElementById("potree_render_area"));
  37. viewer.setEDLEnabled(true);
  38. viewer.setFOV(60);
  39. viewer.setPointBudget(1_000_000);
  40. viewer.setClipTask(Potree.ClipTask.SHOW_INSIDE);
  41. viewer.loadSettingsFromURL();
  42. viewer.setDescription(`Point cloud of <a href="http://www.dechenhoehle.de/" target="_blank">Dechen-Cave, Iserlohn</a>. Courtesy of <a href="http://lrg.geog.uni-heidelberg.de" target="_blank">Heidelberg University, LiDAR Research Group (LRG)</a><br>
  43. <i style="font-size: small">
  44. H&auml;mmerle, M., H&ouml;fle, B., Fuchs, J., Schr&ouml;der-Ritzrau, A., Vollweiler, N. & Frank, N. (2014): <a href="http://lrg.geog.uni-heidelberg.de/dechencave/" target="_blank">Comparison of Kinect and Terrestrial LiDAR Capturing Natural Karst Cave 3D Objects</a>. IEEE Geoscience and Remote Sensing Letters, Vol. 11(11), pp 1896-1900, DOI:<a href="http://dx.doi.org/10.1109/LGRS.2014.2313599" target="_blank">10.1109/LGRS.2014.2313599</a>
  45. </i>`);
  46. viewer.loadGUI(() => {
  47. viewer.setLanguage('en');
  48. $("#menu_appearance").next().show();
  49. $("#menu_tools").next().show();
  50. $("#menu_scene").next().show();
  51. viewer.toggleSidebar();
  52. $('#sldPointBudget').slider({
  53. max: 3_000_000,
  54. step: 1000,
  55. });
  56. });
  57. // Load and add point cloud to scene
  58. Potree.loadPointCloud("http://5.9.65.151/mschuetz/potree/resources/pointclouds/uni_heidelberg/dechen_cave/cloud.js", "Dechen Cave", function(e){
  59. let scene = viewer.scene;
  60. let pointcloud = e.pointcloud;
  61. let material = pointcloud.material;
  62. material.size = 1;
  63. material.pointSizeType = Potree.PointSizeType.ADAPTIVE;
  64. material.shape = Potree.PointShape.SQUARE;
  65. material.activeAttributeName = "elevation";
  66. scene.addPointCloud(pointcloud);
  67. let volume = new Potree.BoxVolume();
  68. volume.position.set(18.11, 14.94, 1.50);
  69. volume.scale.set(28.08, 19.07, 4.41);
  70. volume.clip = true;
  71. scene.addVolume(volume);
  72. scene.view.setView(
  73. [5.69, 15.51, 10.62],
  74. [15.80, 15.27, 0.72],
  75. );
  76. });
  77. </script>
  78. </body>
  79. </html>