资料 --- 在Mac下用Eclipse和Rhino For Mac搭建RhinoPython编辑运行环境

[复制链接]
跳转到指定楼层
63394 Jorin 发表于 2014-5-4 18:30:19 楼主
Rhino for mac 测试版发布已经有一段时间了,并且经常在更新,但直到目前为止,RhinoForMac并没有像Rhino for windows一样具备一个python的脚本编辑器,可以让我们半自动的填充代码,检查语法错误,高亮显示代码等等。
现在我们就在Eclipse for mac这个著名而强大的第三方编辑器中搭建RhinoPython的编辑环境,方便我们在mac下写Python脚本。
第一步,安装Rhino for mac
第二步,安装Eclipse for mac

    下载地址:http://www.eclipse.org/downloads/?osType=macosx
第三步,在Eclipse for mac中安装Pydev
    Pydev是一个Eclipse的插件,让Eclipse可以编辑并运行Python代码。
    Pydev安装方法如下:
    如果是最新版的Eclipse,在Help菜单中选择Eclipse Marketplace,搜索PyDev,直接安装即可。如下图:
   
    安装时候能勾选的都勾选,该同意的就同意,一路下一步直到安装完毕。
    如果因为版本原因,你的Help中没有Eclipse Marketplace,按照以下步骤手动安装PyDev:
    在Help菜单中选择Install New Software,点击Work with选项后面的Add,弹出对话框,Name随便写,Location填写http://pydev.org/updates,填写完毕后点击OK,如下图所示:
   
   点击OK以后稍等片刻,出现要安装的选项,只选Pydev或者两个全部选取,点击最下方的Next一路下一步安装即可:
   
第四步,配置Pydev的Python环境   
    安装成功以后,可以在菜单Eclipse\Preferences中看到Pydev的相关选项,
    切换到PyDev\Editor\Interpreter-Python选项页,点击右侧的Atuo Config,自动创建Python的配置。如下图所示:
   
    对于64位Mac系统而言,通常python也是64位的,但是我们使用Python的时候,有些库是只给32位python使用的,为了我们的python能够支持更多的库,减少运行时因为数位造成的错误,我们给环境变量添加上“以32位运行python”,添加方法如下:
    选择刚才配置好的python,选择Environment,点击下方右侧的New,在弹出的对话框中,Name填写VERSIONER_PYTHON_PREFER_32_BIT,Value填写yes,点击OK,如下图所示:
   
第五步,添加Rhino Python的函数库支持
    通过上面的步骤,现在Eclipse已经可以编辑运行通用的python程序了,现在我们继续添加对RhinoPython函数库的支持,还是在这个页面点击Libraries,点击右侧的New fold
    在当前用户的目录下选择“资源库\Application Support\McNeel\Rhinoceros\MacPluglns\IronPython\settings\lib”目录,例如现在我的当前用户是apple,选择如下图所示的函数库目录:
   
    成功后在libraries窗口中就可以看到我们刚刚添加的库:
   
    点击上图中的OK,完成全部的配置。
使用eclipse编辑Rhino python脚本:
    在eclipse菜单中选择File\new\project,弹出建立工程的选项,在PyDev目录下选择PyDev Project:
   
    建立工程并为工程命名:
   
    工程建立完以后,出现在左侧的Pydev package explorer中:
   
    但目前只有一个工程,并没有文件,我们需要建立python脚本文件,在工程文件夹上点击右键,选择new\file,在弹出的对话框中填写文件名称,点击finish:
   
    现在就可以在编辑器中编写我们的RhinoPython脚本了,从下图中可以看到,eclipse可以帮助我们识别并填充Python代码,非常好用,如图:
   
在Rhino for mac中执行python脚本:
    在Eclipse中编写好脚本以后储存在硬盘上,打开Rhino for mac,直接输入指令RunPythonScript:
   
    在弹出的对话框中选择刚刚在eclipse中编写好的脚本并执行就可以了,我测试了一下,看起来完全正常:
   
    那么同学们赶快去部署自己的Mac RhinoPython编辑环境吧。

   

评分

参与人数 1技术 +2 坛币 +4 收起 理由
simonchen + 2 + 4 非常好的教程

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享分享
关于大陆地区Rhino原厂培训中心
筑梦NARUTO 发表于 2014-5-4 21:53:23
2
J大问下有没有函数可以把物件的属性从line变成GUID呢,类似这个函数的反操作

GUID.jpg (87.76 KB, 下载次数: 27)

GUID.jpg
 楼主| Jorin 发表于 2014-5-5 00:19:55
3
筑梦NARUTO 发表于 2014-5-4 21:53
J大问下有没有函数可以把物件的属性从line变成GUID呢,类似这个函数的反操作

第七行的变量a只是一个还未被添加到场景中的Line对象,就好比加工好了但是还没出厂的产品。没有出厂的产品怎么可能有生产批号呢?
那么要怎样把它生成出来呢,你可以添加一句,a_id=scriptcontext.doc.Objects.AddLine(a)
a_id就是生成好的直线对象a的GUID了。
第九行的b因为用的是pythonscript中的函数,script为了方便,AddLine已经包含了上述添加GUID的过程,这就是为什么用rhinocommon中的Line实例化一个直线对象但无法直接在场景中添加直线,而script中的AddLine却可以的原因。
筑梦NARUTO 发表于 2014-5-5 03:00:59
4
Jorin 发表于 2014-5-5 00:19
第七行的变量a只是一个还未被添加到场景中的Line对象,就好比加工好了但是还没出厂的产品。没有出厂的产品 ...

非常感谢。懂了。
ideacco 发表于 2014-5-8 14:37:26
5
真棒。回去试试去
您需要登录后才可以回帖 登录 | 注册成为会员

本版积分规则