Trình quản lý chỉ số thu thập và báo cáo về 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 tập hợp 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 Tìm hiểu chuyên sâu về các chỉ số năm 2021.
Chỉ số
Chỉ số của 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
là
hộp công cụ danh mục. Thông tin này không bao gồm thông tin về 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 kiểu Blockly.utils.toolbox.Position
.
Chỉ số Flyout
workspace.getMetricsManager().getFlyoutMetrics();
Các chỉ số báo cáo bao gồm height
, width
và position
của một
hộp công cụ điều chỉnh bay. Đ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ỉ liên quan đến hộp công cụ điều khiển bay
được hiển thị trong ảnh bên dưới.
position
của cửa sổ bật lên 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 phần tử mẹ của không gian làm việc
SVG (Đồ hoạ vectơ có thể mở rộng). Đối với không gian làm việc chính, đây là SVG có lớp blocklySvg
. Chiến dịch này
SVG bao gồm không gian làm việc hiển thị cũng như hộp công cụ.
Xem chỉ số
workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);
Chỉ số lượt xem bao gồm height
, width
, top
và left
của
khung nhìn. Khung nhìn là phần hiển thị của không gian làm việc. Loại này không bao gồm cả hai loại hộp công cụ.
Trên cùng bên trái là tương ứng với gốc không gian làm việc. Khi 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 nhìn là đã cập nhật.
Chỉ số tuyệt đối
workspace.getMetricsManager().getAbsoluteMetrics();
Các chỉ số tuyệt đối bao gồm độ dời top
và left
của khung nhìn từ SVG pareng. 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ố nội dung bao gồm height
, width
, top
và left
của hộp giới hạn xung quanh bất kỳ khối hoặc nhận xét nào trong không gian làm việc.
Cuộn chỉ số
workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);
Chỉ số cuộn bao gồm height
, width
, top
và left
là
khu vực có thể cuộn. Đối với không gian làm việc có thể di chuyển, khu vực cuộn được là khu vực nội dung cộng với một số khoảng đệm.
Hệ thống toạ độ
Theo mặc định, tất cả các chỉ số do Trình quản lý chỉ số tính toán được trả về dưới dạng pixel
toạ độ. Nếu có thể, bạn có thể chọn nhận một số chỉ số nhất định 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ạ độ của Workspace thường được dùng cho các mục nằm trong không gian làm việc, chẳng hạn như yêu cầu chặn và nhận xét trong không gian làm việc. Toạ độ không gian làm việc không thay đổi khi người dùng phóng to và thu nhỏ.
Ghi đè chỉ số
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ợ Hộp công cụ liên tục hoặc trong trình bổ trợFixed Edges.