feat: 移除场景头部信息字段,新增场景宽度和高度字段,优化场景数据保存逻辑

This commit is contained in:
xudan 2025-06-22 14:41:08 +08:00
parent dbfa500743
commit ea4a83daae
2 changed files with 9 additions and 10 deletions

View File

@ -25,10 +25,8 @@ export interface StandardScene {
routes?: Array<StandardSceneRoute>; // 标准线路信息 routes?: Array<StandardSceneRoute>; // 标准线路信息
areas?: Array<StandardSceneArea>; // 标准区域信息 areas?: Array<StandardSceneArea>; // 标准区域信息
blocks?: Array<[number, number]>; // 障碍点集合 blocks?: Array<[number, number]>; // 障碍点集合
header?: { width?: number; // 场景宽度
width: number; height?: number; // 场景高度
height: number;
}; // 场景头部信息
} }
export interface StandardScenePoint { export interface StandardScenePoint {
id: string; id: string;

View File

@ -52,10 +52,10 @@ export class EditorService extends Meta2d {
scene.robotGroups = [detail.group]; scene.robotGroups = [detail.group];
scene.robots = detail.robots; scene.robots = detail.robots;
} }
const { robotGroups, robots, points, routes, areas, header } = scene; const { robotGroups, robots, points, routes, areas, width, height } = scene;
// 保存header字段 // 保存width和height字段
this.#originalSceneData = { header }; this.#originalSceneData = { width, height };
this.open(); this.open();
this.setState(editable); this.setState(editable);
@ -78,7 +78,8 @@ export class EditorService extends Meta2d {
routes: this.routes.value.map((v) => this.#mapSceneRoute(v)).filter((v) => !isNil(v)), routes: this.routes.value.map((v) => this.#mapSceneRoute(v)).filter((v) => !isNil(v)),
areas: this.areas.value.map((v) => this.#mapSceneArea(v)).filter((v) => !isNil(v)), areas: this.areas.value.map((v) => this.#mapSceneArea(v)).filter((v) => !isNil(v)),
blocks: [], blocks: [],
header: this.#originalSceneData?.header, // 保留header字段 width: this.#originalSceneData?.width, // 保留width字段
height: this.#originalSceneData?.height, // 保留height字段
}; };
return JSON.stringify(scene); return JSON.stringify(scene);
@ -371,8 +372,8 @@ export class EditorService extends Meta2d {
} }
//#endregion //#endregion
/** 保存header字段 */ /** 保存width和height字段 */
#originalSceneData?: { header?: { width: number; height: number } }; #originalSceneData?: { width?: number; height?: number };
/** 画布变化事件流,用于触发响应式数据更新 */ /** 画布变化事件流,用于触发响应式数据更新 */
readonly #change$$ = new Subject<boolean>(); readonly #change$$ = new Subject<boolean>();