DOMMatrixReadOnly

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

Note: This feature is available in Web Workers.

Giao diện DOMMatrixReadOnly biểu diễn ma trận 4x4 chỉ đọc, phù hợp cho các phép toán 2D và 3D. Giao diện DOMMatrix dựa trên DOMMatrixReadOnly bổ sung khả năng thay đổi, cho phép bạn chỉnh sửa ma trận sau khi tạo.

Giao diện này nên có thể sử dụng bên trong web workers, mặc dù một số trình duyệt chưa hỗ trợ điều đó.

Hàm khởi tạo

DOMMatrixReadOnly()

Tạo một đối tượng DOMMatrixReadOnly mới.

Thuộc tính phiên bản

Giao diện này không kế thừa bất kỳ thuộc tính nào.

DOMMatrixReadOnly.is2D Read only

Cờ Boolean có giá trị true nếu ma trận được khởi tạo là ma trận 2D. Nếu là false, ma trận là 3D.

DOMMatrixReadOnly.isIdentity Read only

Giá trị Boolean có giá trị true nếu ma trận là ma trận đơn vị.

m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, m41, m42, m43, m44

Các giá trị số thực dấu phẩy động độ chính xác kép đại diện cho từng thành phần của ma trận 4x4, trong đó m11 đến m14 là cột đầu tiên, m21 đến m24 là cột thứ hai, và tiếp tục như vậy.

a, b, c, d, e, f

Các giá trị số thực dấu phẩy động độ chính xác kép đại diện cho các thành phần của ma trận 4x4 cần thiết để thực hiện các phép xoay và dịch chuyển 2D. Đây là các bí danh cho các thành phần cụ thể của ma trận 4x4, như bảng dưới đây.

2D Tương đương 3D
a m11
b m12
c m21
d m22
e m41
f m42

Phương thức phiên bản

Giao diện này không kế thừa bất kỳ phương thức nào. Không có phương thức nào dưới đây thay đổi ma trận gốc.

DOMMatrixReadOnly.flipX()

Trả về một DOMMatrix mới được tạo bằng cách lật ma trận nguồn quanh trục X. Điều này tương đương với việc nhân ma trận với DOMMatrix(-1, 0, 0, 1, 0, 0). Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.flipY()

Trả về một DOMMatrix mới được tạo bằng cách lật ma trận nguồn quanh trục Y. Điều này tương đương với việc nhân ma trận với DOMMatrix(1, 0, 0, -1, 0, 0). Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.inverse()

Trả về một DOMMatrix mới được tạo bằng cách nghịch đảo ma trận nguồn. Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.multiply()

Trả về một DOMMatrix mới được tạo bằng cách tính tích vô hướng của ma trận nguồn và ma trận được chỉ định. Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.rotateAxisAngle()

Trả về một DOMMatrix mới được tạo bằng cách xoay ma trận nguồn theo góc cho trước quanh vectơ được chỉ định. Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.rotate()

Trả về một DOMMatrix mới được tạo bằng cách xoay ma trận nguồn quanh từng trục theo số độ được chỉ định. Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.rotateFromVector()

Trả về một DOMMatrix mới được tạo bằng cách xoay ma trận nguồn theo góc giữa vectơ được chỉ định và (1, 0). Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.scale()

Trả về một DOMMatrix mới được tạo bằng cách thu phóng ma trận nguồn theo lượng được chỉ định cho từng trục, lấy tâm tại gốc tọa độ được cho. Mặc định, trục X và Z được thu phóng với tỷ lệ 1 và trục Y không có giá trị thu phóng mặc định. Gốc tọa độ mặc định là (0, 0, 0). Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.scale3d()

Trả về một DOMMatrix mới được tạo bằng cách thu phóng ma trận 3D nguồn theo hệ số cho trước dọc theo tất cả các trục, lấy tâm tại điểm gốc tọa độ được chỉ định. Gốc tọa độ mặc định là (0, 0, 0). Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.scaleNonUniform() Deprecated

Trả về một DOMMatrix mới được tạo bằng cách áp dụng thu phóng được chỉ định trên các trục X, Y, và Z, lấy tâm tại gốc tọa độ được cho. Mặc định, hệ số thu phóng của trục Y và Z đều là 1, nhưng hệ số thu phóng cho X phải được chỉ định. Gốc tọa độ mặc định là (0, 0, 0). Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.skewX()

Trả về một DOMMatrix mới được tạo bằng cách áp dụng phép biến đổi xiên được chỉ định lên ma trận nguồn dọc theo trục X. Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.skewY()

Trả về một DOMMatrix mới được tạo bằng cách áp dụng phép biến đổi xiên được chỉ định lên ma trận nguồn dọc theo trục Y. Ma trận gốc không bị thay đổi.

DOMMatrixReadOnly.toFloat32Array()

Trả về một Float32Array mới gồm các số thực dấu phẩy động độ chính xác đơn, chứa tất cả 16 phần tử tạo nên ma trận.

DOMMatrixReadOnly.toFloat64Array()

Trả về một Float64Array mới gồm các số thực dấu phẩy động độ chính xác kép, chứa tất cả 16 phần tử tạo nên ma trận.

DOMMatrixReadOnly.toJSON()

Trả về biểu diễn JSON của đối tượng DOMMatrixReadOnly.

DOMMatrixReadOnly.toString()

Tạo và trả về biểu diễn chuỗi của ma trận theo cú pháp ma trận CSS, sử dụng ký hiệu ma trận CSS phù hợp.

DOMMatrixReadOnly.transformPoint()

Biến đổi điểm được chỉ định bằng ma trận, trả về một đối tượng DOMPoint mới chứa điểm đã biến đổi. Cả ma trận lẫn điểm gốc đều không bị thay đổi.

DOMMatrixReadOnly.translate()

Trả về một DOMMatrix mới chứa ma trận được tính bằng cách dịch chuyển ma trận nguồn theo vectơ được chỉ định. Mặc định, vectơ là (0, 0, 0). Ma trận gốc không bị thay đổi.

Phương thức tĩnh

fromFloat32Array()

Tạo một đối tượng DOMMatrixReadOnly mới từ một Float32Array gồm 6 hoặc 16 giá trị số thực dấu phẩy động độ chính xác đơn (32-bit).

fromFloat64Array()

Tạo một đối tượng DOMMatrixReadOnly mới từ một Float64Array gồm 6 hoặc 16 giá trị số thực dấu phẩy động độ chính xác kép (64-bit).

fromMatrix()

Tạo một đối tượng DOMMatrixReadOnly mới từ một ma trận hiện có hoặc một đối tượng cung cấp các giá trị cho các thuộc tính của nó.

Thông số kỹ thuật

Specification
Geometry Interfaces Module Level 1
# DOMMatrix

Tương thích trình duyệt

Xem thêm

  • Kiểu ma trận có thể thay đổi, DOMMatrix, dựa trên giao diện này.
  • Ký hiệu hàm CSS matrix()matrix3d() có thể được tạo ra từ giao diện này để sử dụng trong thuộc tính CSS transform.