Metrics Manager thu thập và báo cáo tất cả các chỉ số liên quan đến không gian làm việc Blockly. Hướng dẫn này mô tả ý nghĩa của từng nhóm chỉ số được trả về từ Trình quản lý chỉ số. Để biết thêm thông tin về Trình quản lý chỉ số, bạn cũng có thể xem Phân tích sâu về chỉ số năm 2021 của chúng tôi.
Chỉ số
Chỉ số về hộp công cụ
workspace.getMetricsManager().getToolboxMetrics();
Các chỉ số của hộp công cụ bao gồm height
, width
và position
của hộp công cụ danh mục. Thông tin này không bao gồm thông tin trên trình đơn bật lên được đính kèm vào hộp công cụ.
position
của hộp công cụ thuộc loại Blockly.utils.toolbox.Position
.
Chỉ số của biểu mẫu mở rộng
workspace.getMetricsManager().getFlyoutMetrics();
Các chỉ số của bảng chọn bao gồm height
, width
và position
của một hộp công cụ bảng chọn. Điều quan trọng cần lưu ý là đây không phải là trình đơn bật lên được đính kèm vào hộp công cụ danh mục. Điều này chỉ áp dụng cho hộp công cụ bật lên như trong ảnh bên dưới.
position
của bảng chọn bay thuộc loại Blockly.utils.toolbox.Position
.
Chỉ số SVG
workspace.getMetricsManager().getSvgMetrics();
Các chỉ số SVG bao gồm width
và height
của SVG mẹ trong không gian làm việc. Đối với không gian làm việc chính, đây là SVG có lớp blocklySvg
.
SVG này bao gồm cả không gian làm việc hiển thị và hộp công cụ.
Xem chỉ số
workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);
Các chỉ số về lượt xem bao gồm height
, width
, top
và left
của khung hiển thị. Khung nhìn là phần hiển thị của không gian làm việc. Không bao gồm cả hai loại hộp công cụ.
Phần trên cùng bên trái tương ứng với điểm bắt đầu của không gian làm việc. Khi chúng ta kéo xung quanh không gian làm việc, vị trí trên cùng và bên trái của khung hiển thị sẽ được cập nhật.
Chỉ số tuyệt đối
workspace.getMetricsManager().getAbsoluteMetrics();
Các chỉ số tuyệt đối bao gồm độ lệch top
và left
của khung hiển thị so với SVG gốc. Tuỳ thuộc vào vị trí của hộp công cụ trên không gian làm việc, đây thường là chiều rộng hoặc chiều cao của hộp công cụ.
Các số liệu Nội dung
workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);
Các chỉ số về nội dung bao gồm height
, width
, top
và left
của hộp giới hạn xung quanh mọi khối hoặc bình luận trong không gian làm việc.
Chỉ số cuộn
workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);
Các chỉ số cuộn bao gồm height
, width
, top
và left
của vùng có thể cuộn. Đối với một không gian làm việc có thể di chuyển, vùng có thể cuộn là vùng nội dung cộng với một số khoảng đệm.
Hệ toạ độ
Theo mặc định, tất cả các chỉ số do Trình quản lý chỉ số tính toán đều được trả về dưới dạng toạ độ pixel. Nếu có thể, bạn có thể nhận một số chỉ số theo toạ độ không gian làm việc bằng cách truyền true
vào các phương thức chỉ số. Ví dụ: metricsManager.getViewMetrics(true)
.
workspaceCoordinate = pixelCoordinates / workspace.scale
Toạ độ không gian làm việc thường được dùng cho các mục nằm trên không gian làm việc, chẳng hạn như các khối và bình luận trong không gian làm việc. Toạ độ Workspace không thay đổi khi người dùng phóng to và thu nhỏ.
Ghi đè chỉ số
Những nhà phát triển muốn cung cấp chỉ số riêng cho không gian làm việc có thể đăng ký một đối tượng trình quản lý chỉ số thay thế triển khai giao diện IMetricsManager
hoặc mở rộng Blockly.MetricsManager
.
Bạn có thể xem ví dụ về vấn đề này trong trình bổ trợ Continuous Toolbox hoặc trong trình bổ trợ Fixed Edges.