Przejdź do głównej zawartości

Mapowanie pozycji LED

Teraz mamy w pełni funkcjonujące urządzenie, ale nasze LED-y nie są poprawnie zmapowane.

Aby zmapować nasze pozycje LED w SignalRGB, musimy użyć narzędzia do malowania.

Aby użyć narzędzia do malowania, musimy otworzyć SignalRGB.

Następnie przechodzimy do strony urządzeń i naszego urządzenia.

Teraz klikamy na zakładkę pędzla i ikonę pędzla.

Teraz malujemy nasze LED-y i gdy malujemy każdą LED, w naszej wtyczce nadajemy jej nazwę odpowiadającą części urządzenia.

Po pomalowaniu wszystkich LED-ów kończymy z poniższym mapowaniem.

var vLedNames = [ "Logo", "Scroll Wheel", "Keypad", "Front", "DPI Indicator Light" ];
var vLedPositions = [ [0,0], [1,0], [2,0], [3,0], [4,0] ];

Teraz wszystkie nasze LED-y są poprawnie nazwane, ale nadal musimy je poprawnie zmapować względem ich fizycznej lokalizacji na urządzeniu.

Aby zmapować nasze LED-y, musimy zrozumieć, jak działa system mapowania. System pozycji działa jako [x,y]. Oznacza to, że pierwsza pozycja (x) wskazuje, jak daleko w prawo LED jest umieszczona od lewej strony prostokąta urządzenia na canvas efektów. Druga pozycja (y) wskazuje, jak daleko w dół LED jest umieszczona od góry prostokąta urządzenia na canvas efektów.

Mając te informacje i fizyczną lokalizację naszych LED-ów, dochodzimy do prawidłowego mapowania poniżej.

var vLedNames = [ "Logo", "Scroll Wheel", "Keypad", "Front", "DPI Indicator Light" ];
var vLedPositions = [ [1,2], [1,0], [0,1], [2,0], [0,0] ];

Teraz, gdy mamy prawidłowe mapowanie dla naszych LED-ów, musimy również dostosować rozmiar prostokąta urządzenia, aby poprawnie odzwierciedlał rozmiar naszego urządzenia.

Pamiętaj, że rozmiar naszego urządzenia musi być o jeden większy niż nasze najdalsze pozycje w każdym kierunku. Oznacza to, że w naszym przypadku rozmiar urządzenia musi być [3,3], ponieważ nasze najdalsze pozycje w każdym kierunku to [2,2].

export function Name() { return "Corsair Scimitar Pro"; }
export function VendorId() { return 0x1b1c; }
export function ProductId() { return 0x1B3E; }
export function Publisher() { return "WhirlwindFX"; }
export function Size() { return [3,3]; }
export function DefaultPosition(){return [10, 100]; }
export function DefaultScale(){return 8.0}

Teraz mamy w pełni funkcjonującą wtyczkę urządzenia, ale brakuje jeszcze obrazu urządzenia.