CGらぼ

広く浅くCGを勉強していきます。

maya Expression cos,sinで遊んでみた!!

f:id:foreverLab:20151202113729j:plain

pSphere1.translateY = cos(time)*10;

f:id:foreverLab:20151202114251j:plain

pSphere1.translateX = time*5;

pSphere1.translateY = cos(time)*10;

f:id:foreverLab:20151202115603j:plain

pSphere1.translateX = time*5;

pSphere1.translateY = cos(time)*10;

pSphere1.translateZ = sin(time)*10;

f:id:foreverLab:20151202112354j:plain

pSphere1.translateX = cos(time)*10;

pSphere1.translateY = sin(time)*10;

f:id:foreverLab:20151202112416j:plain

pSphere1.translateX = cos(time)*10;

pSphere1.translateY = sin(time*3)*10;

pSphere1.translateZ = sin(time*-3)*10;

f:id:foreverLab:20151202112437j:plain

pSphere1.translateX = cos(time)*10;

pSphere1.translateY = sin(time*3)*10;

pSphere1.translateZ = sin(time*5)*10;

maya Pythonでエクスプレッションを追加・編集する

expression

エクスプレッションを追加する

s・・・エクスプレッションを記述

n・・・エクスプレッション名

o・・・エクスプレッションのdefaultオブジェクトを設定

 

試しに"translateX"と"rotationZ"をつなげてみた

mc.expression(s="ball.rotateZ = ball.translateX*-50;",n="test"); 

 

エクスプレッションを書き換える場合

mc.expression("test",e=True,s="ball.rotateZ = ball.translateX*-10;"); 

エクスプレッション名を指定し"e=True"と記述し編集可能にする

maya Pyhonでアトリビュートを追加する

addAttr

アトリビュートを追加する

ln・・・アトリビュート

at・・・アトリビュートタイプを指定

dt・・・データ型を指定

boolean

mc.addAttr(ln='test',at='bool',k=True);

float

 mc.addAttr(ln='test',at='double',min=0.1,max=10,dv=1,k=True);

min・・・最小値

max・・・最大値

dv・・・初期値

string

 mc.addAttr(ln='test',dt='string',k=True);

選択セットを作って効率を上げよう!!

作業のたびに選択するのは、一つ二つくらいなら手間ではないが、10,20と増えてくるとそれだけで手間になる、しかも選択を間違える可能性もある。

 

そんな時、使えるのが選択セット

 

一度設定すれば、次回からの設定が劇的に早くなる!!しかもミスを減らせる。

 設定は簡単で

Create > Sets > Quick Select Set

f:id:foreverLab:20151124140040j:plain

 編集は

Windows > Relationship Editors > Sets

f:id:foreverLab:20151124140056j:plain

f:id:foreverLab:20151124140244j:plain

 

Pythonでこの作業をもっと簡単にできるようにしたいんだけど、

Setsを作ることは出来るんだけど、編集をどうやった出来るかが分からない。。。

Windowを作ってアクセスするだけでいいんだけどな~

 

プログラミングを教わったことがないから、自主勉強がうまく捗らないorz

もっと効率よく勉強して、もっと成長したいよ~~~

Pythonを基礎から勉強してみる!!_010

id

『id』はオブジェクトの識別値を返す。

値が同じ場合は、同じ『id』になる。

v1 = 10;
v2 = 10;
print ('v1 id',id(v1));
print ('v2 id',id(v2));

 

 >>>

('v1 id', 427880128L)
('v2 id', 427880128L)

 

v1 = 10;
v2 = 5;
print ('v1 id',id(v1));
print ('v2 id',id(v2));

 

>>>
('v1 id', 427880128L)
('v2 id', 427880248L) 

 

v1 = 3 + 7;
v2 = 5 + 5;
print ('v1 id',id(v1));
print ('v2 id',id(v2));

 

>>>
('v1 id', 427880128L)
('v2 id', 427880128L) 

 

del

 オブジェクトを削除する

v1 = 10;
print v1;
del(v1);
v2 = v1;
print v2;

 

>>>
10
# Error: NameError: file <maya console> line 4: name 'v1' is not defined #