Gestore metriche

Metrics Manager raccoglie e genera report su tutte le metriche relative all'area di lavoro Blockly. Questa guida descrive il significato di ogni insieme di metriche restituito da Metrics Manager. Per saperne di più su Metrics Manager, puoi anche guardare il nostro approfondimento sulle metriche del 2021.

Metriche

Metriche di Strumenti

workspace.getMetricsManager().getToolboxMetrics();

Le metriche del toolbox sono composte da height, width e position di un toolbox di categoria. Non sono incluse le informazioni nel riquadro che si apre dalla barra degli strumenti.

L'area di lavoro Blockly con frecce che mostrano la larghezza e l'altezza della
casella degli strumenti.

Il position della barra degli strumenti è di tipo Blockly.utils.toolbox.Position.

Metriche del riquadro in evidenza

workspace.getMetricsManager().getFlyoutMetrics();

Le metriche del riquadro a comparsa sono composte da height, width e position di una casella degli strumenti del riquadro a comparsa. È importante notare che questo non è il riquadro visualizzato nella casella degli strumenti della categoria. Questo vale solo per le barre degli strumenti a comparsa come mostrato nella foto seguente.

Lo spazio di lavoro Blockly con frecce che mostrano la larghezza e l'altezza del
menu a comparsa.

Il position del riquadro è di tipo Blockly.utils.toolbox.Position.

Metriche SVG

workspace.getMetricsManager().getSvgMetrics();

Le metriche SVG sono composte da width e height dell'SVG principale dello spazio di lavoro. Per lo spazio di lavoro principale, questo è il file SVG con la classe blocklySvg. Questo file SVG include lo spazio di lavoro visibile e la casella degli strumenti.

L'area di lavoro Blockly con un rettangolo blu intorno.

Visualizza metriche

workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);

Le metriche sulle visualizzazioni sono composte da height, width, top e left della viewport. Il viewport è la parte dello spazio di lavoro visibile. Questo non include nessuno dei due tipi di cassetta degli attrezzi.

L'area di lavoro Blockly con un rettangolo blu intorno all'area che non include la
casella degli strumenti.

L'angolo in alto a sinistra è relativo all'origine del workspace. Man mano che trasciniamo l'area di lavoro, la posizione superiore e sinistra dell'area visibile viene aggiornata.

L'area di lavoro Blockly con un rettangolo blu intorno all'area che non include la
toolbox e un'origine mostrata con offset rispetto all'angolo
in alto a sinistra.

Metriche assolute

workspace.getMetricsManager().getAbsoluteMetrics();

Le metriche assolute sono composte dall'offset top e left della finestra dal file SVG principale. A seconda della posizione della barra degli strumenti nello spazio di lavoro, questa è in genere la larghezza o l'altezza della barra degli strumenti.

L'area di lavoro Blockly con una linea blu a destra della barra degli strumenti e in alto
all'area di lavoro. Il workspace Blockly con una barra degli strumenti orizzontale. Sul lato sinistro
dell'area di lavoro e sotto
la barra degli strumenti è presente una linea blu.

Parametri per i contenuti

workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);

Le metriche dei contenuti sono composte da height, width, top e left del rettangolo di selezione intorno a qualsiasi blocco o commento di Workspace.

L'area di lavoro Blockly con un riquadro blu intorno ai contenuti dell'area di lavoro.

Metriche di scorrimento

workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);

Le metriche di scorrimento sono composte da height, width, top e left dell'area scorrevole. Per uno spazio di lavoro mobile, l'area scorrevole è l'area dei contenuti più un po' di spazio interno.

Lo spazio di lavoro Blockly con un grande riquadro blu che lo circonda.

Sistemi di coordinate

Per impostazione predefinita, tutte le metriche calcolate da Metrics Manager vengono restituite come coordinate pixel. Ove applicabile, è possibile ottenere determinate metriche nelle coordinate dello spazio di lavoro passando true ai metodi delle metriche. Ad esempio, metricsManager.getViewMetrics(true).

workspaceCoordinate = pixelCoordinates / workspace.scale

Le coordinate dello spazio di lavoro vengono generalmente utilizzate per gli elementi che si trovano nello spazio di lavoro, come i blocchi e i commenti dello spazio di lavoro. Le coordinate di Workspace non cambiano quando l'utente esegue lo zoom avanti e indietro.

Override delle metriche

Gli sviluppatori che vogliono fornire le proprie metriche per lo spazio di lavoro possono registrare un oggetto gestore di metriche sostitutivo che implementa l'interfaccia IMetricsManager o estende Blockly.MetricsManager.

Un esempio è il plug-in Continuous Toolbox o il plug-in Fixed Edges.