注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

眼睛想旅行

技术就是我的生命与信仰!

 
 
 

日志

 
 
关于我

精通C,C++,python,Erlang。并熟悉各种其他编程语言,用cocos2dx游戏引擎作过几个项目。会MySQL增删改查,了解OpenGL渲染原理。懂单片机,能设计数字电路系统,会画电路图和设计电路板。喜欢了解最新前沿技术,并持续关注和学习新技术。

网易考拉推荐

maya来自外部解释器的Python(转)  

2015-06-05 17:38:55|  分类: 3D建模学习 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
今天本来打算用虚幻引擎作一个小游戏,但发现没有3D模型,正好电脑上装了maya就想用maya作一个立方体,结果发现这个立方体不知道要怎么设置长宽高了,最后无奈之下想到了好像maya可以用脚本来创建模型.试了下,还真的可以,而且不使用MEL而使用我非常熟的Python,发现用起来非常简单.不过maya自代的Python编器不好用,没有函数自动提示功能,而且对语法的自动对齐好像也不是很好用.所以就想看能不能在eclipse里使用pydev来作maya的脚本文件编辑.找到了下边的设置方法.转来收藏和分享.
转自官网:http://download.autodesk.com/global/docs/maya2013/zh_cn/index.html?url=files/Python_Python_from_an_external_interpreter.htm,topicNumber=d30e723522

除了在 Maya 应用程序内支持 Python,Maya 也支持从独立 Python 解释器使用 Maya Python 模块。在执行批处理或从使用 Python 的另一应用程序(如 MotionBuilder 或 Composite)访问 Maya 功能时,这将非常有用。

我们提供了独立的 Python 解释器,已正确配置供导入 Maya 功能。

  • 在 Windows 和 Linux 上,运行 Maya bin 目录中的 mayapy 可执行文件。
  • 在 Mac OS X 上,运行 ../files/ Maya.app/Contents/bin 中的 mayapy 可执行文件。

Python 解释器加载后,必须加载和初始化 Maya。为此,请在窗口中键入以下内容:

import maya.standalone maya.standalone.initialize( name='python' )

注意

这些命令的执行需要花费大量时间,因为它们将加载所有 Maya 库并初始化场景。

初始化程序只需要一个参数 (name),并且是可选的。name 参数为 Maya 提供应用程序的名称。name 的默认值是 python

Maya 加载并初始化后,所有 Maya 功能都应可用(maya.cmdsmaya.OpenMaya 等)。但是,在 Python 解释器中运行 Maya 相当于在批处理模式下运行 Maya。这意味着所有常规 Maya 批处理模式限制都存在,包括禁用 UI 命令。

注意

Maya 在 Maya 内设定 PYTHONHOME 环境变量,在 Maya 外(即,使用外部解释器时)清除该变量。

提示若要确定是否在 Maya 内部 Python 解释器中,您可以执行以下代码块:
		try: 			import maya.standalone 			maya.standalone.initialize() 		except: 			pass

如果在 Maya 内部 Python 解释器中,initialize() 调用将抛出异常,该异常将被安全捕捉。

使用不同的 Python 解释器

可以通过 Maya 随附 Python 解释器之外的 Python 解释器使用 Maya。但是,建议使用版本号与 Maya 中所含 Python 相同的 Python。若要使用另一解释器,必须设置正确的环境。

为 Python 解释器设置环境

  1. 在解释器初始化后(但要在 Maya 初始化前),将 Maya 的 site-packages 目录添加到 PYTHONPATH 环境变量,或将其添加到 Python 内的 sys.path。该目录是:
    • Windows:./Python/Lib/site-packages
    • Mac OS X:../files/Maya.app/Contents/Frameworks/Python.framework/Versions/Current/lib/python2.4/site-packages
    • Linux:../files/lib/python2.4/site-packages
  2. 将 MAYA_LOCATION 环境变量设定为指向 Maya 安装位置,以便 Maya 可以找到其资源。 

    在 Mac OS X 上,MAYA_LOCATION 必须设定为指向应用程序包(即 ../files/Maya.app/Contents)。

  3. (Linux) 将 Maya 分发的 lib 目录添加到 LD_LIBRARY_PATH,以便 Python 可以在导入 Maya 时找到共享库。
    提示在 Mac OS X 上,mayapy 可执行文件是 shell 脚本,可以进行复制和修改以使用其他 Python 安装。 

    设置无脚本环境

    1. 将 ../files/Maya.app/Contents/MacOS 添加到 DYLD_LIBRARY_PATH,以便 Python 可以找到 Maya 共享库。 

    2. 将 ../files/Maya.app/Contents/Frameworks 添加到 DYLD_FRAMEWORK_PATH,以便 Python 可以找到 Maya 所依赖的框架。 

    3. 将 MAYA_NO_BUNDLE_RESOURCES 设定为某些值。这将要求 Maya 通过 MAYA_LOCATION 查找资源,而不是通过查找主包。(当 Maya 以这种方式批处理运行时,主包不是 Maya 的主包。)


刚刚试了一下,这个方法好像在ecplise中不行.谁有好的方法给我说一下.
不过今天学习了一下怎么创建模型:
下边的代码会创建5个立方体,并使他们从下向上竖直排列.
import maya.cmds as mc
def height(h):
    sel = mc.ls(sl=1)
    print sel
    for i in range(len(sel)):
        mc.setAttr(sel[i]+'.ty',h*i)
cubes = []
for p in range(6):
    cubx = mc.polyCube()[0]
    print cubx
    cubes.append(cubx)
print cubes
mc.select(cubes)
height(2)
总的来说,今天还是比较有收获的.
  评论这张
 
阅读(242)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017