Metrik Yöneticisi

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 genişliğini ve yüksekliğini gösteren okların olduğu Bloklu çalışma alanı.

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.

Uçağın genişliğini ve yüksekliğini gösteren okların bulunduğu Bloklu çalışma alanı.

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.

Çevresinde mavi bir dikdörtgen olan Blockly çalışma alanı.

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.

Araç kutusunu içermeyen mavi bir dikdörtgene sahip Bloklu çalışma alanı.

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.

Araç kutusunu içermeyen mavi bir dikdörtgene sahip Bloklu çalışma alanı ve başlangıç noktasının sol üst köşeden uzaklığı gösteriliyor.

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.

Araç kutusunun sağ tarafında ve çalışma alanının üst kısmında mavi bir çizgi bulunan Bloklu çalışma alanı. Yatay bir araç kutusu içeren Blockly çalışma alanı. Çalışma alanının solunda ve araç kutusunun altında mavi bir çizgi var.

İç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.

Çalışma alanının içeriğinin etrafında mavi bir kutu bulunan Bloklu çalışma alanı.

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.

Çevresinde büyük bir mavi kutu bulunan Blockly çalışma alanı.

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.