feat: 添加 AI 助手预设问题面板,优化园区概览信息展示

This commit is contained in:
Pine
2026-08-18 06:17:57 +08:00
parent 418d94d7b7
commit 6b7fd0ec95
10 changed files with 420 additions and 21 deletions
+32
View File
@@ -644,6 +644,38 @@ function Building() {
walls.push(<Wall key="railW" x={gx0} z={(gz0 + gz1) / 2} w={gz1 - gz0} h={railH} axis="x" y={FLOOR2} />);
walls.push(<Wall key="railE" x={gx1} z={(gz0 + gz1) / 2} w={gz1 - gz0} h={railH} axis="x" y={FLOOR2} />);
/* ===== 过道/大厅绿植(靠墙摆放 · 严禁穿墙 · 排列整齐) =====
每盆绿植按【墙线 wall(x 或 z)+ 内侧方向 side(+1 向过道内侧 / -1)+ 沿墙间距】确定:
中心离墙 = 冠半径 + 固定余量 0.15,保证完全落在过道地面内、不越墙、不挡门 */
const plant = (s, wall, side, offset) => ({
s,
x: wall.kind === 'x' ? wall.v + side * (0.28 * s + 0.18) : offset,
z: wall.kind === 'z' ? wall.v + side * (0.28 * s + 0.18) : offset,
});
// wall: 沿墙线;offset: 沿该墙线的间距(x 或 z 坐标)
const corridorPlants = [
// —— H04 竖向过道西墙(x=50,过道 x50-58,内侧 = +x 方向)——
plant(0.9, { kind: 'x', v: 50 }, 1, 30),
plant(0.8, { kind: 'x', v: 50 }, 1, 29.2),
// —— H02 竖向过道(x50-53)绿植靠东内侧 x≈50.6,沿 z 等距 ——
plant(0.85, { kind: 'x', v: 50.5 }, 1, 20),
plant(0.85, { kind: 'x', v: 50.5 }, 1, 14),
plant(0.85, { kind: 'x', v: 50.5 }, 1, 8),
// —— H03 横向过道北墙(z=28,过道在 z<28,内侧 = -z)——
// plant(0.9, { kind: 'z', v: 28 }, -1, 48),
// plant(0.9, { kind: 'z', v: 28 }, -1, 54),
// plant(0.9, { kind: 'z', v: 28 }, -1, 56),
// —— 中庭围栏(z=1 北外墙内侧 +z / z=27 南缘内侧 -z)——
// plant(0.85, { kind: 'z', v: 1 }, 1, 40),
// plant(0.85, { kind: 'z', v: 27 }, -1, 40),
// plant(0.85, { kind: 'z', v: 27 }, -1, 2),
// —— W02 共享工位区南缘(z=32,内侧 = +z 回工位区)——
plant(0.8, { kind: 'z', v: 32 }, 1, 36),
plant(0.8, { kind: 'z', v: 32 }, 1, 40),
];
corridorPlants.forEach((p, i) => {
furniture.push(<Plant key={`cp${i}`} x={cx(p.x)} z={cz(p.z)} y={FLOOR2} s={p.s} />);
});
return (
<group>