Metrik Yöneticisi

Metrics Manager, her bir soruyla ilgili tüm metrikleri toplar ve bunlarla ilgili Blok çalışma alanı. Bu kılavuzda, her metrik grubunun anlamı açıklanmaktadır. döndürülmüştür. Metrik Yöneticisi hakkında daha fazla bilgi için 2021 Metriklerinin Ayrıntılı İncelemesi videosunu da izleyebilirsiniz.

Metrikler

Araç Kutusu Metrikleri

workspace.getMetricsManager().getToolboxMetrics();

Araç kutusu metrikleri, bir kategori araç kutusunun height, width ve position öğelerinden oluşur. Bu, her şeyi kapsıyor.

Araç kutusunun genişliğini ve yüksekliğini gösteren okların bulunduğu Blockly çalışma alanı.

Araç kutusunun position özelliği Blockly.utils.toolbox.Position türündedir.

Flyout Metrikleri

workspace.getMetricsManager().getFlyoutMetrics();

Açılır menü metrikleri, bir reklam grubunun height, width ve position öğelerinden oluşur. araç kutusu bulunacak. Bunun bir de dahil olmak üzere ekleyebilirsiniz. Bu yalnızca kayan araç kutularıyla ilgilidir. aşağıdaki fotoğrafta gösteriliyor.

Açılır öğenin genişliğini ve yüksekliğini gösteren okların yer aldığı Blockly çalışma alanı.

Açılır menünün position özelliği Blockly.utils.toolbox.Position türündedir.

SVG Metrikleri

workspace.getMetricsManager().getSvgMetrics();

SVG metrikleri, çalışma alanının üst öğesinin width ve height bölümlerinden oluşur SVG. Ana çalışma alanı için bu, blocklySvg sınıfına sahip SVG'dir. Bu SVG, görünür çalışma alanını ve araç kutusunu içerir.

Etrafı mavi dikdörtgenle çevrili 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 değerlerinden oluşur. Görüntü alanı, çalışma alanının görünür olan kısmıdır. Bu, her iki araç kutusu türünü de içermez.

Araç kutusunu içermeyen alanın etrafında mavi bir dikdörtgen bulunan Blockly çalışma alanı.

Sol üst, çalışma alanı başlangıç noktasına göredir. Sürüklerken çalışma alanının etrafında, görüntü alanının üst ve sol konumu güncellendi.

Alanının çevresinde araç kutusu içermeyen mavi bir dikdörtgen ve sol üst köşeden uzaklık olarak gösterilen orijinal ofsetin bulunduğu Blok çalışma alanı.

Mutlak Metrikler

workspace.getMetricsManager().getAbsoluteMetrics();

Mutlak metrikler, görüntü alanının top ve left ofsetinden oluşur kullanır. Araç kutusunun çalışma alanındaki konumuna 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 Blockly çalışma alanı. Yatay araç kutusu içeren Blockly çalışma alanı. Çalışma alanının sol tarafında ve araç kutusunun altında mavi bir çizgi vardır.

İçerik Ölçümleri

workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);

İçerik metrikleri, blokların veya Workspace yorumlarının etrafındaki sınırlayıcı kutunun height, width, top ve left değerlerinden oluşur.

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

Kaydırma Metrikleri

workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);

Kaydırma metrikleri, kaydırılabilir alanın height, width, top ve left değerlerinden oluşur. Hareket edebilir çalışma alanında ise kaydırılabilir alan, alan ve bazı dolgular içeriyor.

Etrafında 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 olarak döndürülür koordinatlarıyla birlikte çalışır. Geçerli olduğu durumlarda, belirli metrikleri Google çalışma alanı koordinatlarını, metrik yöntemlerine true ileterek. Örneğin, metricsManager.getViewMetrics(true)

workspaceCoordinate = pixelCoordinates / workspace.scale

Çalışma alanı koordinatları genellikle çalışma alanında bulunan öğeler (ör. bloklar ve çalışma alanı yorumları) için kullanılır. Kullanıcı yakınlaştırıp uzaklaştı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 işlevini uygulayan bir yedek metrik yöneticisi nesnesi kaydedebilir IMetricsManager arayüzü sunar veya Blockly.MetricsManager öğesini genişletir.

Buna örnek olarak Sürekli Araç Kutusu eklentisini veya Sabit Kenarlar eklentisini gösterebiliriz.