Computer >> Máy Tính >  >> Lập trình >> Javascript

Làm cách nào để tạo ma trận chuyển đổi với HTML5?

HTML5 canvas cung cấp các phương thức cho phép sửa đổi trực tiếp ma trận chuyển đổi. Ma trận biến đổi ban đầu phải là phép biến đổi nhận dạng. Sau đó, nó có thể được điều chỉnh bằng các phương pháp chuyển đổi.

S Không.
Phương pháp và Mô tả
1
chuyển đổi (m11, m12, m21, m22, dx, dy)
Phương pháp này thay đổi ma trận biến đổi để áp dụng ma trận được cho bởi các đối số.
2
setTransform (m11, m12, m21, m22, dx, dy)
Phương pháp này thay đổi ma trận biến đổi thành ma trận được cho bởi các đối số.

Phương thức biến đổi (m11, m12, m21, m22, dx, dy) phải nhân ma trận biến đổi hiện tại với ma trận được mô tả bởi -

m11   m21   dx
m12   m22   dy
0     0     1

Để tạo ma trận chuyển đổi, hãy sử dụng MathML.

Ví dụ

Sau đây là một ví dụ đơn giản sử dụng các phương thức biến đổi () và setTransform ():

<!Doctype html>
<html>
   <head>
      <meta charset = "UTF-8">
      <title>Pythagorean theorem</title>
   </head>

   <body>
      <math xmlns = "https://www.w3.org/1998/Math/MathML">
         <mrow>
            <msup>
               <mi>a</mi>
               <mn>2</mn>
            </msup>
            <mo> + </mo>
            <msup>
               <mi>b</mi>
               <mn>2</mn>
            </msup>
            <mo> = </mo>
            <msup>
               <mi>c</mi>
               <mn>2</mn>
            </msup>
         </mrow>
      </math>
   </body>
</html>


<!doctype html>
<html>
   <head>
      <meta charset = "UTF-8">
      <title>Pythagorean theorem</title>
   </head>

   <body>
      <math xmlns = "https://www.w3.org/1998/Math/MathML">
         <mrow>
            <msup>
               <mi>a</mi>
               <mn>2</mn>
            </msup>
            <mo> + </mo>
            <msup>
               <mi>b</mi>
               <mn>2</mn>
            </msup>
            <mo> = </mo>
            <msup>
               <mi>c</mi>
               <mn>2</mn>
            </msup>
         </mrow>
      </math>
   </body>
</html>