Home - Rasfoiesc.com
Educatie Sanatate Inginerie Business Familie Hobby Legal
Doar rabdarea si perseverenta in invatare aduce rezultate bune.stiinta, numere naturale, teoreme, multimi, calcule, ecuatii, sisteme




Biologie Chimie Didactica Fizica Geografie Informatica
Istorie Literatura Matematica Psihologie

Informatica


Index » educatie » Informatica
» GRAFICA 3D - Mel


GRAFICA 3D - Mel


GRAFICA 3D - Mel

MEL(Maya Embedded Language) reprezinta un limbaj de scripting ce foloseste C++    in care sunt definite obiecte si metode specifice Maya. Cu acest limbaj se pot crea scipt-uri ce au definite anumite actiuni care altfel sunt inaccesibile din meniurile Maya Tot ce se realizeaza in Maya este generat in cod C++ in Script Editor. Exemplu: creem un cilindru, codul atasat este:

cylinder -p 0 0 0 -ax 0 1 0 -ssw 0 -esw 360 -r 1 -hr 2 -d 3 -ut

0 -tol 0.01 -s 8 -nsp 1 - ch 1; objectMoveCommand;

Aceasta comanda este echivalenta cu Create > Cylinder.

Pentru a modifica cilindrul din forma initiala in forma din dreapta

s-a generat urmatorul cod :

cylinder -p 0 0 0 -ax 0 1 0 -ssw 0 -esw 360 -r 1 -hr 2 -d 3 -ut

0 -tol 0.01 -s 8 -nsp 1 -ch 1; objectMoveCommand;

displaySmoothness -divisionsU 3 -divisionsV 3 -pointsWire 16 -

pointsShaded

subdivDisplaySmoothness -smoothness 3;

scale -r 1 5.217409 1 ;

scale -r 1 1.184601 1 ;

nonLinear -type bend    -lowBound -1 -highBound 1 -curvature 0;

// Result: bend1 bend1Handle //

select -addFirst bend1 ;

setAttr 'bend1.curvature' 1.2;

select -r nurbsCylinder1 ;

displaySmoothness -divisionsU 3 -divisionsV 3 -pointsWire 16 -

pointsShaded

subdivDisplaySmoothness -smoothness 3;



rebuildSurface -ch 1 -rpo 1 -rt 0 -end 1 -kr 0 -kcp 0 -kc 0 -su

8 -du 3 -sv 8 -dv 3 -tol 0.01 -dir 2 'nurbsCylinder1';

// Result: nurbsCylinder1 rebuildSurface1 //

Prezint un alt exemplu de utilitate a limbajului MEL. Una din limitarile Maya este faptul ca din meniuri nu se poate sterge animatia obiectelor. Atunci scriem un script care sa creeze o fereastra modala prin care sa intrebe utilizatorul daca doreste sa stearga toate cheile unei animatii. La selectarea optiunii Yes se va sterge orice animatie prezenta in scena. In cazul No se iese din fereastra fara a se modifica scena.

// delete All Keys

if (`window -q -ex 'rusure'`) ;

window -s off -t ' ' -tb on rusure;

windowPref -w 230 -h 110 -le 200 -te 200 rusure;

columnLayout

text -l '    ';

text -l '    Delete all keys ?';

text -l '    ';rowLayout -nc 5 -cw5 10 100 10 100 10;

text -l '    ';

button -l '    OK ' -c 'delete -c -

all;deleteUI -window rusure';

text -l '    ';

button -l '    Cancel ' - c 'deleteUI -window

rusure

setParent

showWindow rusure;

Regulile de programare MEL urmeaza regulile generale ale limbajului C++.





Politica de confidentialitate





Copyright © 2024 - Toate drepturile rezervate