Pengelola Metrik mengumpulkan dan melaporkan semua metrik yang berkaitan dengan ruang kerja Blockly. Panduan ini menjelaskan arti setiap kumpulan metrik yang ditampilkan dari Metrics Manager. Untuk informasi selengkapnya tentang Pengelola Metrik, Anda juga dapat menonton Pembahasan Mendalam Metrik 2021.
Metrik
Metrik Toolbox
workspace.getMetricsManager().getToolboxMetrics();
Metrik toolbox terdiri dari height
, width
, dan position
dari
kotak peralatan kategori. Ini tidak termasuk informasi tentang menu {i>flyout<i} yang
terpasang pada toolbox.
position
dari toolbox adalah jenis Blockly.utils.toolbox.Position
.
Metrik Flyout
workspace.getMetricsManager().getFlyoutMetrics();
Metrik flyout terdiri dari height
, width
, dan position
dari toolbox flyout. Penting untuk diperhatikan, bahwa ini bukanlah menu {i>flyout<i} yang
terpasang pada toolbox kategori. Hal ini hanya berkaitan dengan toolbox flyout seperti yang ditunjukkan pada foto di bawah ini.
position
dari flyout adalah jenis Blockly.utils.toolbox.Position
.
Metrik SVG
workspace.getMetricsManager().getSvgMetrics();
Metrik SVG terdiri dari width
dan height
dari SVG induk
ruang kerja. Untuk ruang kerja utama, ini adalah SVG dengan class blocklySvg
. SVG ini mencakup ruang kerja yang terlihat serta toolbox.
Melihat Metrik
workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);
Metrik tampilan terdiri dari height
, width
, top
, dan left
dari
area pandang. Area pandang adalah bagian dari ruang kerja yang terlihat. Ini
tidak termasuk jenis toolbox.
Bagian kiri atas sesuai dengan asal ruang kerja. Saat kita menarik ruang kerja, posisi atas dan kiri area pandang akan diperbarui.
Metrik Absolut
workspace.getMetricsManager().getAbsoluteMetrics();
Metrik absolut terdiri dari offset top
dan left
area pandang
dari SVG pareng. Bergantung pada letak {i>toolbox<i} di ruang kerja, ini biasanya lebar atau tinggi {i>toolbox<i}.
Metrik Konten
workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);
Metrik konten terdiri dari height
, width
, top
, dan left
kotak pembatas di sekitar blok atau komentar ruang kerja.
Metrik Scroll
workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);
Metrik scroll terdiri dari height
, width
, top
, dan left
dari
area yang dapat di-scroll. Untuk ruang kerja yang dapat dipindahkan, area yang dapat di-scroll adalah area
konten ditambah beberapa padding.
Sistem Koordinat
Secara default, semua metrik yang dihitung oleh Pengelola Metrik ditampilkan sebagai koordinat
piksel. Jika memungkinkan, ada opsi untuk mendapatkan metrik tertentu dalam koordinat ruang kerja dengan meneruskan true
ke metode metrik. Misalnya, metricsManager.getViewMetrics(true)
.
workspaceCoordinate = pixelCoordinates / workspace.scale
Koordinat ruang kerja umumnya digunakan untuk item yang berada di ruang kerja, seperti blok dan komentar ruang kerja. Koordinat ruang kerja tidak berubah saat pengguna memperbesar dan memperkecil.
Mengganti Metrik
Developer yang ingin memberikan metrik mereka sendiri untuk ruang kerja dapat mendaftarkan objek pengelola metrik pengganti yang mengimplementasikan antarmuka IMetricsManager
atau memperluas Blockly.MetricsManager
.
Contohnya dapat ditemukan di plugin Continuous Toolbox atau di plugin Edge Tetap.