Blog (3)
Komentarze (5)
Recenzje (0)

Maya: skrót klawiszowy dla Tool Settings

@makalMaya: skrót klawiszowy dla Tool Settings20.08.2012 01:11

Ostatnio rzeczą, która irytowała mnie przy pracy z Autodesk Maya był spowolniony dostęp do okna Tool Settings, w którym można dostosowywać właściwości dla narzędzia używanego w danej chwili.

Okno Tool Settings dla Select Tool
Okno Tool Settings dla Select Tool

O ile w przypadku Select Tool, Move Tool, Rotate Tool, czy Scale Tool (skróty q/w/e/r na klawiaturze), można sobie poradzić bezproblemowo, gdyż przetrzymanie dedykowanego skrótu i kliknięcie LMB otwiera przed nami szybkie menu dostępu do ich właściwości, to o tyle w przypadku takich instrumentów jak Interactive Split Tool, czy Insert Edge Loop Tool nie jest tak fajnie (a takich narzędzi jest oczywiście dużo więcej).

Osobiście okno Tool Settings mam przypięte do kart Channel Box i AE po prawej stronie Mayi. Jeśli mam fajny wbudowany skrót (ctrl+a), który przełącza mnie pomiędzy tymi kartami, to chciałbym mieć i taki, który by mnie dodatkowo przełączał pomiędzy Channel Box i Tool Settings.

By to zrobić, trzeba się udać do menu: Window > Settings/Preferences > Hotkey Editor

W tym oknie zarządzamy skrótami klawiszowymi w Mayi. Nie tylko możemy przypisywać je akcjom/narzędziom z różnych menu, które nie mają domyślnie dedykowanych skrótów, ale także tworzyć zupełnie nowe skrypty i przypisywać im kombinacje klawiszowe, przy których je uruchomimy.

Na załączonym powyżej screenshotcie widzimy po lewej stronie Categories, zaraz obok mamy Commands, które są przypisane dla danej kategorii. Dalej po prawej mamy Current Hotkeys, czyli możliwe skróty klawiszowe (może być więcej niż jeden!) przypisane obecnie dla danego skryptu. Na dole widzimy pole edycji danej komendy. Możemy ją usunąć lub stworzyć kompletnie nową. I to drugie będzie nam teraz potrzebne.

Skrypt, który stworzyłem dla przełączania się pomiędzy Tool Settings a Channel Box opiera się na dwóch już istniejących w Mayi: ShowAttributeEditorOrChannelBox (w kategorii Miscellaneous), oraz ToggleToolSettings (kategoria Display).

Obydwa skrypty są standardowo napisane w MEL-u (Maya Embedded Language).

if(`isAttributeEditorRaised`) { 
   if(!`isChannelBoxVisible`) {
      setChannelBoxVisible(1);
   } else {
      raiseChannelBox;
   }
} else {
   openAEWindow;
}

ShowAttributeEditorOrChannelBox

if (`isUIComponentVisible("Tool Settings")`) {
	toggleUIComponentVisibility("Tool Settings");
} else {
	toolPropertyWindow -inMainWindow true;
}
; updateMainWindowComponentState()

ToggleToolSettings

Na dobrą sprawę, można użyć tego drugiego kodu do rozwiązania problemu. Skrypt działa w ten sposób, że włącza i wyłącza okno Tool Settings. Ja natomiast, jak już wspomniałem, potrzebuję skrótu na wzór tego pierwszego kodu (ctrl+a) - jego zadaniem jest przełączanie się pomiędzy kartami Channel Box i AE.

Zatem w oknie Hotkey Editor klikamy w "New", aby zacząć tworzyć nowy skrypt. Obok Name przypisujemy mu nazwę (bez spacji i znaków specjalnych). Ja swój nazwałem po prostu ShowToolSettings. W Description możemy wpisać opis, jak nam się podoba. Category, tu mamy także dowolność. Osobiście przypisałem swoją komendę do Display. Language, oczywiście w tym przypadku MEL. Zanim przejdziemy do pola edycji Command kliknijmy po prawej "Accept", w ten sposób dodaliśmy (na razie pusty) skrypt do listy wybranej przez nas wcześniej kategorii. Teraz skopiujmy kod ShowAttributeEditorOrChannelBox i wróćmy do naszej komendy, zaznaczmy ją i kliknijmy "Edit". Wklejmy kod. Teraz czas go zmodyfikować.

Przede wszystkim jeśli spojrzymy na skrypt ToggleToolSettings to możemy pomyśleć, że ekwiwalentem dla komend AttributeEditor i ChannelBox z ShowAttributeEditorOrChannelBox może być UIComponent("Tool Settings") i w pewnym stopniu tak jest, ale jeśli zaczniemy się bawić w if (`isUIComponentRaised("Tool Settings")`) to wyskoczy nam przy egzekwowaniu błąd braku komendy o takiej nazwie. O dziwo istnieje coś takiego jak UIComponent("Channel Box / Layer Editor") oraz to samo dla AE i bierze się to z pełnej nazwy jaka jest dostępna w menu. Przy tym kodzie jednak poprawnie zadziała tylko komenda ToolSettingsRaised, zatem mając to na uwadze, możemy teraz łatwo zmodyfikować kod na:

if (`isToolSettingsRaised`) {
	if (!`isChannelBoxVisible`) {
		setChannelBoxVisible(1);
	} else {
		raiseChannelBox;
}} else {
	raiseToolSettings;
}

Klikamy po prawej stronie w "Accept" i teraz możemy przypisać skrót klawiszowy. Ale jaki? By zobaczyć jakie kombinacje nie są jeszcze zarezerwowane wchodzimy do okna List Hotkeys, przyciskając wcześniej "List All...". Po prawej mamy kolumnę Unmapped, która pokazuje nam klawisze dla grupy "No modifiers", jeśli chcemy zobaczyć wszystkie dostępne kombinacje, to po lewej stronie okna mamy opcję "List all". Osobiście szczęśliwie się dla mnie złożyło, że jest dostępny skrót ctrl+shift+a (w Mayi interpretowany jako ctrl+A). Jest on bliski ctrl+a, zatem fajnie się na siebie będą nakładać obydwa skrypty. Zaopatrzeni w tą wiedzę, zamykamy te okno i w kolumnie Assign New Hotkeys wpisujemy shift+a (co da nam oczywiście "A") i poniżej zaznaczamy "Ctrl". Direction pozostawiamy domyślnie na "Press" i klikamy w "Assign" teraz na dole okna Hotkey Editor przyciskamy "Save".

W ten oto sposób skrót ctrl+shift+a od teraz powinien zamieniać nam widoczność pomiędzy kartami Channel Box i Tool Settings.

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.