Klassen Matrix representerar en transformeringsmatris som styr hur punkter från ett koordinatsystem mappas till ett annat.
Du kan utföra flera olika grafiska omformningar på ett visningsobjekt, enligt följande:
Dessa omformningsfunktioner inkluderar översättning (omplacering av x och y), rotation och skalning.
Tillsammans kallas dessa omformningstyper affina omformningar. Affina omformningar bevarar linjernas rakhet vid omformning, så att parallella linjer förblir parallella.
Ett omformningsmatrisobjekt är en 3 x 3-matris med följande innehåll:
| a c tx | | b d ty | | u v w |
I traditionella omformningsmatriser innehåller egenskaperna u, v och w extra funktioner. Klassen Matrix fungerar bara i en tvådimensionell rymd. Den förutsätter alltid att egenskapsvärdena u och v är 0.0, och att egenskapsvärdet w är 1.0. Matrisens faktiska värden är som följer:
| a c tx | | b d ty | | 0 0 1 |
new flwebgl.geom.Matrix(values)
Namn | Typ | Beskrivning |
---|---|---|
values | tal[] | (valfritt) En array som definierar värdena för matrisen i formatet [a b c d tx ty]. Om inget anges anges matrisen som 'identity'. |
Beskrivning
Den här metoden returnerar en klon av Matrix-instansen
Returnerar
Beskrivning
Den här metoden sammanfogar den angivna matrisen med den aktuella matrisen, så att de två matrisernas geometriska effekter kombineras.
Parametrar
Returnerar
Exempel
Det här exemplet sammanfogar en rotationsmatris och en skalningsmatris.
Namn | Typ | Beskrivning |
---|---|---|
matrix | Matrix | Den matris som ska multipliceras |
var m1 = new flwebgl.geom.Matrix(); m1.rotate(45 * Math.PI / 180); var m2 = new flwebgl.geom.Matrix(); m2.scale(2, 2); m1.concat(m2);
Beskrivning
Den här metoden kopierar angiven matris till denna matris.
Parametrar
Returnerar
Namn | Typ | Beskrivning |
---|---|---|
matrix | Matrix | Den matris från vilken egenskaper ska kopieras |
Beskrivning
Den här metoden kontrollerar om den angivna matrisen har samma värden som den här instansen.
Parametrar
Returnerar
Namn | Typ | Beskrivning |
---|---|---|
mat | Matrix | Den matris som ska jämföras |
Beskrivning
Den här metoden returnerar värdena för elementen i matrisen.
Returnerar
Exempel
Det här exemplet hämtar värdena för en matris och ändrar den så att den skevas med faktorn 0,5.
var m = new flwebgl.geom.Matrix(); var arr = m.getValues(); arr[1] = 0.5; m.setValues(arr);
Beskrivning
Den här metoden anger matrisen till en identity-matris.
Returnerar
Beskrivning
Den här metoden inverterar matrisen, så att den inverterade matrisen i princip använder motsatt omformning.
Returnerar
Beskrivning
Den här metoden returnerar 'true' om matrisen är en identity-matris.
Returnerar
Beskrivning
Den här metoden använder en rotationsomformning på matrisen.
Parametrar
Returnerar
Exempel
Det här exemplet skapar en ny Matrix-instans, som initieras till identity-matrisen, och roterar den 45 grader.
Namn | Typ | Beskrivning |
---|---|---|
angle | tal | Vinkeln i radianer. Om du vill använda grader multiplicerar du med Math.PI/180. |
var m = new flwebgl.geom.Matrix(); m.rotate(45 * Math.PI / 180);
Beskrivning
Den här metoden använder en skalningsomformning på matrisen.
Parametrar
Returnerar
Exempel
Det här exemplet skapar en ny Matrix-instans, som initieras till identity-matrisen, och skalar den med faktorn 2 både vågrätt och lodrätt.
Namn | Typ | Beskrivning |
---|---|---|
x | tal | Den vågräta skalningsfaktorn. |
y | tal | Den lodräta skalningsfaktorn. |
var m = new flwebgl.geom.Matrix(); m.scale(2, 2);
Beskrivning
Den här metoden anger värdena för elementen i matrisen.
Parametrar
Exempel
Se exemplet under funktionen getValues().
Namn | Typ | Beskrivning |
---|---|---|
values | tal[] | En array som definierar värdena för matrisen i formatet [a b c d tx ty]. |
Beskrivning
Den här metoden omformar en punkt enligt den här matrisen.
Parametrar
Returnerar
Namn | Typ | Beskrivning |
---|---|---|
point | Point | Den punkt som ska omformas. |
Beskrivning
Den här metoden omformar rektangelns alla fyra punkter enligt den här matrisen.
Parametrar
Returnerar
Namn | Typ | Beskrivning |
---|---|---|
rect | Rect | Den rektangel som ska omformas. |
Beskrivning
Den här metoden översätter matrisen på x- och y-axlarna.
Parametrar
Returnerar
Namn | Typ | Beskrivning |
---|---|---|
dx | tal | Mängden rörelse längs X-axeln åt höger. |
dy | tal | Mängden rörelse nedåt längs Y-axeln. |
Logga in på ditt konto