找回密码
 立即注册

微信扫码登录

搜索
查看: 810|回复: 11

[进阶教程] Pascal Editor 3D建筑编辑器修改支持HA 中文

[复制链接]

66

主题

675

回帖

5419

积分

论坛元老

积分
5419
金钱
4673
HASS币
20
发表于 2026-7-13 16:13:07 | 显示全部楼层 |阅读模式
本帖最后由 gmshiwoge 于 2026-7-13 16:15 编辑

原项目:https://github.com/pascalorg/editor

Ubuntu 部署步骤# 1. 安装 Node.js 18+(如果没有)

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs

# 2. 克隆你的 fork

git clone https://github.com/gmshiwoge/editor.git
cd editor

# 3. 切换到最新分支

git checkout feat/editor-enhancements

# 4. 安装依赖(用 npm 或 bun)

npm install

# 或者: curl -fsSL https://bun.sh/install | bash && bun install

# 5. 构建

npx turbo build --filter=editor --no-cache

# 6. 启动(端口 3000)

cd apps/editor && npx next start --port 3000

如果 Ubuntu 有 GPU(WebGPU 需要),确保 Chrome 113+ 或者用 --enable-unsafe-webgpu 启动浏览器。服务端本身不需要 GPU,WebGPU 是客户端浏览器的事。
部署完毕进入http://localhost:3000/scenes 或者 http://ip:3000/scenes 创建新场景


详细更新说明新功能
1. HA 接管系统
  • 灯光面板:绑定 HA 实体后,灯光开关由 HA light.turn_on/turn_off 控制
  • 门面板:摆动门通过 swingAngle(弧度 0π/2)控制开合;推拉/折叠门通过 operationState(01)控制
  • 窗面板:通过 operationState(0~1)控制开合
  • 绑定实体后立即读取当前 HA 状态并同步到 3D 模型
2. HA 模式按钮
  • 工具栏底部新增「HA」按钮,点击切换 HA 模式
  • 开启后:每个绑定了 HA 实体的节点显示悬浮标签(友好名称)
  • 关闭后:不显示任何 HA 标签
  • 原「显示」菜单中的「HA 名称」和「HA 实体」开关已移除
3. HA 状态控制圆点
  • 每个 HA 悬浮标签右侧有绿色/灰色圆点
  • 绿色 = 实体当前 ON,灰色 = OFF
  • 点击立即切换颜色(乐观 UI),后台异步发送 HA API 请求
  • 支持灯光 toggle、门窗开合控制
4. 导出 App(GLB + 场景数据)
  • 设置面板新增「导出 App」按钮
  • 导出 ZIP 包含 3 个文件:
    • model.glb — 3D 模型,每个节点含 pascalId
    • scene.json — HA 实体绑定、门窗控制数据、节点信息
    • README.txt — Unity C# 完整集成指南

Bug 修复

问题
修复
摆动门同步无效
operationState 改为正确设置 swingAngle
关闭接管后无法手动修改
handleUpdate 读取实时 store 状态而非闭包值
绑定实体后不立即同步
开启接管时立即读取 HA 实体状态





HA 使用办法1. 连接 Home Assistant
设置面板 → Home Assistant 区域 → 填入 HA 地址(如 http://192.168.1.100:8123)和长期访问令牌
2. 绑定实体到节点
  • 选中一个灯光/门/窗节点
  • 侧面板出现「HA 实体」选择器,选择对应的 HA 实体
  • 绑定后默认开启 HA 接管
3. 接管模式
  • 开启:节点状态由 HA 自动控制,面板上的开关变为只读,显示「HA 接管」标签
  • 关闭:恢复手动控制,面板开关可操作
  • 门/窗面板右上角有「HA 接管」切换按钮
4. HA 模式查看与控制
  • 点击工具栏「HA」按钮开启 HA 模式
  • 所有绑定了 HA 实体的节点显示悬浮标签
  • 绿色圆点 = ON,灰色 = OFF
  • 点击圆点直接控制设备(无需打开侧面板)
5. 导出给 Unity
  • 设置 → 导出 App → 下载 ZIP
  • 解压后用 model.glb 导入 Unity
  • scene.json 中的 haBindings 字段匹配节点,挂载 HA 控制脚本



截屏2026-07-13 15.44.53.png
截屏2026-07-13 15.44.35.png

评分

参与人数 1金钱 +10 收起 理由
aiqienanguatou + 10 论坛有你更精彩!

查看全部评分

回复

使用道具 举报

18

主题

434

回帖

3061

积分

论坛元老

积分
3061
金钱
2609
HASS币
10
发表于 2026-7-13 22:31:55 | 显示全部楼层
支持彩色的么
回复

使用道具 举报

21

主题

528

回帖

2505

积分

金牌会员

积分
2505
金钱
1946
HASS币
40
发表于 2026-7-14 08:45:25 | 显示全部楼层
内置家具模型吗?多吗?
回复

使用道具 举报

66

主题

675

回帖

5419

积分

论坛元老

积分
5419
金钱
4673
HASS币
20
 楼主| 发表于 2026-7-14 11:18:12 | 显示全部楼层

颜色可以自定义,但是我后面应该导出模型使用unity实现类型小米的
截屏2026-07-10 15.36.44.png
回复

使用道具 举报

66

主题

675

回帖

5419

积分

论坛元老

积分
5419
金钱
4673
HASS币
20
 楼主| 发表于 2026-7-14 11:19:42 | 显示全部楼层
lovelyelfpop 发表于 2026-7-14 08:45
内置家具模型吗?多吗?

还可以的,但是没有窗帘,后面要我自己添加上去了,
回复

使用道具 举报

18

主题

434

回帖

3061

积分

论坛元老

积分
3061
金钱
2609
HASS币
10
发表于 2026-7-16 00:58:24 | 显示全部楼层
gmshiwoge 发表于 2026-7-14 11:18
颜色可以自定义,但是我后面应该导出模型使用unity实现类型小米的

我的意思是可以做到仿真家具什么的么,类似sweethome3D那样
回复

使用道具 举报

66

主题

675

回帖

5419

积分

论坛元老

积分
5419
金钱
4673
HASS币
20
 楼主| 发表于 2026-7-16 17:15:39 | 显示全部楼层
aiqienanguatou 发表于 2026-7-16 00:58
我的意思是可以做到仿真家具什么的么,类似sweethome3D那样

是的
sweethome3D 好像现在都收费了
回复

使用道具 举报

18

主题

434

回帖

3061

积分

论坛元老

积分
3061
金钱
2609
HASS币
10
发表于 2026-7-17 02:21:52 | 显示全部楼层
gmshiwoge 发表于 2026-7-16 17:15
是的
sweethome3D 好像现在都收费了

感谢,那这个项目很棒啊
回复

使用道具 举报

18

主题

434

回帖

3061

积分

论坛元老

积分
3061
金钱
2609
HASS币
10
发表于 2026-7-17 02:23:03 | 显示全部楼层
gmshiwoge 发表于 2026-7-16 17:15
是的
sweethome3D 好像现在都收费了

要是能docker部署就好了
回复

使用道具 举报

1

主题

13

回帖

180

积分

注册会员

积分
180
金钱
166
HASS币
0
发表于 2026-7-20 15:33:04 | 显示全部楼层
https://bbs.hassbian.com/thread-32546-1-1.html sweethome3D免费的啊,为什么要花钱
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )|网站地图

GMT+8, 2026-8-8 17:51 , Processed in 0.018127 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表