Posted on Leave a comment

Maya魔方绑定的原理 Rubik’sCube rigging

魔方的实现有很多种方法,但是实现的过程都大同小异。我采用的的表达式让时间帧来控制主程序,或者可以使用scriptJob直观的去控制旋转。魔方分别有右、左、前、后、上、下六个面,创建六个控制器并且标号(也可以用8个控制器,俩个中间的)以6个控制器为例:right - 0/left -1 /front -2 /back - 3/up -4/down - 5

一、控制器如何分别控制所对应区域的方块:所有的方块都被6个控制器父子约束,根据标号跟方块的位置参数做比较

二、如何得到旋转的控制器是哪个方向:

1、探测当前控制器在时间线上的度数,可以得到在旋转的方向的标记号

2、如果旋转度数等于0度或90度或者90度的倍数(包括负数) 返回 0

3、如果旋转度数不等于0度或90度或者90度的倍数(包括负数)返回 1

假如等到标记号是1,$index =1;

获取所有方块的$axis[$index]的位移值,如:block1.tx

核心原理如下: Continue reading Maya魔方绑定的原理 Rubik’sCube rigging

Posted on Leave a comment

py2exe的使用方法

py2exe能够把Python script转换成可以在windows上独立执行的(即不需安装)的exe程序。对于非计算机专业的可能对于文件的执行略有压力,导致在网上看了不少的步骤最后都没法转换成功。我总结了一下,就几个点:
1、创建一个py文件,如下打开D盘的命令:

1
2
import os
os.startfile("D:")

2、创建一个setup脚本(setup.py)

1
2
3
from distutils.core import setup
import py2exe
setup(console=['test.py'])

把1、2俩步的test.py 和 setup.py文件放入c:\Python26 下或者你的安装目录

3、检查一下第一段脚本看能否运行(如果打开了D盘说明脚本无误):
a、在windows开始--运行 输入 cmd
b、改变一下路径,输入 cd c:\Python26
c、然后输入 python test.py

4、运行 python setup.py install (注意:确保路径是正确,如c:\Python26>python setup.py install)
5、执行:输入python setup.py py2exe (注意:确保路径是正确,如c:\Python26>python setup.py py2exe)
屏住呼气!!!赶紧去路径dist文件下找exe文件吧!

Posted on Leave a comment

如何拥有我们自己的脚本编辑器

实现很简单,而且还会自动显示帮助,省去来回切换maya帮助的烦恼了。

1
2
3
4
5
6
7
8
9
10
11
12
import maya.cmds as mc
def myScriptEditor():
 
    if mc.window('myPyScriptEditor', exists=True):
        mc.deleteUI('myPyScriptEditor')
    mc.window("myPyScriptEditor", title="My Python Script Editor")
    mc.columnLayout(adjustableColumn=True)
    mc.cmdScrollFieldReporter(height=200)
    mc.cmdScrollFieldExecuter(height=200, sourceType='python')
    mc.showWindow()
 
myScriptEditor()

把sourceType=’python’ 换成 sourceType=’mel’ 就可以成为mel的编辑器了。