Commit Graph
17 Commits
Author SHA1 Message Date
HHY 888a8803af feat: 渲染视觉与图纸对齐(源站原生扇内结构全量消费: 扇内分割/裙板/格条/编号, inferSashPanels 工具+三渲染器接入+锚点归属匹配+对话框ResizeObserver) 2026-10-05 07:15:07 -07:00
HHY cbc96dd166 fix: 效果图页切Tab后3D空白(v-show隐藏下0尺寸初始化+NaN投影矩阵), 增加ResizeObserver容器尺寸追踪与零尺寸保护 2026-10-05 06:23:18 -07:00
HHY 5fe6608ae1 feat: P0-7 玻璃装饰格条设计器(8风格/2D+3D渲染/算料计价) 2026-09-25 03:38:18 -07:00
HHY c2c6359a65 fix: v2.11 3D 全开/全关状态错误根治——分割树重放语义破译与扇五金解析重建
- polyId 语义破译: {idx,pos}=(分裂子树节点id,子区域序), 节点id=sp 0基序号, child0=法线指向侧
- replayShape 重写为树重放(锚点兜底), 704/31594/31729 全引用精确命中官方平面图, 798 扇矩形 100% 有效
- 坐标系修正: 模型 y 向下, 3D 翻转 y, 布局与原图一致
- 扇五金解析: Slide/DoubleSash=推拉, hm.openDirection 定铰链侧(含上悬), hm.openToward 定内外开, od=全开幅
- 移除错误的滑扇附着兜底; 2D 编辑器写回 polyId 同步树寻址
- 验证: 全关/46%/100% 三态截图 + ui-shots 6 页 + validate3d 全量 0 无效
2026-09-23 04:09:40 -07:00
HHY fbef67e450 fix: v2.10 3D 室外场景窗户陷入墙体+平开扇出框双重修复
- 墙体与窗体 z 轴关系: 墙厚 3→2.4×型深, 外墙面退至窗框外表面之后(窗框外露 30% 型深), 消除整窗埋入墙厚
- 窗洞净空自适应外框面宽(fwMax+0.015), 替代固定 0.05
- 平开扇铰链偏移符号修复(+(cxr-hingeX)), 消除关闭态扇出框/开启态扇悬空
- 草地垫对齐新墙面, 网格降至墙脚
- 新增 verify-wall.mjs 真实浏览器三态截图验证
2026-09-23 03:27:14 -07:00
HHY 6b11b6803b feat: v2.9 拖拽移动模式(右键菜单入口)
- 菜单新增'拖拽移动此单元': 进入后鼠标移动即拖动单元(增量平移)
- 点击画布落下并 emit change, 菜单动作与拖拽移动并列
- 配套验证脚本 verify-move.mjs(真实鼠标序列端到端)
2026-09-23 03:03:39 -07:00
HHY e3b4056855 fix: v2.6 组合画布选中根因修复+右键菜单+3D 三场景
- 选中失效根因: Vue3 布尔 prop 缺省转换(editable 缺省→false)
  withDefaults 默认 true 修复, 左键选中/右键选中/菜单动作全链路打通
- 右键菜单: 右键单元弹操作菜单(顺/逆旋转/镜像/底边对齐/删除)
  动作 emit('ctx') 由父组件统一执行, document 级委托
- 3D 三场景: 室内(窗后墙+木地板)/室外(外墙+草地)/影棚(网格)
  场景联动背景色, 真实浏览器截图验证三场景渲染
- 菜单动作行为级验证: 旋转后 1600x1800 宽高互换✓ 删除清空✓
2026-09-22 05:11:47 -07:00
HHY cf8c0c65ce fix: v2.2 前端完整性治理(vue-tsc 全量清零)
- 组合画布 3D 扇面板解构键名错误(rect/s→rect/sash)——3D 混乱根因之一
- WindoorCanvas isDoor 标注 cx 作用域泄漏修复
- WindoorThreed rebuild 函数定义补全(墙体开关可用)
- 量尺页 openCreate 补定义(点击不再报错)
- 状态筛选 ref 类型纳入空串语义(4 页面)
- CombineCanvas 孤儿 @drop 移除+容器 dragover.prevent(拖放入库修复)
- AIRenderCanvas style 属性名保留处理+表单联合类型
- 零散隐式 any 参数补类型
- 新增 check-frontend.cjs: 未定义引用扫描+API 路径一致性比对
- 全量回归: 18 GET+4 POST+7 SPA 全部通过
2026-09-21 04:27:16 -07:00
HHY 5eb93f043e fix: v2.2 修复 3D 截图纯色空白(墙体尺寸单位错误)
- 根因: 墙体宽度 bw=1/S*0.72 误用模型单位(≈最大边长*0.72, 数千单位)
  而放置坐标是世界单位(窗体≈1), 相机被包在巨墙内只见背景色
- 改为世界单位: 上下墙覆盖窗洞±2.2x0.55, 左右墙 0.55x窗高
- 墙体不投影(避免自遮挡), 地面尺寸同步修正
- Node 验证四墙尺寸全部 ≤2.2 世界单位
2026-09-21 04:08:56 -07:00
HHY cbb888c7ff fix: 3D'解析失败'根因修复+错误信息可见
- watch immediate 首跑时 camera 未创建而 build() 触碰 camera
  → TypeError 被 catch 显示为'解析失败'
  移除 build 内相机定位(每帧 loop 已定位, 首跑安全)
- 移除 shadowMap.type 赋值(three r186 已移除 PCFSoft 常量)
- 解析失败时显示真实错误信息(console+画布标注)
- dist 重建, PCFSoft 赋值触发路径清零
2026-09-21 03:54:32 -07:00
HHY e1572f969d fix: v2.1 3D 渲染问题根治(profileGeo 自交破面+扇矩形 NaN)
- profileGeo 外轮廓路径自相交(闭合斜边穿过槽口)导致三角剖分破面
  重写为正确顶点顺序的 U 槽简单多边形
- 型材截面挤出抽为共享模块 three/profileGeo.ts(+geometryIsValid 校验器)
- inferSashGlyphs 兜底 bboxOf 误传段对象→修正为有限值点集
  (修复扇矩形 NaN 序列化为 null 的问题)
- 新增 scripts/validate3d.cjs: 254 样板×3700 网格×798 扇
  逐网格 NaN 检测全部通过; 窄条扇合法跳过
2026-09-21 03:43:26 -07:00
HHY b70a904255 feat: v2.0 DXF 截面学习+多腔体型材挤出落地
- 下载源站 49 个真实型材截面 DXF 用于学习(临时, 已按约定删除)
- 自研 DXF 解析器: 提取截面外轮廓/闭合腔体/实体统计
- 学习结论: 外框深46-62宽74-130(3-6腔), 玻璃扇深80-90宽65-72(4-10腔),
  中梃深79-84宽~100(3-7腔), 纱扇薄壁19-38, 转角立柱146x150(5腔)等
- 3D 型材升级: 多腔体截面挤出(外框3腔/扇2腔, 玻璃槽深20%, 壁厚比例修正)
- 学习结论沉淀至方案文档§3.3, DXF 素材已全部删除
2026-09-21 03:02:05 -07:00
HHY d3accdc237 feat: v1.9 3D 建模深度完善——型材截面挤出+场景+光照+视角
- 探明源站 3D 技术路线: BabylonJS + DXF 型材截面挤出 + sashOpen 开合
- 自研对齐实现(Three.js):
  U 型槽型材截面 ExtrudeGeometry 沿框架挤出(外框/中梃/扇框)
  墙体洞口+地面场景(可开关), PCFSoft 阴影
  光照氛围(日景/黄昏/夜景), 视角预设(正面/45°/侧面/室内)
  自动旋转, 3D 截图导出 PNG(preserveDrawingBuffer)
- 开合动画保留: 平开绕铰链/推拉沿轨道/门大角度
2026-09-21 02:50:25 -07:00
HHY 94c9bfe103 fix+feat: 修复工作台接口不存在 + 3D 区域分配制重建
- 补齐公告后端: Announcement 模型 + /api/announcements + 种子公告
  (修复工作台/布局页调用不存在接口报'接口不存在')
- 修复 seed init_db 前置模型导入(announcements 表未建)
- WindoorThreed 区域分配制: 每个重放区域唯一归属
  (扇认领重叠最大区域, 其余静态玻璃), 杜绝扇面板与玻璃重叠混乱
- 全区域薄框线还原真实窗格, 扇面板含玻璃+四边扇框
2026-09-21 02:34:53 -07:00
HHY 4b52767654 fix: 修复 3D NaN 崩溃/样品图不刷新/画布点选失效
- replayShape 段过滤补 Y 轴有限值校验(此前仅校验 X)
- inferSashGlyphs bdRect 增加有限值守卫
- WindoorThreed 逐网格有限值防护 + maxDim 守卫, 杜绝 NaN 网格
- CombineCanvas shapePts 过滤非有限点, 修复包围盒污染导致的点选失效
- 组合画布引入 rev 版本号: 原地变异几何后强制 3D 预览重建
  (修复尺寸编辑后样品图不变化)
2026-09-21 02:26:08 -07:00
HHY 1585445436 feat: v1.5 3D 门窗开合动画
- 扇推断逻辑抽取为共享模块 inferSashGlyphs(2D符号与3D动画共用)
- WindoorThreed 重写: 扇面板独立网格组
  平开扇绕铰链旋转(od定铰链侧, 门75°/平开32°/双向门40°)
  推拉扇沿轨道平移(双扇前后轨交替)
  区域归属扇的不再重复渲染静态玻璃
- 开合控制条: 开合度滑杆+自动演示+全开/全关, 平滑插值动画
- 组合画布 3D 预览自动获得开合能力
2026-09-21 01:59:12 -07:00
HHY 3f871d7eeb feat: v0.8 平台扩展——3D渲染/打印中心/下料方案/设备/分享/验证码登录
- 3D展示: Three.js挤出重建窗型(玻璃半透明+型材盒体), 自研轨道控制
- 效果图渲染: Canvas场景合成(墙面/玻璃渐变高光/投影/三场景), 设置持久化
- 打印中心: A4生产订单模板(图纸+进度+签字栏), 打印CSS隔离
- 下料方案: 合同级汇总订单算料需求→FFD优化, 修正利用率为已排入/已用料
- 设备模块: 序列号+激活码绑定, 防重复绑定
- 订单分享: HMAC可逆token + 免登录公开只读页(customOrder-share)
- 验证码登录: mock短信通道全流程可用(发码/校验/自动注册), 接签名后换provider
- 帮助文章接口; 新增支付单适配层(微信/支付宝凭据就绪即接通)
- 前端新增6页面, 共18页面
2026-09-20 12:10:26 -07:00