Skocz do zawartości

MEL / Python - Timeline i Hypershade


ca mel

Rekomendowane odpowiedzi

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.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Odpowiedzi 3
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

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.

Odnośnik do komentarza
Udostępnij na innych stronach

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.

Odnośnik do komentarza
Udostępnij na innych stronach

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 :)

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się



×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności