Jump to content
Sign in to follow this  
ca mel

MEL / Python - Timeline i Hypershade

Recommended Posts

Czołem.

1.

Czy da się jakoś zmusić Mayę, żeby rozpoznawała podwójne kliknięcie w node editorze Hyperhade?

Chodzi mi o jakiś rodzaj script job, pracujący w tle, otwierający po podwójnym kliknięciu zaznaczony node w Attr Editor.

 

Próbowałem przerabiać plik hyperShadePanel, nie znalazłem sposobu.

Wiec może potrzebny jest jakiś mikro plugin, śledzący podwójne kliknięcia?

 

2.

Czy jest sposób, żeby melem albo pythonem zaznaczyć zadany zakres klatek na Time Sliderze?

 

Czytać jest łatwo:

timeControl -q -rangeArray $gPlayBackSlider

ale jak zaznaczyć swój zakres?

 

Chcę to spiąć z pluginem tworzącym markery na zadanych klatkach, a on działa na zakresie Time Slidera.

Zamiast jeździć z Shiftem po timeline, chciałbym podawać zaznaczone klatki z dopesheet / graph editora.

 

Z góry dzięki za podpowiedzi.

Share this post


Link to post
Share on other sites

ad1.

draggerContext,popupMenu,api

odpal w melu i z shiftem prawy przycisk myszy na nodzie

popupMenu -parent "hyperShadePanel1dockStation" -sh on -pmc "print "ok""

http://tech-artists.org/t/execute-python-script-in-maya-on-double-click/2171/7

 

 

ad2

http://ewertb.soundlinker.com/mel/mel.027.php

Sprawdziłem na szybko w 2016 i rzeczywiście nie działa... może coś się zmieniło od 2005 . Może w pythonie ?

Może się i da jakoś do tego dobrać? Może to jakiś callback? A może to coś jest zakopane i po prostu niedostępne.

Posiedziałem chwilę, ale niestety nie potrafię pomóc.

Share this post


Link to post
Share on other sites
ad1.

draggerContext,popupMenu,api

odpal w melu i z shiftem prawy przycisk myszy na nodzie

popupMenu -parent "hyperShadePanel1dockStation" -sh on -pmc "print "ok""

http://tech-artists.org/t/execute-python-script-in-maya-on-double-click/2171/7

 

 

ad2

http://ewertb.soundlinker.com/mel/mel.027.php

Sprawdziłem na szybko w 2016 i rzeczywiście nie działa... może coś się zmieniło od 2005 . Może w pythonie ?

Może się i da jakoś do tego dobrać? Może to jakiś callback? A może to coś jest zakopane i po prostu niedostępne.

Posiedziałem chwilę, ale niestety nie potrafię pomóc.

 

 

Dzięki za zainteresowanie tematem :)

 

Kombinowałem już z popup menu na pierwszym przycisku, ale traci się w ten sposób ich domyślną funkcjonalność.

$myNewMenu1 = `popupMenu -parent "hyperShadePanel1dockStation" -button 1 -shiftModifier on -postMenuCommand "AttributeEditor"`;

$myNewMenu2 = `popupMenu -parent "hyperShadePanel1dockStation" -button 1 -ctrlModifier on -postMenuCommand "AttributeEditor"`;

 

Chodzi mi o zrobienie tego bez modyfikatorów, na samym podwójnym kliknięciu pierwszym przyciskiem myszy.

Miałoby to taki plus, że pierwsze kliknięcie zaznaczyłoby przy okazji dany node, więc w attrEditorze pokazałby się ten właściwy.

 

Generalnie miałoby to działać jak górna część hypershade - tam podwójne kliknięcie otwiera szader czy teksturę w oknie AttrEditor.

Jeśli jest schowany, otwiera go.

 

Widziałem w linku, który podałeś, że ktoś chyba próbował pisać do tego swoją funkcję.

Ale nie umiem z tego skorzystać - kompletnie nie znam się na programowaniu API ;/

 

Dasz radę wytłumaczyć mi to jaśniej, co dokładnie trzeba zrobić, żeby działało to podwójne kliknięcie?

O ile oczywiście się to da zrobić ;)

 

 

 

Ad 2

Właśnie to jest dziwna sprawa.

Z tego co pamiętam użeram się z tym od czasów 2014 i tam też nie działało zaznaczanie na timeline skryptem.

Komenda edycji z podanym zakresem, np. "1:10" wchodziła, ale nic się nie zaznaczało.

W 2016 zgłasza mi że jest za dużo argumentów, jakieś czary.

Share this post


Link to post
Share on other sites

hej camelu

 

Dasz radę wytłumaczyć mi to jaśniej, co dokładnie trzeba zrobić, żeby działało to podwójne kliknięcie?

O ile oczywiście się to da zrobić ;)

 

No właśnie obawiam się, że nie jestem w stanie Ci tego wyjaśnić jaśniej, bo po prostu nie wiem czy jest to możliwe, a Ty konkretnie chcesz to zrobić bez modyfikatorów, ale

Z tego co piszą tu

https://knowledge.autodesk.com/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2016/ENU/Maya/files/GUID-F56BC661-A0BF-475B-A623-5C08921850B5-htm.html

 

nodeEditor obsługuje dwuklik , hypershade też - tak jak mówisz

Istnieje taki callback ""nodeDblClickCallback""

C:/Program Files/Autodesk/Maya2016/scripts/others/hyperUserInit.mel

Tam jest wpis "global proc hyperUserInit" myślę, że modyfikacja tego pliku mogłaby coś poradzić, nie powiem teraz dokładnie jaka modyfikacja, bo na ten moment nie wiem i musiałbym po prostu posiedzieć i sprawdzić. Znajdziesz tam kawałek kodu, który odpowiada za to w jakim okienku działa ten callback

"" // only put the double-click event on HyperShade and Visor ""

 

 

Co do zaznaczania to tak jak mówiłem wczoraj ... posiedziałem chwilkę, rzuciłem okiem na neta ... nic ciekawego nie znalazłem, a co znalazłem wrzuciłem, no i więcej nie podpowiem prócz tego, że nie działa :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

We are using cookies. Read about our Privacy Policy