actionsbuilder.main.js 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. /*
  2. Global functions called by the plugins (3ds Max, etc.)
  3. */
  4. var list = null;
  5. var viewer = null;
  6. var actionsBuilderJsonInput = document.getElementById("ActionsBuilderJSON");
  7. this.createJSON = function () {
  8. var structure = viewer.utils.createJSON(viewer.root);
  9. var asText = JSON.stringify(structure);
  10. actionsBuilderJsonInput.value = asText;
  11. console.log(asText);
  12. };
  13. this.loadFromJSON = function () {
  14. var json = actionsBuilderJsonInput.value;
  15. if (json !== "") {
  16. var structure = JSON.parse(json);
  17. viewer.utils.loadFromJSON(structure, null);
  18. }
  19. };
  20. this.updateObjectName = function () {
  21. var element = document.getElementById("ActionsBuilderObjectName");
  22. var name = element.value;
  23. viewer.objectName = name;
  24. if (viewer.root.type === ActionsBuilder.Type.OBJECT) {
  25. name += " - Mesh";
  26. }
  27. else {
  28. name += " - Scene";
  29. }
  30. viewer.root.node.text.attr("text", name);
  31. };
  32. this.resetList = function () {
  33. list.clearLists();
  34. list.createListsElements();
  35. };
  36. this.setMeshesNames = function () {
  37. var args = [];
  38. for (var _i = 0; _i < arguments.length; _i++) {
  39. args[_i - 0] = arguments[_i];
  40. }
  41. for (var i = 0; i < args.length; i++) {
  42. ActionsBuilder.SceneElements.MESHES.push(args[i]);
  43. }
  44. };
  45. this.setLightsNames = function () {
  46. var args = [];
  47. for (var _i = 0; _i < arguments.length; _i++) {
  48. args[_i - 0] = arguments[_i];
  49. }
  50. for (var i = 0; i < args.length; i++) {
  51. ActionsBuilder.SceneElements.LIGHTS.push(args[i]);
  52. }
  53. };
  54. this.setCamerasNames = function () {
  55. var args = [];
  56. for (var _i = 0; _i < arguments.length; _i++) {
  57. args[_i - 0] = arguments[_i];
  58. }
  59. for (var i = 0; i < args.length; i++) {
  60. ActionsBuilder.SceneElements.CAMERAS.push(args[i]);
  61. }
  62. };
  63. this.setSoundsNames = function () {
  64. var args = [];
  65. for (var _i = 0; _i < arguments.length; _i++) {
  66. args[_i - 0] = arguments[_i];
  67. }
  68. for (var i = 0; i < args.length; i++) {
  69. var sound = args[i];
  70. if (sound !== "" && ActionsBuilder.SceneElements.SOUNDS.indexOf(sound) === -1) {
  71. ActionsBuilder.SceneElements.SOUNDS.push(args[i]);
  72. }
  73. }
  74. };
  75. this.hideButtons = function () {
  76. };
  77. this.setIsObject = function () {
  78. viewer.root.type = ActionsBuilder.Type.OBJECT;
  79. };
  80. this.setIsScene = function () {
  81. viewer.root.type = ActionsBuilder.Type.SCENE;
  82. };
  83. this.run = function () {
  84. viewer = new ActionsBuilder.Viewer(ActionsBuilder.Type.OBJECT);
  85. viewer.setColorTheme("-ms-linear-gradient(top, rgba(38, 38, 38,1) 0%, rgba(125, 126, 125, 1) 100%)");
  86. viewer.setColorTheme("linear-gradient(top, rgba(38, 38, 38,1) 0%, rgba(125, 126, 125, 1) 100%)");
  87. viewer.setColorTheme("-webkit-linear-gradient(top, rgba(38, 38, 38,1) 0%, rgba(125, 126, 125, 1) 100%)");
  88. viewer.setColorTheme("-o-linear-gradient(top, rgba(38, 38, 38,1) 0%, rgba(125, 126, 125, 1) 100%)");
  89. viewer.onResize();
  90. viewer.update();
  91. list = new ActionsBuilder.List(viewer);
  92. list.setColorTheme("rgb(64, 64, 64)");
  93. list.createListsElements();
  94. list.onResize();
  95. viewer.onResize();
  96. };