Metrik Yöneticisi, Blockly çalışma alanıyla ilgili tüm metrikleri toplar ve raporlar. Bu kılavuzda, Metrik Yöneticisi'nden döndürülen her metrik grubunun ne anlama geldiği açıklanmaktadır. Metrik Yöneticisi hakkında daha fazla bilgi için 2021 Metriklerle İlgili Ayrıntılı İncelememizi de izleyebilirsiniz.
Metrikler
Araç Kutusu Metrikleri
workspace.getMetricsManager().getToolboxMetrics();
Araç kutusu metrikleri, bir kategori araç kutusunun height
, width
ve position
öğelerinden oluşur. Bu, araç kutusuna eklenmiş olan
bilgileri içermez.
Araç kutusunun position
öğesi Blockly.utils.toolbox.Position
türündedir.
Flyout Metrikleri
workspace.getMetricsManager().getFlyoutMetrics();
Uç noktalar metrikleri, bir açılır araç kutusunun height
, width
ve position
öğelerinden oluşur. Bunun, kategori araç kutusuna eklenmiş olan bilgi sayfası olmadığını unutmayın. Bu durum yalnızca aşağıdaki fotoğrafta gösterilen
geçiş araç kutularıyla ilgilidir.
Açılır menünün position
öğesi Blockly.utils.toolbox.Position
türündedir.
SVG Metrikleri
workspace.getMetricsManager().getSvgMetrics();
SVG metrikleri, çalışma alanının üst SVG'sinin width
ve height
öğelerinden oluşur. Bu, ana çalışma alanı için blocklySvg
sınıfını içeren SVG'dir. Bu SVG, araç kutusunun yanı sıra görünür çalışma alanını da içerir.
Metrikleri Göster
workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);
Görüntüleme metrikleri, görüntü alanının height
, width
, top
ve left
öğelerinden oluşur. Görüntü alanı, çalışma alanının görünür olan kısmıdır. Bu, iki araç kutusu türünü de içermez.
Sol üst, çalışma alanı kaynağıyla ilgilidir. Çalışma alanı etrafında sürüklerken görüntü alanının üst ve sol konumu güncellenir.
Mutlak Metrikler
workspace.getMetricsManager().getAbsoluteMetrics();
Mutlak metrikler, görüntü alanının SVG parçasına olan top
ve left
ofsetinden oluşur. Araç kutusunun çalışma alanında konumlandırıldığı yere bağlı olarak, bu genellikle araç kutusunun genişliği veya yüksekliğidir.
İçerik Ölçümleri
workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);
İçerik metrikleri, blokların veya çalışma alanı yorumlarının etrafındaki sınırlayıcı kutunun height
, width
, top
ve left
öğelerinden oluşur.
Kaydırma Metrikleri
workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);
Kaydırma metrikleri, kaydırılabilir alanın height
, width
, top
ve left
kısmından oluşur. Taşınabilir çalışma alanında kaydırılabilir alan, içerik alanı ve dolgudan oluşur.
Koordinat Sistemleri
Varsayılan olarak, Metrik Yöneticisi tarafından hesaplanan tüm metrikler piksel koordinatı olarak döndürülür. Uygun durumlarda, metrik yöntemlerine true
ileterek çalışma alanı koordinatlarında belirli metrikleri alma seçeneği sunulur. Örneğin,
metricsManager.getViewMetrics(true)
.
workspaceCoordinate = pixelCoordinates / workspace.scale
Çalışma alanı koordinatları genellikle bloklar ve çalışma alanı yorumları gibi çalışma alanında bulunan öğeler için kullanılır. Kullanıcı yakınlaştırıp uzaklaştırdıkça çalışma alanı koordinatları değişmez.
Metrikleri Geçersiz Kılma
Çalışma alanı için kendi metriklerini sağlamak isteyen geliştiriciler, IMetricsManager
arayüzünü uygulayan veya Blockly.MetricsManager
kapsamını genişleten bir yedek metrik yöneticisi nesnesi kaydedebilir.
Bunun bir örneğini Sürekli Araç Kutusu eklentisinde veya Fixed Edges eklentisinde bulabilirsiniz.