# NSFrameworkExamples **Repository Path**: wx_c3969733c0/nsframework-examples ## Basic Information - **Project Name**: NSFrameworkExamples - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-23 - **Last Updated**: 2026-07-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MyGamaCards - GAMA 自定义二次开发卡片工程 本项目是基于 `ProjectPenguin.Cards.ProcessorCardBase` 的 GAMA 数据处理卡片二次开发项目模板。 ## 开发环境要求 - **IDE**: Visual Studio 2019/2022 或 VS Code (.NET SDK 环境) - **目标框架**: .NET Framework 4.7.2 (`net472`) - **E-GAMA 安装路径**: `C:\Program Files (x86)\E-GAMA` - 核心引用:`C:\Program Files (x86)\E-GAMA\ProjectPenguin.dll` - 核心引用:`C:\Program Files (x86)\E-GAMA\NSGeo3dm.dll` ## 项目结构 - `MyGamaCards.csproj`: SDK 风格的 C# 工程配置文件,已配置指向 E-GAMA DLL 的引用(`Private=false`)及自动复制 `.crd` 的 Target。 - `CardTemplate.cs`: GAMA 二次开发标准模板卡片,包含完整的端口声明、规范的 7 步解耦架构、防错处理、三维预览以及极其详细的教学注释。 - `BuildFrameCard.cs`: 结构力学门架计算模型生成卡片。 - `MechanicsProblemFrameCard.cs`: 结构力学题目专属求解卡片(根据图片结构力学题目图示建立),精确实现 A/B 节点固定端、D 节点铰支座以及 AC 顶梁均布线荷载 q 的建立与多出口导出。 - `presentation.html`: 交互式教学 Slide 幻灯片演示系统(采用 Claude 官方 Oatmeal & Terracotta 美学风格),支持键盘/按钮翻页、代码高亮一键复制与 6 大核心章节教学演示。 - `frontier-design/SKILL.md`: 前端 UI/UX 与 Claude 编辑极简设计规范技能文件。 ## 编译与部署步骤 1. **编译工程**: 在终端运行: ```bash dotnet build -c Release ``` 或直接在 Visual Studio 中选择 `Release` 编译。 2. **部署卡片 (.crd & .pdb)**: 工程内置生成后 Target(`CopyCrd`),成功编译后会自动将编译出的 `MyGamaCards.dll` **重命名为 `.crd`**,并同步将 `.pdb` 调试符号文件拷贝至 GAMA 自定义卡片目录: ```text %AppData%\nonstructure\Penguin\Cards\MyGamaCards.crd %AppData%\nonstructure\Penguin\Cards\MyGamaCards.pdb %AppData%\nonstructure\Penguin\Cards\MyGamaCards.crd.pdb ``` 3. **启动 GAMA 加载**: 打开 GAMA 软件,卡片管理器将自动识别并加载该自定义模块。 ## 调试指南 (断点命中设置) 项目已在 `MyGamaCards.csproj` 中配置了 F5 启动调试外部程序: - **启动程序**: `C:\Program Files (x86)\E-GAMA\NsClientSideLicenseManagerWpf.exe` - **工作目录**: `C:\Program Files (x86)\E-GAMA` ### 解决 VS 断点灰色/无法命中的方法: 1. **自动同步符号 (已配置)**:项目生成时已自动将 `full` 格式的 `.pdb` 符号拷贝至卡片加载目录。 2. **关闭“仅我的代码” (Just My Code)**:在 Visual Studio 菜单中选择 **“调试” -> “选项” -> “调试” -> “通用”**,取消勾选 **“启用“仅我的代码”(Enable Just My Code)”**。这是第三方宿主加载外部 DLL 插件时断点生效的关键! 3. 在 Visual Studio 中按 **F5** 启动调试,即可顺畅命中 `Build` 方法中的代码断点。