|
||
---|---|---|
blenderpython | ||
ruby/ruby | ||
test | ||
.cursor-settings.json | ||
.gitignore | ||
README.md | ||
client.py | ||
encoding_fix.py | ||
requirements.txt | ||
ruby.rar | ||
server.py | ||
server_safe.py |
README.md
SUWood Python版本
Ruby到Python的木工设计系统翻译项目,支持Blender集成和独立运行。
📁 项目结构
blender/
├── blenderpython/ # 核心Python模块
│ ├── suw_impl.py # 主要实现模块
│ ├── suw_client.py # SUWood专用客户端
│ ├── suw_*.py # 其他核心模块
│ └── ...
├── test/ # 测试目录 🆕
│ ├── README.md # 测试目录说明
│ ├── quick_suwood_test.py # SUWood快速测试
│ ├── suwood_server_check.py # 服务器检测
│ ├── test_suwood_communication.py # 完整通信测试
│ ├── SUWOOD_COMMUNICATION_GUIDE.md # 通信指南
│ ├── TRANSLATION_SUMMARY.md # 翻译总结
│ └── ... # 其他测试文件和数据
├── ruby/ # 原Ruby代码参考
├── client.py # 通用JSON客户端
├── server.py # 通用JSON服务器
├── requirements.txt # 依赖包列表
└── README.md # 本文件
🎯 核心功能
双客户端系统
客户端 | 用途 | 端口 | 协议 | 状态 |
---|---|---|---|---|
client.py |
通用文件传输 | 8888 | JSON | ✅ 已验证 |
suw_client.py |
SUWood专用 | 7999 | 二进制+JSON | ✅ 已验证 |
SUWood系统组件
- SUWImpl - 木工设计核心实现 (2415行代码)
- 几何系统 - Point3d, Vector3d, Transformation
- 命令系统 - c00-c28等多个木工设计命令
- 材质系统 - RGB材质和纹理,兼容Blender 4.2
- 工具系统 - 点工具、面工具、连续工具等
🚀 快速开始
1. 环境准备
pip install -r requirements.txt
2. 基本测试
# 进入测试目录
cd test
# 检测SUWood服务器(如果有外部服务器)
python suwood_server_check.py
# 快速SUWood通信测试
python quick_suwood_test.py
# 测试通用客户端-服务器
python quick_comm_test.py
3. Blender集成
# 在Blender脚本编辑器中
import sys
sys.path.append("D:/XL/code/blender/blenderpython")
from suw_impl import SUWImpl
from suw_client import get_client, start_command_processor
# 启动SUWImpl系统
impl = SUWImpl.get_instance()
impl.startup()
# 连接SUWood服务器(如果需要)
client = get_client()
start_command_processor()
print("SUWood系统已就绪!")
🔧 测试功能
进入 test/
目录查看完整的测试工具:
SUWood通信测试
- 服务器检测 - 扫描和验证SUWood服务器
- 协议测试 - 验证二进制+JSON协议兼容性
- 命令测试 - 测试get_cmds和set_cmd功能
- 集成测试 - SUWImpl系统集成验证
通用通信测试
- JSON通信 - 客户端-服务器JSON消息传输
- 文件传输 - 上传下载JSON文件
- 连接稳定性 - 长时间连接测试
详细信息请查看 test/README.md
🎨 Blender兼容性
- ✅ 支持Blender 4.2 LTS
- ✅ 材质节点兼容性修复
- ✅ 几何操作和变换
- ✅ 木工零件创建和编辑
- ✅ 纹理和材质系统
📚 文档
test/SUWOOD_COMMUNICATION_GUIDE.md
- SUWood服务器通信指南test/TRANSLATION_SUMMARY.md
- Ruby到Python翻译总结test/使用说明.md
- 详细使用说明
🔄 开发状态
- ✅ 核心系统翻译完成 (16个Python文件)
- ✅ 语法检查100%通过
- ✅ Blender 4.2兼容性修复
- ✅ 双客户端系统验证
- ✅ 完整测试套件
- ✅ 文档和指南完整
💡 使用建议
- 开发测试 - 使用
test/
目录下的工具进行功能验证 - 生产部署 - 直接使用
blenderpython/
模块 - 文件传输 - 使用
client.py
+server.py
- SUWood集成 - 使用
suw_client.py
连接外部SUWood服务器
📞 故障排除
遇到问题时:
- 查看
test/
目录下的相关测试和文档 - 运行对应的检测工具
- 参考通信指南进行配置
- 检查Blender控制台输出
项目已完全准备用于木工设计和3D建模工作流程。