本文采用中国大陆版CC协议发布
作者保留以下权利:
- 署名(Attribution):必须提到原作者。
- 非商业用途(Noncommercial):不得用于盈利性目的。
- 禁止演绎(No Derivative Works):不得修改原作品, 不得再创作。
新浪微博 @软体动物小Ai
上一篇文章我们已经配置了cura GUI的开发环境,本文我带大家探索一下整个项目的目录结构。
最新版的Cura下载下来之后,其目录结构如图所示。(除env以外)
目录结构递归显示为:
|--Cura
| |--avr_isp
| |--gui #界面相关代码
| |--tools
| |--imageToMesh.py
| |--minecraftImport.py
| |--pidDebugger.py #pid控制调试
| |--youmagineGui.py
| |--util
| |--engineResultView.py
| |--gcodeTextArea.py #gcode输入框
| |--dropTarget.py #拖拽放入模型
| |--openglGui.py #opengl相关
| |--openglHelpers.py
| |--previewTools.py #预览
| |--taskbar.py #进度条
| |--webcam.py #摄像头
| |--aboutWindow.py #关于界面
| |--alterationPanel.py #startcode和endcode界面
| |--app.py #主入口
| |--configBase.py #配置向导基类
| |--configWizard.py #配置向导
| |--expertConfig.py #专家模式界面
| |--firmwareInstall.py #固件安装
| |--newVersionDialog.py #新版本提示对话框
| |--pluginPanel.py #插件面板
| |--preferencesDialog.py #首选项对话框
| |--newVersionDialog.py #新版对话框
| |--printWindow.py #打印
| |--sceneView.py #3D场景
| |--simpleMode.py #简单模式界面
| |--splashScreen.py #启动界面
| |--util
| |--explorer.py #资源管理器
| |--gcodeGenerator.py #gcode生成器
| |--gcodeInterpreter.py #gcode解释器
| |--machineCom.py #打印机通信
| |--meshLoader.py #模型加载
| |--objectScene.py #处理场景中的待打印对象
| |--pluginInfo.py #打印信息
| |--polygon.py #处理多边形对象
| |--profile.py #配置参数
| |--removableStorage.py #可移动存储设备
| |--resources.py #管理软件用到的各种资源
| |--sliceEngine.py #管理切片引擎
| |--util3d.py #处理3维点的运算
| |--validators.py #输入验证
| |--version.py #版本
| |--meshLoaders #模型导入相关
| |--Power
| |--printerConnection #连接打印机
| |--pymclevel
| |--cura.py #主程序入口
| |--doctest.py #测试
| |--serialCommunication.py #串口通信
|--plugins #插件相关代码,包含了两个插件
|--resources #系统资源文件
|--scripts #软件打包用到的脚本
|--package.sh #软件打包
目录中主要的文件及目录介绍如上,还有一些文件没有提及,因为暂时还用不到,对于GUI的二次开发主要就是修改gui和util文件夹下的内容。框架使用了WxPython,所以推荐大家看一下 WxPython in action 这本书。