@colijnit/homedecorator 259.1.6 → 259.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.
Files changed (25) hide show
  1. package/app/plugins/core3d/items/item.d.ts +1 -0
  2. package/app/plugins/core3d/items/wall-objects.d.ts +1 -0
  3. package/app/plugins/room-planner/components/custome-shape-creator/custom-shape-creator.component.d.ts +4 -0
  4. package/bundles/colijnit-homedecorator.umd.js +90 -49
  5. package/bundles/colijnit-homedecorator.umd.js.map +1 -1
  6. package/esm2015/app/core/service/presets.service.js +1 -1
  7. package/esm2015/app/plugins/core3d/hud/bounding-measurement-box/door-or-window-box-measurement.js +4 -4
  8. package/esm2015/app/plugins/core3d/hud/on-wall-measurements.js +2 -2
  9. package/esm2015/app/plugins/core3d/items/base-item.js +4 -2
  10. package/esm2015/app/plugins/core3d/items/custom-cylinder-floor-item.js +2 -1
  11. package/esm2015/app/plugins/core3d/items/custom-cylinder-wall-item.js +2 -1
  12. package/esm2015/app/plugins/core3d/items/custom-shape-floor-item.js +2 -1
  13. package/esm2015/app/plugins/core3d/items/custom-shape-wall-item.js +2 -1
  14. package/esm2015/app/plugins/core3d/items/in-wall-floor-item.js +2 -1
  15. package/esm2015/app/plugins/core3d/items/item.js +43 -41
  16. package/esm2015/app/plugins/core3d/items/wall-objects.js +12 -2
  17. package/esm2015/app/plugins/core3d/service/item.service.js +3 -1
  18. package/esm2015/app/plugins/furniture-manager/furniture-manager/furniture-manager.component.js +7 -1
  19. package/esm2015/app/plugins/room-planner/components/custom-cylinder-creator/custom-cylinder-creator.component.js +3 -1
  20. package/esm2015/app/plugins/room-planner/components/custome-shape-creator/custom-shape-creator.component.js +11 -4
  21. package/esm2015/app/plugins/room-planner/components/floorplanner/service/room.service.js +4 -1
  22. package/esm2015/app/plugins/threedselector/threedselector/service/third-party-model.service.js +2 -1
  23. package/fesm2015/colijnit-homedecorator.js +89 -49
  24. package/fesm2015/colijnit-homedecorator.js.map +1 -1
  25. package/package.json +1 -1
@@ -74,6 +74,7 @@ export declare class Item extends BaseItem {
74
74
  endDrag(): void;
75
75
  initObject(itemType: any, id: string, identifier: string, modelUrl: any): void;
76
76
  getHalfSize(): Vector3;
77
+ protected handleRawMetadata(): void;
77
78
  /** on is a bool */
78
79
  protected updateHighlight(): void;
79
80
  /** */
@@ -410,6 +410,7 @@ export declare abstract class WallItem extends Item {
410
410
  updateMaterialVisibility(side?: number): void;
411
411
  createTextureMaterial(options?: any): Promise<THREE.MeshPhongMaterial>;
412
412
  getTexture(): Texture;
413
+ setScaleXYZ(x: number, y: number, z: number, recalculateHalfSize?: boolean): void;
413
414
  protected createMaterial(side?: number, isSame?: boolean): Promise<void>;
414
415
  protected setYPositionBasedOnElevation(): void;
415
416
  protected addMaterialMap(material: THREE.MeshPhongMaterial, texture: Texture, flip: boolean): Promise<void>;
@@ -31,6 +31,10 @@ export declare class CustomShapeCreatorComponent implements OnInit {
31
31
  selectedFace: Face;
32
32
  textureOptions: typeof TextureEditorOptions;
33
33
  skin: BoxSkin;
34
+ private _oldFloorPosition;
35
+ private _oldFloorElevation;
36
+ private _oldWallPosition;
37
+ private _oldWallElevation;
34
38
  constructor(_hudService: HudService, _sceneService: SceneService, _roomService: RoomService, _itemService: ItemService, _sceneEventService: SceneEventService, _messageBusService: MessageBusService);
35
39
  ngOnInit(): void;
36
40
  setName(name: string): void;
@@ -2409,7 +2409,9 @@
2409
2409
  }
2410
2410
  };
2411
2411
  BaseItem.prototype.setYPositionBasedOnElevation = function () {
2412
- this.position.y = this.elevation;
2412
+ if (this.elevation) {
2413
+ this.position.y = this.elevation;
2414
+ }
2413
2415
  };
2414
2416
  BaseItem.prototype.getHalfSizeWithoutScale = function () {
2415
2417
  if (this.children.length < 1) {
@@ -2487,46 +2489,9 @@
2487
2489
  _this.addChild(child);
2488
2490
  });
2489
2491
  }
2490
- if (rawMetadata && rawMetadata.scale != null) {
2491
- if (_this.canScaleX || _this.canScaleY || _this.canScaleZ) {
2492
- _this._shouldSetScale = true;
2493
- }
2494
- else {
2495
- _this.scaleGeometry(rawMetadata.scale.x, rawMetadata.scale.y, rawMetadata.scale.z);
2496
- }
2497
- }
2498
- if (_this.scalePercentage !== 100) {
2499
- _this.scale.set(_this.scalePercentage / 100, _this.scalePercentage / 100, _this.scalePercentage / 100);
2500
- }
2501
- _this.calculateHalfSize();
2502
2492
  if (_this.usePivot) {
2503
2493
  _this.updatePivot(_this.updatePivotOnCreate);
2504
2494
  }
2505
- if (rawMetadata) {
2506
- _this.initObject(rawMetadata.itemType, rawMetadata.itemId, rawMetadata.itemIdentifier, rawMetadata.modelUrl);
2507
- if (rawMetadata.position) {
2508
- _this.position.copy(rawMetadata.position);
2509
- _this.positionSet = true;
2510
- }
2511
- else {
2512
- _this.positionSet = false;
2513
- }
2514
- if (rawMetadata.elevation) {
2515
- _this.elevation = rawMetadata.elevation;
2516
- _this.setYPositionBasedOnElevation();
2517
- }
2518
- else {
2519
- _this.elevation = 0;
2520
- }
2521
- if (rawMetadata.rotation) {
2522
- if (rawMetadata.rotation instanceof THREE.Euler) {
2523
- _this.rotation.set(rawMetadata.rotation.x, rawMetadata.rotation.y, rawMetadata.rotation.z);
2524
- }
2525
- else {
2526
- _this.rotation.y = rawMetadata.rotation || 0;
2527
- }
2528
- }
2529
- }
2530
2495
  // this.add(new AxesHelper(2));
2531
2496
  _this._setOriginals();
2532
2497
  return _this;
@@ -2597,6 +2562,7 @@
2597
2562
  };
2598
2563
  Item.prototype.buildFinished = function () {
2599
2564
  _super.prototype.buildFinished.call(this);
2565
+ this.handleRawMetadata();
2600
2566
  // If it's possible to change materials then we need to store the original item
2601
2567
  // This way when we save the project we can do a diff on the materials and store
2602
2568
  // changes instead of the whole material
@@ -2606,9 +2572,6 @@
2606
2572
  }
2607
2573
  this.originalItem = ObjectUtils.DeepCloneObject3D(this);
2608
2574
  }
2609
- if (this._shouldSetScale) {
2610
- this.setScaleXYZ(this.rawMetadata.scale.x, this.rawMetadata.scale.y, this.rawMetadata.scale.z);
2611
- }
2612
2575
  };
2613
2576
  Item.prototype.connectorFromElement = function (selection) {
2614
2577
  var id = this._getIdentifierFromSelection(selection);
@@ -2741,6 +2704,47 @@
2741
2704
  Item.prototype.getHalfSize = function () {
2742
2705
  return this.halfSize.clone();
2743
2706
  };
2707
+ Item.prototype.handleRawMetadata = function () {
2708
+ var rawMetadata = this.rawMetadata;
2709
+ if (rawMetadata) {
2710
+ this.initObject(rawMetadata.itemType, rawMetadata.itemId, rawMetadata.itemIdentifier, rawMetadata.modelUrl);
2711
+ if (rawMetadata.rotation) {
2712
+ if (rawMetadata.rotation instanceof THREE.Euler) {
2713
+ this.rotation.set(rawMetadata.rotation.x, rawMetadata.rotation.y, rawMetadata.rotation.z);
2714
+ }
2715
+ else {
2716
+ this.rotation.y = rawMetadata.rotation || 0;
2717
+ }
2718
+ }
2719
+ if (rawMetadata.position) {
2720
+ this.position.copy(rawMetadata.position);
2721
+ this.positionSet = true;
2722
+ }
2723
+ else {
2724
+ this.positionSet = false;
2725
+ }
2726
+ if (rawMetadata.scale) {
2727
+ if (this.canScaleX || this.canScaleY || this.canScaleZ) {
2728
+ this.setScaleXYZ(this.rawMetadata.scale.x, this.rawMetadata.scale.y, this.rawMetadata.scale.z);
2729
+ // this._shouldSetScale = true;
2730
+ }
2731
+ else {
2732
+ this.scaleGeometry(rawMetadata.scale.x, rawMetadata.scale.y, rawMetadata.scale.z);
2733
+ }
2734
+ }
2735
+ if (this.scalePercentage !== 100) {
2736
+ this.scale.set(this.scalePercentage / 100, this.scalePercentage / 100, this.scalePercentage / 100);
2737
+ }
2738
+ if (rawMetadata.elevation) {
2739
+ this.elevation = rawMetadata.elevation;
2740
+ }
2741
+ else {
2742
+ this.elevation = 0;
2743
+ }
2744
+ }
2745
+ this.calculateHalfSize();
2746
+ this.setYPositionBasedOnElevation();
2747
+ };
2744
2748
  /** on is a bool */
2745
2749
  Item.prototype.updateHighlight = function () {
2746
2750
  if (this.highLightDisabled) {
@@ -13968,6 +13972,11 @@
13968
13972
  WallItem.prototype.getTexture = function () {
13969
13973
  return this.texture;
13970
13974
  };
13975
+ WallItem.prototype.setScaleXYZ = function (x, y, z, recalculateHalfSize) {
13976
+ if (recalculateHalfSize === void 0) { recalculateHalfSize = true; }
13977
+ _super_1.prototype.setScaleXYZ.call(this, x, y, z, recalculateHalfSize);
13978
+ this.reposition();
13979
+ };
13971
13980
  WallItem.prototype.createMaterial = function (side, isSame) {
13972
13981
  if (side === void 0) { side = THREE__namespace.DoubleSide; }
13973
13982
  if (isSame === void 0) { isSame = true; }
@@ -14026,7 +14035,9 @@
14026
14035
  });
14027
14036
  };
14028
14037
  WallItem.prototype.setYPositionBasedOnElevation = function () {
14029
- this.position.y = this.elevation + this.halfSize.y;
14038
+ if (this.boundToFloor) {
14039
+ this.position.y = this.elevation + (this.halfSize ? this.halfSize.y : 0);
14040
+ }
14030
14041
  };
14031
14042
  WallItem.prototype.addMaterialMap = function (material, texture, flip) {
14032
14043
  return __awaiter$1c(this, void 0, void 0, function () {
@@ -14145,6 +14156,9 @@
14145
14156
  /** takes the move vec3, and makes sure object stays bounded on plane */
14146
14157
  WallItem.prototype._boundMove = function (vec3) {
14147
14158
  var edge = this.currentWallEdge;
14159
+ if (!edge) {
14160
+ return;
14161
+ }
14148
14162
  vec3.applyMatrix4(edge.interiorTransform);
14149
14163
  edge.wall.itemsChanged = true;
14150
14164
  if (vec3.x < this._sizeX / 2.0 + this._positionYTolerance) {
@@ -14475,6 +14489,7 @@
14475
14489
  var clone = this.createClass();
14476
14490
  this.cloneProperties(clone);
14477
14491
  clone.name = 'test clone';
14492
+ clone.buildFinished();
14478
14493
  return clone;
14479
14494
  };
14480
14495
  InWallItem.prototype.createMaterial = function (side, isSame) {
@@ -14849,6 +14864,7 @@
14849
14864
  }
14850
14865
  InWallFloorItem.prototype.createClass = function () {
14851
14866
  var clazz = new InWallFloorItem(this.metadata, new THREE.Mesh(new THREE.BoxGeometry(this.halfSize.x * 2, this.halfSize.y * 2, this.halfSize.z * 2)));
14867
+ clazz.buildFinished();
14852
14868
  return clazz;
14853
14869
  };
14854
14870
  return InWallFloorItem;
@@ -14957,6 +14973,7 @@
14957
14973
  var metadata = Object.assign({}, this.metadata);
14958
14974
  metadata.skin = Object.assign({}, this.skin);
14959
14975
  var copy = new CustomShapeFloorItem(metadata, new THREE.Mesh(this.customMesh.geometry.clone().scale(origScale.x, origScale.y, origScale.z), materialsCloned));
14976
+ copy.buildFinished();
14960
14977
  copy.scaleGeometry(this.scale.x, this.scale.y, this.scale.z);
14961
14978
  copy.calculateHalfSize();
14962
14979
  return copy;
@@ -15022,6 +15039,7 @@
15022
15039
  var metadata = Object.assign({}, this.metadata);
15023
15040
  metadata.skin = Object.assign({}, this.skin);
15024
15041
  var copy = new CustomCylinderFloorItem(metadata, new THREE.Mesh(this.customMesh.geometry.clone().scale(origScale.x, origScale.y, origScale.z), materialsCloned));
15042
+ copy.buildFinished();
15025
15043
  copy.scaleGeometry(this.scale.x, this.scale.y, this.scale.z);
15026
15044
  copy.calculateHalfSize();
15027
15045
  return copy;
@@ -15423,6 +15441,7 @@
15423
15441
  item.opening = Object.assign({}, metadata.opening);
15424
15442
  }
15425
15443
  item.userData.itemType = metadata.itemType;
15444
+ item.buildFinished();
15426
15445
  this.addItem(item);
15427
15446
  return item;
15428
15447
  };
@@ -15460,6 +15479,7 @@
15460
15479
  return [4 /*yield*/, new itemConstructor(metadata, modelData.object)];
15461
15480
  case 1:
15462
15481
  item = _a.sent();
15482
+ item.buildFinished();
15463
15483
  this.addItem(item);
15464
15484
  return [2 /*return*/, item];
15465
15485
  }
@@ -20385,6 +20405,9 @@
20385
20405
  case 1:
20386
20406
  _a.sent();
20387
20407
  this.walls.forEach(function (wall) { return wall.updateWallItems(); });
20408
+ if (this.walls && this.walls.length > 0 && this._viewModeService.is3dViewActive()) {
20409
+ this._updateEdgeVisibility(this._cameraService.camera.position);
20410
+ }
20388
20411
  return [2 /*return*/];
20389
20412
  }
20390
20413
  });
@@ -21945,6 +21968,7 @@
21945
21968
  var metadata = Object.assign({}, this.metadata);
21946
21969
  metadata.skin = Object.assign({}, this.skin);
21947
21970
  var copy = new CustomShapeWallItem(metadata, new THREE.Mesh(this.customMesh.geometry.clone().scale(origScale.x, origScale.y, origScale.z), materialsCloned));
21971
+ copy.buildFinished();
21948
21972
  copy.scaleGeometry(this.scale.x, this.scale.y, this.scale.z);
21949
21973
  copy.calculateHalfSize();
21950
21974
  return copy;
@@ -22004,6 +22028,7 @@
22004
22028
  var metadata = Object.assign({}, this.metadata);
22005
22029
  metadata.skin = Object.assign({}, this.skin);
22006
22030
  var copy = new CustomCylinderWallItem(metadata, new THREE.Mesh(this.customMesh.geometry.clone().scale(origScale.x, origScale.y, origScale.z), materialsCloned));
22031
+ copy.buildFinished();
22007
22032
  copy.scaleGeometry(this.scale.x, this.scale.y, this.scale.z);
22008
22033
  copy.calculateHalfSize();
22009
22034
  return copy;
@@ -23025,7 +23050,7 @@
23025
23050
  var height = new BoxMeasurement();
23026
23051
  var heightString = MeasurementUtils.makeText(this._height, this.dimUnit, this.distanceStep);
23027
23052
  var text = this._dictionaryService.get('LABEL_HEIGHT');
23028
- height.textMesh = makeTextMesh(heightString, this._font, text);
23053
+ height.textMesh = makeTextMesh(heightString, this._font, 0xFF00FF, 0.08, false, false, text);
23029
23054
  height.positions = this.calculateHeightPositions();
23030
23055
  return height;
23031
23056
  };
@@ -23042,7 +23067,7 @@
23042
23067
  var width = new BoxMeasurement();
23043
23068
  var widthString = MeasurementUtils.makeText(this._width, this.dimUnit, this.distanceStep);
23044
23069
  var text = this._dictionaryService.get('LABEL_WIDTH');
23045
- width.textMesh = makeTextMesh(widthString, this._font, text);
23070
+ width.textMesh = makeTextMesh(widthString, this._font, 0xFF00FF, 0.08, false, false, text);
23046
23071
  width.positions = this.calculateWidthPositions();
23047
23072
  return width;
23048
23073
  };
@@ -23059,7 +23084,7 @@
23059
23084
  var openingDepth = new BoxMeasurement();
23060
23085
  var openingDepthString = MeasurementUtils.makeText(this._openingDepth, this.dimUnit, this.distanceStep);
23061
23086
  var text = this._dictionaryService.get('LABEL_DEPTH');
23062
- openingDepth.textMesh = makeTextMesh(openingDepthString, this._font, text);
23087
+ openingDepth.textMesh = makeTextMesh(openingDepthString, this._font, 0xFF00FF, 0.08, false, false, text);
23063
23088
  openingDepth.positions = this.calculateOpeningDepthPositions();
23064
23089
  return openingDepth;
23065
23090
  };
@@ -23652,7 +23677,7 @@
23652
23677
  }
23653
23678
  };
23654
23679
  OnWallMeasurements.prototype.getZPos = function () {
23655
- return Math.max(this.item.getHalfSize().z, this.wallThickness / 2);
23680
+ return Math.max(this.item.getHalfSize().z, this.wallThickness / 2) + 0.05;
23656
23681
  };
23657
23682
  OnWallMeasurements.prototype.hasChanged = function () {
23658
23683
  return this.rotationY !== this.item.rotation.y ||
@@ -33546,6 +33571,7 @@
33546
33571
  }
33547
33572
  item.allowRotate = true;
33548
33573
  item.highLightDisabled = !this._settingsService.settings.options.useStandaloneHighLight;
33574
+ item.buildFinished();
33549
33575
  newCustomFloorObj.furniture = item;
33550
33576
  return newCustomFloorObj;
33551
33577
  };
@@ -43501,17 +43527,21 @@
43501
43527
  this.isFloorType = !this.isFloorType;
43502
43528
  var origScale = new THREE.Vector3(1, 1, 1).divide(this.shape.metadata.scale || new THREE.Vector3(1, 1, 1));
43503
43529
  if (this.isFloorType) {
43530
+ this._oldWallPosition = this.shape.position.clone();
43531
+ this._oldWallElevation = this.shape.elevation;
43504
43532
  var metadata = Object.assign(Object.assign({}, this.shape.metadata), { itemType: ItemType.CustomShape });
43505
- metadata.position = undefined;
43533
+ metadata.position = this._oldFloorPosition ? this._oldFloorPosition.clone() : undefined;
43534
+ metadata.elevation = this._oldFloorElevation ? this._oldFloorElevation : 0;
43506
43535
  metadata.centerPivot = true;
43507
43536
  var geometry = this.shape.customMesh.geometry.clone().scale(origScale.x, origScale.y, origScale.z);
43508
43537
  var shapeFloor = new CustomShapeFloorItem(metadata, new THREE.Mesh(geometry, this.shape.customMesh.material));
43538
+ shapeFloor.buildFinished();
43509
43539
  shapeFloor.scaleGeometry(this.shape.scale.x, this.shape.scale.y, this.shape.scale.z);
43510
43540
  shapeFloor.calculateHalfSize();
43511
43541
  shapeFloor.skin = this.shape.skin;
43512
43542
  var roomCenter = this._roomService.getRoomCenter();
43513
43543
  if (roomCenter) {
43514
- shapeFloor.position.copy(roomCenter);
43544
+ shapeFloor.position.copy(this._oldFloorPosition ? this._oldFloorPosition.clone() : roomCenter);
43515
43545
  }
43516
43546
  shapeFloor.position.y = shapeFloor.getFloorY();
43517
43547
  this._itemService.addItem(shapeFloor);
@@ -43521,11 +43551,14 @@
43521
43551
  this._hudService.updateSelectedItemHud();
43522
43552
  }
43523
43553
  else {
43554
+ this._oldFloorPosition = this.shape.position.clone();
43555
+ this._oldFloorElevation = this.shape.elevation;
43524
43556
  var metadata = Object.assign(Object.assign({}, this.shape.metadata), { itemType: ItemType.CustomShapeWall });
43525
- metadata.position = undefined;
43557
+ metadata.position = this._oldWallPosition ? this._oldWallPosition.clone() : undefined;
43526
43558
  metadata.centerPivot = false;
43527
43559
  var geometry = this.shape.customMesh.geometry.clone().scale(origScale.x, origScale.y, origScale.z);
43528
43560
  var shapeWall = new CustomShapeWallItem(metadata, new THREE.Mesh(geometry, this.shape.customMesh.material));
43561
+ shapeWall.buildFinished();
43529
43562
  shapeWall.scaleGeometry(this.shape.scale.x, this.shape.scale.y, this.shape.scale.z);
43530
43563
  shapeWall.calculateHalfSize();
43531
43564
  shapeWall.skin = this.shape.skin;
@@ -43798,6 +43831,7 @@
43798
43831
  var geometry = this.shape.customMesh.geometry.clone().scale(origScale.x, origScale.y, origScale.z);
43799
43832
  geometry.rotateX(-Math.PI / 2);
43800
43833
  var shapeFloor = new CustomCylinderFloorItem(metadata, new THREE.Mesh(geometry, this.shape.customMesh.material));
43834
+ shapeFloor.buildFinished();
43801
43835
  shapeFloor.scaleGeometry(this.shape.scale.x, this.shape.scale.y, this.shape.scale.z);
43802
43836
  shapeFloor.calculateHalfSize();
43803
43837
  shapeFloor.skin = this.shape.skin;
@@ -43819,6 +43853,7 @@
43819
43853
  var position = this.shape.position.clone();
43820
43854
  var geometry = this.shape.customMesh.geometry.clone().scale(origScale.x, origScale.y, origScale.z);
43821
43855
  var shapeWall = new CustomCylinderWallItem(metadata, new THREE.Mesh(geometry, this.shape.customMesh.material));
43856
+ shapeWall.buildFinished();
43822
43857
  shapeWall.scaleGeometry(this.shape.scale.x, this.shape.scale.y, this.shape.scale.z);
43823
43858
  shapeWall.customMesh.geometry.rotateX(Math.PI / 2);
43824
43859
  shapeWall.calculateHalfSize();
@@ -45915,6 +45950,7 @@
45915
45950
  itemSelected: this.itemSelected.bind(this),
45916
45951
  itemUnselected: this.itemUnselected.bind(this)
45917
45952
  });
45953
+ item.buildFinished();
45918
45954
  this._itemService.addItem(item);
45919
45955
  return [2 /*return*/, item];
45920
45956
  }
@@ -46027,6 +46063,7 @@
46027
46063
  };
46028
46064
  metadata.scale = model.scale;
46029
46065
  item = new FloorItem(metadata, model.object, null, handlers);
46066
+ item.buildFinished();
46030
46067
  if (object.itemGroup) {
46031
46068
  this._groupService.reattachToItemGroup(item, object.itemGroup, position);
46032
46069
  }
@@ -46072,6 +46109,7 @@
46072
46109
  return [7 /*endfinally*/];
46073
46110
  case 12:
46074
46111
  item = new CustomShapeFloorItem(metadata, new THREE.Mesh(geometry, materials), object.texture);
46112
+ item.buildFinished();
46075
46113
  if (object.itemGroup) {
46076
46114
  this._groupService.reattachToItemGroup(item, object.itemGroup, position);
46077
46115
  }
@@ -46111,6 +46149,7 @@
46111
46149
  return [7 /*endfinally*/];
46112
46150
  case 21:
46113
46151
  item = new CustomShapeWallItem(metadata, new THREE.Mesh(geometry, materials), object.texture);
46152
+ item.buildFinished();
46114
46153
  closestWallEdge = this._roomService.getClosestWallEdge(position.x, position.z);
46115
46154
  item.placeOnEdge(closestWallEdge);
46116
46155
  if (object.itemGroup) {
@@ -46152,6 +46191,7 @@
46152
46191
  return [7 /*endfinally*/];
46153
46192
  case 30:
46154
46193
  item = new CustomCylinderFloorItem(metadata, new THREE.Mesh(geometry, materials), object.texture);
46194
+ item.buildFinished();
46155
46195
  if (object.itemGroup) {
46156
46196
  this._groupService.reattachToItemGroup(item, object.itemGroup, position);
46157
46197
  }
@@ -46192,6 +46232,7 @@
46192
46232
  return [7 /*endfinally*/];
46193
46233
  case 39:
46194
46234
  item = new CustomCylinderWallItem(metadata, new THREE.Mesh(geometry, materials), object.texture);
46235
+ item.buildFinished();
46195
46236
  closestWallEdge = this._roomService.getClosestWallEdge(position.x, position.z);
46196
46237
  item.placeOnEdge(closestWallEdge);
46197
46238
  if (object.itemGroup) {