Gå til indhold

Tilknyt LED-positioner

Vi har nu en fuldt fungerende enhed, men vores LED’er er ikke tilknyttet korrekt.

For at tilknytte vores LED-positioner i SignalRGB skal vi bruge maleværktøjet.

For at bruge maleværktøjet skal vi åbne SignalRGB.

Dernæst skal vi gå til enhedssiden og åbne vores enhed.

Nu skal vi klikke på pensel-fanen og klikke på penslikonet.

Nu begynder vi at male vores LED’er, og mens vi maler hver enkelt, navngiver vi hver LED i vores plugin svarende til dens modpart på enheden.

Efter at have malet alle LED’er får vi den tilknytning der er vist nedenfor.

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

Nu er alle vores LED’er korrekt navngivet, men vi skal stadig tilknytte dem korrekt i forhold til deres fysiske position på enheden.

For at tilknytte vores LED’er skal vi forstå, hvordan tilknytningssystemet fungerer. Positionssystemet fungerer som [x,y]. Det betyder at den første position (x) angiver, hvor langt til højre LED’en er placeret fra venstre side af enhedens rektangel på effekt-canvas’et. Den anden position (y) angiver, hvor langt ned LED’en er placeret fra toppen af enhedens rektangel på effekt-canvas’et.

Med disse oplysninger og vores LED’ers fysiske positioner får vi den følgende korrekte tilknytning.

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

Nu da vi har en korrekt tilknytning for vores LED’er, skal vi også ændre størrelsen på enhedens rektangel for korrekt at repræsentere vores enheds faktiske størrelse.

Husk at vores enhedsstørrelse i begge retninger skal være én større end vores fjerneste position. Det betyder at enhedsstørrelsen i vores tilfælde skal være [3,3], da vores fjerneste positioner i begge retninger er [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}

Nu har vi et fuldt fungerende enhedsplugin, som dog endnu mangler et enhedsbillede.