@2112-lab/central-plant 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -63,29 +63,41 @@ var Export = /*#__PURE__*/function () {
63
63
  includeCustomExtensions: false
64
64
  }, options);
65
65
  _t = format.toLowerCase();
66
- _context.n = _t === 'gltf' ? 2 : _t === 'glb' ? 2 : _t === 'obj' ? 4 : _t === 'stl' ? 6 : 8;
66
+ _context.n = _t === 'gltf' ? 2 : _t === 'glb' ? 2 : _t === 'obj' ? 4 : _t === 'stl' ? 6 : _t === 'ply' ? 8 : _t === 'dae' ? 10 : 12;
67
67
  break;
68
68
  case 2:
69
69
  _context.n = 3;
70
70
  return this.exportGLTF(object, exportOptions);
71
71
  case 3:
72
72
  result = _context.v;
73
- return _context.a(3, 9);
73
+ return _context.a(3, 13);
74
74
  case 4:
75
75
  _context.n = 5;
76
76
  return this.exportOBJ(object, exportOptions);
77
77
  case 5:
78
78
  result = _context.v;
79
- return _context.a(3, 9);
79
+ return _context.a(3, 13);
80
80
  case 6:
81
81
  _context.n = 7;
82
82
  return this.exportSTL(object, exportOptions);
83
83
  case 7:
84
84
  result = _context.v;
85
- return _context.a(3, 9);
85
+ return _context.a(3, 13);
86
86
  case 8:
87
- throw new Error("Unsupported format: ".concat(format));
87
+ _context.n = 9;
88
+ return this.exportPLY(object, exportOptions);
88
89
  case 9:
90
+ result = _context.v;
91
+ return _context.a(3, 13);
92
+ case 10:
93
+ _context.n = 11;
94
+ return this.exportCollada(object, exportOptions);
95
+ case 11:
96
+ result = _context.v;
97
+ return _context.a(3, 13);
98
+ case 12:
99
+ throw new Error("Unsupported format: ".concat(format));
100
+ case 13:
89
101
  exportTime = performance.now() - startTime;
90
102
  exportRecord = {
91
103
  timestamp: new Date().toISOString(),
@@ -103,8 +115,8 @@ var Export = /*#__PURE__*/function () {
103
115
  exportTime: exportTime,
104
116
  filename: this.generateFilename(object.name || 'model', format)
105
117
  });
106
- case 10:
107
- _context.p = 10;
118
+ case 14:
119
+ _context.p = 14;
108
120
  _t2 = _context.v;
109
121
  _exportTime = performance.now() - startTime;
110
122
  _exportRecord = {
@@ -119,10 +131,10 @@ var Export = /*#__PURE__*/function () {
119
131
  this.exportHistory.push(_exportRecord);
120
132
  debugLogger.logger.error("\u274C Failed to export model to ".concat(format.toUpperCase(), ":"), _t2);
121
133
  throw _t2;
122
- case 11:
134
+ case 15:
123
135
  return _context.a(2);
124
136
  }
125
- }, _callee, this, [[1, 10]]);
137
+ }, _callee, this, [[1, 14]]);
126
138
  }));
127
139
  function exportModel(_x, _x2) {
128
140
  return _exportModel.apply(this, arguments);
@@ -247,6 +259,36 @@ var Export = /*#__PURE__*/function () {
247
259
  }
248
260
  return exportPLY;
249
261
  }()
262
+ /**
263
+ * Export to Collada (DAE) format
264
+ * @param {THREE.Object3D} object - Object to export
265
+ * @param {Object} options - Export options
266
+ * @returns {Promise<string>} Collada XML string
267
+ */
268
+ )
269
+ }, {
270
+ key: "exportCollada",
271
+ value: (function () {
272
+ var _exportCollada = _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee6(object) {
273
+ var _this5 = this;
274
+ var options,
275
+ _args6 = arguments;
276
+ return _rollupPluginBabelHelpers.regenerator().w(function (_context6) {
277
+ while (1) switch (_context6.n) {
278
+ case 0:
279
+ options = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : {};
280
+ return _context6.a(2, new Promise(function (resolve) {
281
+ var result = _this5.exporters.collada.parse(object, options);
282
+ resolve(result.data);
283
+ }));
284
+ }
285
+ }, _callee6);
286
+ }));
287
+ function exportCollada(_x7) {
288
+ return _exportCollada.apply(this, arguments);
289
+ }
290
+ return exportCollada;
291
+ }()
250
292
  /**
251
293
  * Export scene configuration to JSON
252
294
  * @param {THREE.Scene} scene - Scene to export
@@ -289,7 +331,7 @@ var Export = /*#__PURE__*/function () {
289
331
  }, {
290
332
  key: "serializeObject",
291
333
  value: function serializeObject(object) {
292
- var _this5 = this;
334
+ var _this6 = this;
293
335
  var serialized = {
294
336
  uuid: object.uuid,
295
337
  name: object.name,
@@ -320,7 +362,7 @@ var Export = /*#__PURE__*/function () {
320
362
 
321
363
  // Recursively serialize children
322
364
  object.children.forEach(function (child) {
323
- serialized.children.push(_this5.serializeObject(child));
365
+ serialized.children.push(_this6.serializeObject(child));
324
366
  });
325
367
  return serialized;
326
368
  }
@@ -493,7 +535,7 @@ var Export = /*#__PURE__*/function () {
493
535
  }, {
494
536
  key: "exportToXML",
495
537
  value: function exportToXML(data) {
496
- var _this6 = this;
538
+ var _this7 = this;
497
539
  var rootElement = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'root';
498
540
  var xmlHeader = '<?xml version="1.0" encoding="UTF-8"?>\n';
499
541
  var _objectToXML = function objectToXML(obj) {
@@ -512,12 +554,12 @@ var Export = /*#__PURE__*/function () {
512
554
  if (_rollupPluginBabelHelpers["typeof"](item) === 'object') {
513
555
  xml += '\n' + _objectToXML(item, indent + 1) + spaces;
514
556
  } else {
515
- xml += _this6.escapeXML(item);
557
+ xml += _this7.escapeXML(item);
516
558
  }
517
559
  xml += "</".concat(key, ">\n");
518
560
  });
519
561
  } else {
520
- xml += "".concat(spaces, "<").concat(key, ">").concat(_this6.escapeXML(value), "</").concat(key, ">\n");
562
+ xml += "".concat(spaces, "<").concat(key, ">").concat(_this7.escapeXML(value), "</").concat(key, ">\n");
521
563
  }
522
564
  });
523
565
  return xml;
@@ -569,63 +611,63 @@ var Export = /*#__PURE__*/function () {
569
611
  }, {
570
612
  key: "exportBatch",
571
613
  value: (function () {
572
- var _exportBatch = _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee6(objects) {
614
+ var _exportBatch = _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee7(objects) {
573
615
  var results, errors, _iterator, _step, item, result, _t3, _t4;
574
- return _rollupPluginBabelHelpers.regenerator().w(function (_context6) {
575
- while (1) switch (_context6.n) {
616
+ return _rollupPluginBabelHelpers.regenerator().w(function (_context7) {
617
+ while (1) switch (_context7.n) {
576
618
  case 0:
577
619
  debugLogger.logger.info("\uD83D\uDD04 Starting batch export of ".concat(objects.length, " objects..."));
578
620
  results = [];
579
621
  errors = [];
580
622
  _iterator = _rollupPluginBabelHelpers.createForOfIteratorHelper(objects);
581
- _context6.p = 1;
623
+ _context7.p = 1;
582
624
  _iterator.s();
583
625
  case 2:
584
626
  if ((_step = _iterator.n()).done) {
585
- _context6.n = 7;
627
+ _context7.n = 7;
586
628
  break;
587
629
  }
588
630
  item = _step.value;
589
- _context6.p = 3;
590
- _context6.n = 4;
631
+ _context7.p = 3;
632
+ _context7.n = 4;
591
633
  return this.exportModel(item.object, item.format, item.options);
592
634
  case 4:
593
- result = _context6.v;
635
+ result = _context7.v;
594
636
  results.push(result);
595
- _context6.n = 6;
637
+ _context7.n = 6;
596
638
  break;
597
639
  case 5:
598
- _context6.p = 5;
599
- _t3 = _context6.v;
640
+ _context7.p = 5;
641
+ _t3 = _context7.v;
600
642
  errors.push({
601
643
  object: item.object.name || 'Unnamed Object',
602
644
  format: item.format,
603
645
  error: _t3.message
604
646
  });
605
647
  case 6:
606
- _context6.n = 2;
648
+ _context7.n = 2;
607
649
  break;
608
650
  case 7:
609
- _context6.n = 9;
651
+ _context7.n = 9;
610
652
  break;
611
653
  case 8:
612
- _context6.p = 8;
613
- _t4 = _context6.v;
654
+ _context7.p = 8;
655
+ _t4 = _context7.v;
614
656
  _iterator.e(_t4);
615
657
  case 9:
616
- _context6.p = 9;
658
+ _context7.p = 9;
617
659
  _iterator.f();
618
- return _context6.f(9);
660
+ return _context7.f(9);
619
661
  case 10:
620
662
  debugLogger.logger.info("\u2705 Batch export complete: ".concat(results.length, " successful, ").concat(errors.length, " failed"));
621
- return _context6.a(2, {
663
+ return _context7.a(2, {
622
664
  results: results,
623
665
  errors: errors
624
666
  });
625
667
  }
626
- }, _callee6, this, [[3, 5], [1, 8, 9, 10]]);
668
+ }, _callee7, this, [[3, 5], [1, 8, 9, 10]]);
627
669
  }));
628
- function exportBatch(_x7) {
670
+ function exportBatch(_x8) {
629
671
  return _exportBatch.apply(this, arguments);
630
672
  }
631
673
  return exportBatch;
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var centralPlant = require('./core/centralPlant.js');
6
+ var sceneViewer = require('./core/sceneViewer.js');
6
7
  var debugLogger = require('./core/debugLogger.js');
7
8
  var nameUtils = require('./core/nameUtils.js');
8
9
  var mathUtils = require('./core/mathUtils.js');
@@ -34,6 +35,7 @@ var testing = require('./analysis/testing.js');
34
35
 
35
36
 
36
37
  exports.CentralPlant = centralPlant.CentralPlant;
38
+ exports.SceneViewer = sceneViewer.SceneViewer;
37
39
  exports.DebugLogger = debugLogger.DebugLogger;
38
40
  exports.logger = debugLogger.logger;
39
41
  exports.modelLogger = debugLogger.modelLogger;
@@ -17,6 +17,7 @@ import { logger, transformLogger, pathfinderLogger, modelLogger } from './debugL
17
17
  import modelPreloader from '../rendering/modelPreloader.js';
18
18
  import DragDropManager from '../managers/controls/dragDropManager.js';
19
19
  import { SceneHelper } from '../helpers/sceneHelper.js';
20
+ import { SceneViewer } from './sceneViewer.js';
20
21
 
21
22
  /**
22
23
  * CentralPlant class that manages all scene utility instances
@@ -1138,6 +1139,36 @@ var CentralPlant = /*#__PURE__*/function () {
1138
1139
  });
1139
1140
  return found;
1140
1141
  }
1142
+
1143
+ /**
1144
+ * Get the SceneViewer class for creating new instances
1145
+ * @returns {Function} The SceneViewer class constructor
1146
+ */
1147
+ }, {
1148
+ key: "getSceneViewerClass",
1149
+ value: function getSceneViewerClass() {
1150
+ return SceneViewer;
1151
+ }
1152
+
1153
+ /**
1154
+ * Get all managers for external access
1155
+ * @returns {Object} All manager instances
1156
+ */
1157
+ }, {
1158
+ key: "getAllManagers",
1159
+ value: function getAllManagers() {
1160
+ return _objectSpread2({}, this.managers);
1161
+ }
1162
+
1163
+ /**
1164
+ * Get all utilities for external access
1165
+ * @returns {Object} All utility instances
1166
+ */
1167
+ }, {
1168
+ key: "getAllUtilities",
1169
+ value: function getAllUtilities() {
1170
+ return _objectSpread2({}, this.utilities);
1171
+ }
1141
1172
  }]);
1142
1173
  }();
1143
1174