The interface is localized. Skill descriptions and documents are machine-translated by AI into your language; code, commands, paths and technical terms stay in the original, and the author's document governs.
Explore skills
Productivity · SKILL.md

lightningcad

lightningcad

Use when doing architectural facade panel layout and detailing in AutoCAD or ZWCAD — panel numbering, shop drawing generation, material optimization. LightningCAD: building envelope detailing plugin for AutoCAD/ZWCAD.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill documentation

GitHub

name: lightningcad description: "Use when doing architectural facade panel layout and detailing in AutoCAD or ZWCAD — panel numbering, shop drawing generation, material optimization. LightningCAD: building envelope detailing plugin for AutoCAD/ZWCAD." tags:

  • autocad
  • zwcad
  • cad
  • dotnet
  • wpf
  • panel-layout
  • bim
  • envelope
  • commercial
  • plugin

产品定位: 商业软件(非开源),基于 AutoCAD 2019/2020 与 ZWCAD 2022+ 的建筑围护深化设计插件

上游文档: https://znlgis.github.io/cad/LightningCAD/

许可证: 专有商业软件(30 天试用授权,含 SM2 国密加密认证)

运行时: .NET Framework 4.8 | CAD 平台: AutoCAD R23.0/R23.1、ZWCAD 2022+

概述

LightningCAD 是一套面向装配式建筑围护结构深化设计的 CAD 插件系统,核心解决板材(墙板、屋面板、楼承板)的自动排布、节点线生成、收边下料、图纸校验与 BOM 输出等工程痛点。

七大核心模块:

模块功能定位
板材排布(Panel Layout)外墙/内墙/屋面/楼承板板材自动排布、合并、模数归并、碰撞检查、统计表导出
节点线(Node Lines)基于规则映射的自动节点线生成、手动编辑、节点库管理
收边(Edge Trim / ShouBian)块参照实体、均分/定尺分段、批量标注、BOM 导出
洞口与屋面(Openings & Roof)矩形洞口、多边形洞口、屋面坡度定义
图纸校验与输出(Validation & Output)8 项图纸检查 + 3 类出图检查 + 板文调整
CAD 工具包(CAD Kit)命令导航、轴网、视口书签、属性面板、快捷键、备份
桌面客户端(Client)注册登录、插件管理、自动更新、系统托盘

技术架构

技术栈

层面技术选型
运行时.NET Framework 4.8
语言C#
UIWPF + MVVM(CommunityToolkit.Mvvm)
依赖注入Microsoft.Extensions.DependencyInjection
日志Serilog
错误监控Sentry
HTTPFlurl(强类型 DTO)
加密国密 SM2
UI 主题Syncfusion Windows11
自动更新AutoUpdater.NET(阿里云 OSS)
空间分析NetTopologySuite(STR-Tree 空间索引)
表格控件ReoGrid
安装包WixSharp(MSI)

双平台构建

使用条件编译符号为 AutoCAD 和 ZWCAD 编译独立 DLL:

AC_2019/    → AutoCAD R23.0 (2019)
AC_2020/    → AutoCAD R23.1 (2020)
ZW_2022/    → ZWCAD 2022+

自定义 CAD 实体

实体类用途
AecPanel墙板/屋面板/楼承板
AecDivisionLineMgd节点/分割线
AecRectOpeningMgd矩形洞口
AecPolyOpeningMgd多边形洞口
AecLayoutBoundaryMgd排布边界

配置体系

JSON 配置文件存储在 .cfg/Configs/ 目录,支持方案级配置、团队共享与版本间迁移。


核心命令

初始化与板材排布

命令功能
FsInitBuilding初始化建筑实体
FsPanelLayout(外墙/内墙/屋面/楼承板)板材排布
FsMergePanel板材合并(锚点长度调整、洞口避让)
FsBatchModifyPanel批量修改板材属性
FsExportPanelTable导出统计表(DWG + Excel)

节点线

命令功能
FsCreateNodeLine创建节点线
FsEditNodeLine编辑节点线
FsNodeLineLibrary节点库浏览

收边

命令功能
FsShouBianKuWeiHu收边库维护
FsChaRuShouBianTiQuKuang插入收边块参照
FsShouBianFenDuan收边分段(均分/定尺)
FsPiLiangBiaoZhuShouBianXian批量标注收边线
FsShouBianBomDaoExcel导出收边 BOM

洞口与屋面

命令功能
FsCreateWallRectOpening创建墙矩形洞口
FsDingYiWuMianDongKou定义屋面洞口
FsDingYiLouChengBanDongKou定义楼承板洞口
FsDingYiWuMianPoDu定义屋面坡度(a/b 格式)

校验与输出

命令功能
LTJianChaTuZhi图纸校验(8 项检查)
LTChuTuJianCha出图检查(碰撞/重叠/编号)
LTTiaoZhengBanWenZi调整板文位置

CAD 工具包

命令功能
OperateWizard命令导航面板
AxisGrid轴网生成(自动/手动)
ViewportNavigation视口书签与导航
PropertyPalette统一属性编辑器
DrawingManage图层/文字样式/标注样式管理
ShortcutSettings快捷键设置(WH_KEYBOARD_LL 全局钩子)
BackupSettings备份配置(BeginSave/SaveComplete 触发)

典型工作流

标准深化设计流程(9 步)

  1. 初始化建筑(FsInitBuilding)— 创建建筑容器实体
  2. 配置排布方案 — 设置板材规格、间距、模数等参数
  3. 绘制排布边界 — 定义各区域的外轮廓
  4. 执行板材排布 — 自动生成板材实体
  5. 生成节点线 — 基于规则映射自动创建
  6. 创建收边 — 从库中选择并分段
  7. 创建洞口(按需)— 矩形/多边形洞口
  8. 图纸校验 — 执行 8+3 项检查
  9. 输出统计与 BOM — 导出 DWG + Excel

碰撞检查优化

  • 板材数 ≤50:单线程串行
  • 板材数 >50:自动切换多线程并行
  • 基于 NetTopologySuite STR-Tree 空间索引加速

桌面客户端

功能说明
注册/登录邮箱注册(SM2 国密加密)、QQ 群 WebView2 登录
CAD 版本检测自动扫描本机 CAD 安装并注册插件
启动 CAD通过 .scr 脚本加载插件
自动更新AutoUpdater.NET + 阿里云 OSS
心跳检测5 分钟间隔,验证授权有效性
系统托盘后台驻留,快捷操作
诊断工具FsOmTools.exe 独立诊断程序

自定义 URL 协议

fsltcad:// — 从浏览器链接启动客户端。

日志位置

%AppData%\FsLt\Logs\(Serilog 结构化日志)


AI 使用建议

  • 推荐工作流模式:AI 助手开发或使用 LightningCAD 时应遵循标准深化设计流程——FsInitBuilding 初始化 → FsPanelLayout 排布 → FsCreateNodeLine 节点线 → FsShouBian* 收边 → FsCreateWallRectOpening 洞口 → LTJianChaTuZhi 校验 → FsExportPanelTable 输出。自动化批处理可通过 .scr 脚本 + 命令行方式实现无人值守出图。
  • 关键注意事项:① 自定义实体类名(AecPanel 等)和命令前缀(Fs/LT)有明确约定,不得随意命名;② 配置文件为 JSON 格式,存储在 .cfg/Configs/ 下,可用 System.Text.Json 直接读写;③ 板材碰撞检测板材数 >50 时自动启用多线程(NetTopologySuite STR-Tree);④ 跨平台编译使用条件编译符号区分 AutoCAD(AC_)与 ZWCAD(ZW_)目标。
  • 常用代码模式:CAD .NET 插件结构 = 实现 CommandClass → [CommandMethod] 注册命令 → 操作 AutoCAD 实体。配置读写 = System.Text.Json 序列化/反序列化 .cfg/Configs/ 下 JSON 文件。板材排布 = FsPanelLayout → FsMergePanel → FsExportPanelTable 导出统计表。

常见问题

问题解决方案
插件加载失败检查 CAD 信任路径配置(TRUSTEDPATHS)、.NET Framework 4.8 是否安装
自定义实体无法显示确保 ObjectARX .NET 包装器已正确注册
板材碰撞检查过慢板材数 >50 时确认多线程已启用
客户端无法登录检查网络连接、SM2 加密组件是否正常
收边 BOM 导出 Excel 失败确认 ReoGrid/NPOI 组件依赖完整
心跳检测失败授权过期或网络中断,重新登录

相关技能

  • ifoxcad — AutoCAD .NET 二次开发框架(共享 ObjectARX/.NET 插件开发模式):../ifoxcad/SKILL.md
  • fy_layout — 飞扬 LightCAD 场布插件示例(另一 CAD 二次开发参考):../fy_layout/SKILL.md

参考资源

Saved skills