actionsbuilder.main.js 3.4 KB

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