|
|
|
@ -1,6 +1,6 @@
|
|
|
|
|
import { end } from "xaop";
|
|
|
|
|
import { AppendUserInfo, ConverRoomRoof2Data, ConverRoomUnderFloor2Data, Data, Entitys2Data } from "../Add-on/ExportData";
|
|
|
|
|
import { app, ApplicationService } from "../ApplicationServices/Application";
|
|
|
|
|
import { ApplicationService, app } from "../ApplicationServices/Application";
|
|
|
|
|
import { CommandNames } from "../Common/CommandNames";
|
|
|
|
|
import { Hole } from "../DatabaseServices/3DSolid/Hole";
|
|
|
|
|
import { CADObject } from "../DatabaseServices/CADObject";
|
|
|
|
@ -12,6 +12,7 @@ import { HardwareCompositeEntity } from "../DatabaseServices/Hardware/HardwareCo
|
|
|
|
|
import { RemoveObjectData } from "../DatabaseServices/RemoveObjectData";
|
|
|
|
|
import { RoomHolePolyline } from "../DatabaseServices/Room/Entity/Wall/Hole/RoomHolePolyline";
|
|
|
|
|
import { RoomWallBase } from "../DatabaseServices/Room/Entity/Wall/RoomWallBase";
|
|
|
|
|
import { GetAllWalls } from "../DatabaseServices/Room/ParseService/RoomParseUtil";
|
|
|
|
|
import { RoomWallParse } from "../DatabaseServices/Room/ParseService/RoomWallParse";
|
|
|
|
|
import { userConfig } from "../Editor/UserConfig";
|
|
|
|
|
|
|
|
|
@ -138,6 +139,8 @@ export class SyncDataReactor
|
|
|
|
|
changeEntitys.add(app.Database.SunLight);
|
|
|
|
|
changeEntitys.add(app.Database.HemisphereLight);//保证传递灯光参数
|
|
|
|
|
|
|
|
|
|
let hasWall = false;
|
|
|
|
|
|
|
|
|
|
//添加关联的肉(保证肉能够更新绘制)
|
|
|
|
|
const AddRelMeats = (e: Entity) =>
|
|
|
|
|
{
|
|
|
|
@ -176,6 +179,8 @@ export class SyncDataReactor
|
|
|
|
|
}
|
|
|
|
|
else if (e instanceof RoomWallBase)
|
|
|
|
|
{
|
|
|
|
|
hasWall = true;
|
|
|
|
|
|
|
|
|
|
for (let ee of e.RelevancyHoles)
|
|
|
|
|
{
|
|
|
|
|
if (!ee?.Object || ee.IsErase) return;
|
|
|
|
@ -191,6 +196,12 @@ export class SyncDataReactor
|
|
|
|
|
for (let e of changeEntitys) AddRelMeats(e);
|
|
|
|
|
for (let e of createEntitys) AddRelMeats(e);
|
|
|
|
|
|
|
|
|
|
if (hasWall)
|
|
|
|
|
{
|
|
|
|
|
let walls = GetAllWalls();
|
|
|
|
|
for (let wall of walls) changeEntitys.add(wall);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
let d: IncrementData = { Add: Entitys2Data(createEntitys), Change: Entitys2Data(changeEntitys), Delete: Entitys2Data(deleteEntitys) };
|
|
|
|
|
|
|
|
|
|
//分裂实体删除原先旧的对象
|
|
|
|
|