Od kilku miesięcy pracuję nad stworzeniem interfejsu multitouch opartego na technologii Kinect dla różnych syntezatorów muzyki programowej.Ogólne uwagi dotyczące interfejsu NUI/touch
Ogólna strategia, którą wymyśliłem, to tworzenie obiektów, programowo lub (jeśli to możliwe) algorytmicznie reprezentujących różne kontrolki miękkiego syntezatora. Te powinny mieć;
- pozycja X pozycji
- Y
- Wzrost
- Szerokość
- MIDI kanał wyjściowy
- sekwencji MIDI skalujący (konwersja xy coords do wartości MIDI)
2 strategie I Uważa się, że kreacja agorytmetyczna to opis XML i jakoś odciąganie rzeczy od samego początku e screen (tzn. dany program, znajdź xycoordy wszystkich kontrolek). Nie mam pojęcia, jak zrobić ten drugi, dlatego wyrażam go w tak specyficznym języku technicznym;). Mogłem zrobić rozwiązanie pośrednie, na przykład za pomocą kliknięć myszką w rogach kontrolek, aby wygenerować plik xml. Inną rzeczą, którą mogłem zrobić, którą często widziałem w aplikacjach flashowych, jest umieszczenie rozmiaru ekranu w zmiennej i użycie matematyki do zbudowania wszystkich obiektów interfejsu pod względem rozmiaru ekranu. Zauważ, że nie jest absolutnie konieczne, aby obiekty miały taki sam rozmiar jak elementy sterujące na ekranie lub aby reprezentowały wszystkie obiekty wyświetlane na ekranie (niektóre są tylko wskaźnikami, a nie interaktywnymi kontrolkami)
Inne uwarunkowania;
Biorąc pod uwagę (na razie) dwa zestawy współrzędnych X/Y jako wejście (lewe i prawe dłonie), jaki jest najlepszy sposób ich użycia? Moim pierwszym instynktem było/było stworzenie pewnego rodzaju testu skupienia, w którym jeśli współrzędne X/Y wchodzą w granice obiektu interfejsu, to obiekt staje się aktywny, a następnie staje się nieaktywny, jeśli przez jakiś czas wypada poza pewne inne mniejsze granice. Tanim rozwiązaniem okazało się użycie lewej ręki jako wskaźnika/selektora, a prawej jako kontrolera, ale wydaje się, że mogę zrobić więcej. Mam kilka rozwiązań gestów (ukrytych łańcuchów Markowa), które mogłem zepsuć. Nie, żeby były łatwe do wykonania, ale to coś, co sam mogłem zobaczyć, biorąc pod uwagę wystarczającą motywację.
więc podsumować, problem
- stanowią interfejs (konieczny, ponieważ interfejs domyślny zawsze oczekuje wejście mysz)
- wybrać regulację
- manipulować za pomocą dwóch zestawów x/y coords (kontroler rotacyjny/ciągły) lub, w przypadku przełączników, najlepiej użyć gestu, aby przełączyć go bez ustawiania ostrości.
Wszelkie komentarze, szczególnie od osób, które pracowały/pracują w multitouch io/NUI, są bardzo doceniane. Odsyłacze do istniejących projektów i/lub niektórych dobrych materiałów do czytania (książek, stron itp.) Będą bardzo pomocne.
Meta-dyskusja na temat tego pytania się dzieje/stało się: http://meta.stackexchange.com/q/106720/146495 –