contextmenu.xml 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <krpano>
  2. <!--
  3. contextmenu.xml
  4. krpano 1.21
  5. A helper script for changing the control-mode and
  6. setting some viewing projections via the context-menu.
  7. -->
  8. <contextmenu fullscreen="true" versioninfo="true">
  9. <item name="kr" caption="KRPANO" />
  10. <item name="fs" caption="FULLSCREEN" />
  11. <item name="cc" caption="Change Controlmode" onclick="cm_changecontrolmode();" separator="above" />
  12. <item name="nv" caption="Normal View" onclick="cm_normal_view();" showif="view.vlookatrange == 180" separator="above" />
  13. <item name="fv" caption="Fisheye View" onclick="cm_fisheye_view();" showif="view.vlookatrange == 180" devices="webgl" />
  14. <item name="sv" caption="Stereographic View" onclick="cm_stereographic_view();" showif="view.vlookatrange == 180" devices="webgl" />
  15. <item name="av" caption="Architectural View" onclick="cm_architectural_view();" showif="view.vlookatrange == 180" />
  16. <item name="pv" caption="Pannini View" onclick="cm_pannini_view();" showif="view.vlookatrange == 180" devices="webgl" />
  17. <item name="lp" caption="Little Planet View" onclick="cm_littleplanet_view();" showif="view.vlookatrange == 180" devices="webgl" />
  18. </contextmenu>
  19. <action name="cm_changecontrolmode">
  20. switch(control.mode, moveto, drag, follow);
  21. cm_changecontrolmode_updatecaption();
  22. </action>
  23. <action name="cm_changecontrolmode_updatecaption" autorun="onstart" devices="html5">
  24. txtadd(contextmenu.item[cc].caption,
  25. "Controlmode: ",
  26. "[span style=[sq]", calc(control.mode == 'drag' ? "text-decoration:underline" :""), "[sq]]",
  27. "Drag",
  28. "[/span]",
  29. " | ",
  30. "[span style=[sq]", calc(control.mode == 'follow' ? "text-decoration:underline" :""), "[sq]]",
  31. "Follow",
  32. "[/span]",
  33. " | ",
  34. "[span style=[sq]", calc(control.mode == 'moveto' ? "text-decoration:underline" :""), "[sq]]",
  35. "MoveTo",
  36. "[/span]",
  37. );
  38. </action>
  39. <action name="cm_look_straight">
  40. if(view.vlookat LT -80 OR view.vlookat GT +80,
  41. tween(view.vlookat, 0.0, 1.0, easeInOutSine);
  42. tween(view.fov, 100, distance(150,0.8));
  43. );
  44. </action>
  45. <action name="cm_normal_view">
  46. cm_look_straight();
  47. tween(view.architectural, 0.0, distance(1.0,0.5));
  48. tween(view.pannini, 0.0, distance(1.0,0.5));
  49. tween(view.fisheye, 0.0, distance(1.0,0.5));
  50. </action>
  51. <action name="cm_architectural_view">
  52. cm_look_straight();
  53. tween(view.architectural, 1.0, distance(1.0,0.5));
  54. tween(view.pannini, 0.0, distance(1.0,0.5));
  55. tween(view.fisheye, 0.0, distance(1.0,0.5));
  56. </action>
  57. <action name="cm_fisheye_view">
  58. cm_look_straight();
  59. tween(view.architectural, 0.0, distance(1.0,0.5));
  60. tween(view.pannini, 0.0, distance(1.0,0.5));
  61. tween(view.fisheye, 0.35, distance(1.0,0.5));
  62. </action>
  63. <action name="cm_stereographic_view">
  64. cm_look_straight();
  65. tween(view.architectural, 0.0, distance(1.0,0.5));
  66. tween(view.pannini, 0.0, distance(1.0,0.5));
  67. tween(view.fisheye, 1.0, distance(1.0,0.8));
  68. </action>
  69. <action name="cm_pannini_view">
  70. cm_look_straight();
  71. tween(view.architectural, 0.0, distance(1.0,0.5));
  72. tween(view.pannini, 1.0, distance(1.0,0.8));
  73. if(view.fisheye LT 0.1,
  74. tween(view.fisheye, 1.0, distance(1.0,0.8));
  75. );
  76. </action>
  77. <action name="cm_littleplanet_view">
  78. tween(view.architectural, 0.0, distance(1.0,0.5));
  79. tween(view.pannini, 0.0, distance(1.0,0.5));
  80. tween(view.fisheye, 1.0, distance(1.0,0.8));
  81. tween(view.fov, 150, distance(150,0.8));
  82. tween(view.vlookat, 90, distance(100,0.8));
  83. tween(view.hlookat, calc(view.hlookat + 123.0), distance(100,0.8));
  84. </action>
  85. </krpano>