Cura二次开发环境配置 

3D打印技术 /[软件]
2018-04-12 23:26
本文采用中国大陆版CC协议发布   
作者保留以下权利:
1. 署名(Attribution):必须提到原作者。
2. 非商业用途(Noncommercial):不得用于盈利性目的。
3. 禁止演绎(No Derivative Works):不得修改原作品, 不得再创作。
新浪微博@XX含笑饮砒霜XX   
cura3.2源码分享.jpg

安装Git for Windows下载地址 安装完成之后,鼠标右键可以打开git bash,用于输入下面的命令。  
获取Cura源代码fork and clone首先我们需要    fork     Cura ,并将fork后的repo    clone 到本地  
git clone https://github.com/hanxiaomax/Cura.git配置开发环境以64位 Windows 7为例首先需要安装python,强烈推荐安装32位的,不论你是64位系统还是32位系统,都可以使用32位Python。
0.创建虚拟环境
首先利用pip安装virtualenv,网上很多教程这里不细说了,然后进入cura目录创建虚拟环境    mycura   
virtualenv mycura创建虚拟环境可以安装的依赖库到虚拟环境中,比较容易清理而且也不会把系统的python库搞得乱七八糟。
source mycura/Scripts/activate激活虚拟环境,Mac OS 和 Linux这里命令稍有不同。
创建并激活虚拟环境后,就要安装我们所需要的所有依赖包。

1.安装wxpython
Cura的GUI是用python框架wxPython开发的,而wxPython不可以从pip安装,只能从源码编译或者安装预    编译版本   
wxPython不能直接从pip安装,在虚拟环境中安装看cura教程,比较复杂,需要从源码编译。比较简单的办法就是先把wxPython安装到系统(我们采用这样的方法),然后从    C:\Python27\Lib\site-packages 中把    wx-3.0-msw ,    wx.pth ,    wxversion.py 这三个拷贝到虚拟环境下面的    Lib/site-packages 中即可在虚拟环境中使用。  
如果出现以下问题:    DLL load failed: 1% 不是有效的win32 应用程序   
说明wxPython和Python的版本不匹配,此处应该安装32位的wxPython
安装完成后,进入Python,运行一下    import wx ,如果没有出错就是成功了。(注意测试时应该处于虚拟环境中)  

2.安装其他依赖库
在cura的目录内,使用如下命令,安装    requirements.txt 文件指明的全部依赖包。  
pip install -r requirements.txt
如果是在windows平台下,很有可能会无法安装    numpy 。我们这里依然选择手动安装到系统中,然后拷贝到虚拟环境下的库的方法。 在windows平台上编译容易出现问题,且需要配置很多工具。因此我们直接从网上下载编译好的    numpy 。  
注意,预编译的numpy只有win32版本,需要32位的python,因此我建议使用32位的python。否则还是要自己手动编译的。
安装完成后从系统的    C:\Python27\Lib\site-packages 中把    numpy 和    numpy-1.9.2-py2.7.egg-info 拷贝到虚拟环境下的    Lib/site-packages 即可。  
同样的,进入Python然后    import numpy 测试是否安装成功,成功后,从requirements.txt中删除numpy,再次运行,安装其他的依赖库。  
运行Cura0.修改app.py我们并不希望,每次修改代码后,都要对Cura重新打包然后运行查看效果,而是希望有更加方便的预览办法。其实非常简单,只需要把Cura当做一个模块运行即可。

~\Cura\gui\app.py 中我们需要添加几行代码,使其可以作为模块单独运行
if __name__ == '__main__':    app=CuraApp("1.txt")#随便指定一个文件即可    app.MainLoop()#开启wx的主循环1.启动在cura根目录下    python -m Cura.gui.app 会出现splash画面,如果没有进一步启动程序,说明有一些脚本无法载入,一般是因为导入不了某些库。此时我们需要检查一下是否所有的依赖都已经安装。。正常情况应该是在稍许延时后完成启动。  
我会在接下来的一篇文章里面,详细介绍一下二次开发Cura的思路,包括软件的整体架构,分析各个文件的用途。

声明:3D打印资源库(3dzyk)内网友所发表的所有内容及言论仅代表其本人,并不代表3D打印资源库(3dzyk)观点和立场;如对文章有异议或投诉,请联系kefu@3dzyk.cn。
B Color Smilies
Cura二次开发环境配置