AnsysLink/PROJECT_STRUCTURE.md

6.2 KiB
Raw Permalink Blame History

CAE网格生成助手 - 项目结构说明

📁 目录结构概览

cae-mesh-generator/
├── 📄 app.py                    # Flask应用主入口
├── 🚀 start.py                  # 快速启动脚本
├── ⚙️ config.py                 # 配置文件
├── 📋 requirements.txt          # Python依赖列表
├── 📖 README.md                 # 项目说明文档
├── 📖 USAGE_GUIDE.md            # 使用指南
├── 📖 PROJECT_STRUCTURE.md      # 项目结构说明(本文件)
├── 🔧 backend/                  # 后端代码目录
│   ├── 🌐 api/                 # API路由模块
│   ├── 🏗️ core/                # 核心业务逻辑
│   ├── 📊 models/              # 数据模型定义
│   ├── 🛠️ utils/               # 工具函数库
│   └── 🔗 pymechanical/        # ANSYS集成模块
├── 🎨 frontend/                 # 前端资源目录
│   ├── 📄 index.html           # 主页面模板
│   ├── 📁 static/              # 静态资源
│   │   ├── 🎨 css/            # 样式文件
│   │   └── ⚡ js/             # JavaScript文件
│   └── 📤 uploads/             # 文件上传存储
├── 🔧 scripts/                  # 脚本工具目录
│   ├── 🎭 demo_launcher.py     # 演示启动器
│   ├── ✅ deployment_check.py   # 部署检查脚本
│   ├── 🚀 run_app.py           # 应用启动脚本
│   └── 💻 blade_mesh_cli.py    # 命令行工具
├── 🧪 test/                     # 测试文件目录
│   ├── 🧪 test_*.py            # 各种测试文件
│   └── 🔍 check_*.py           # 检查脚本
├── 📊 results/                  # 结果文件存储
└── 🗂️ temp/                     # 临时文件目录

📂 详细目录说明

🏠 根目录文件

文件 说明 用途
app.py Flask应用主入口 定义Flask应用和路由配置
start.py 快速启动脚本 一键启动,自动检查环境
config.py 配置文件 系统配置和参数设置
requirements.txt 依赖列表 Python包依赖定义

🔧 backend/ - 后端代码

🌐 api/ - API路由模块

  • routes.py - 主要API路由定义
  • 处理HTTP请求和响应
  • 实现RESTful API接口

🏗️ core/ - 核心业务逻辑

  • 网格生成核心算法
  • ANSYS集成核心功能
  • 业务流程控制

📊 models/ - 数据模型

  • data_models.py - 数据结构定义
  • 文件、状态、结果等模型类
  • 数据序列化和验证

🛠️ utils/ - 工具函数库

  • state_manager.py - 状态管理
  • file_validator.py - 文件验证
  • mesh_processor.py - 网格处理
  • error_handler.py - 错误处理
  • resource_manager.py - 资源管理
  • visualization_exporter.py - 可视化导出

🔗 pymechanical/ - ANSYS集成

  • session_manager.py - ANSYS会话管理
  • mesh_controller.py - 网格控制
  • mesh_generator.py - 网格生成
  • mesh_quality_checker.py - 质量检查
  • named_selection_manager.py - 命名选择管理

🎨 frontend/ - 前端资源

📄 页面文件

  • index.html - 主页面模板
  • script.js - 旧版JavaScript保留
  • style.css - 旧版样式(保留)

📁 static/ - 静态资源

  • css/main.css - 主样式文件
  • js/main.js - 主JavaScript文件

📤 uploads/ - 上传存储

  • 用户上传的STEP文件存储位置
  • 自动创建,运行时使用

🔧 scripts/ - 脚本工具

脚本 功能 使用场景
demo_launcher.py 演示启动器 完整演示展示
deployment_check.py 部署检查 部署前环境检查
run_app.py 应用启动 标准应用启动
blade_mesh_cli.py 命令行工具 命令行操作

🧪 test/ - 测试文件

测试分类

  • 单元测试: test_*.py - 各模块功能测试
  • 集成测试: test_integration.py - 完整流程测试
  • API测试: test_api_*.py - API接口测试
  • ANSYS测试: test_ansys_*.py - ANSYS集成测试

主要测试文件

  • test_suite.py - 综合测试套件
  • test_integration.py - 集成测试
  • test_complete_workflow.py - 完整工作流测试

📊 results/ - 结果存储

  • 网格生成结果文件
  • 质量报告文件
  • 可视化图像文件
  • 自动创建和管理

🗂️ temp/ - 临时文件

  • 处理过程中的临时文件
  • ANSYS工作文件
  • 自动清理机制

🚀 启动方式优先级

  1. 快速启动 (推荐新用户)

    python start.py
    
  2. 演示模式 (推荐展示)

    python scripts/demo_launcher.py
    
  3. 应用启动 (推荐日常使用)

    python scripts/run_app.py
    
  4. 开发模式 (推荐开发者)

    python app.py
    

🔄 数据流向

用户上传 → frontend/uploads/ → 后端验证 → ANSYS处理 → results/ → 前端展示
    ↓           ↓              ↓           ↓          ↓         ↓
  Web界面 → 文件存储 → backend/utils → pymechanical → 结果存储 → 可视化

🛠️ 开发指南

添加新功能

  1. 后端功能: 在 backend/ 相应模块中添加
  2. API接口: 在 backend/api/routes.py 中添加路由
  3. 前端功能: 在 frontend/static/js/ 中添加JavaScript
  4. 测试: 在 test/ 中添加对应测试

修改配置

  • 系统配置: 编辑 config.py
  • ANSYS配置: 修改 config.py 中的 ANSYS_CONFIG
  • 前端配置: 修改 frontend/static/js/main.js

调试和测试

  • 运行测试: python test/test_suite.py
  • 检查部署: python scripts/deployment_check.py
  • 集成测试: python test/test_integration.py

📋 维护清单

定期维护

  • 清理 temp/ 目录
  • 清理 frontend/uploads/ 旧文件
  • 清理 results/ 过期结果
  • 检查日志文件大小

更新维护

  • 更新 requirements.txt 依赖版本
  • 更新 ANSYS 版本配置
  • 更新前端库版本
  • 更新文档内容

注意: 此项目结构经过优化,将相关文件归类整理,便于维护和扩展。