Le gestionnaire de métriques collecte toutes les métriques liées à l'espace de travail Blockly et génère des rapports sur celles-ci. Ce guide décrit la signification de chaque ensemble de métriques renvoyé par le gestionnaire de métriques. Pour en savoir plus sur le gestionnaire de métriques, vous pouvez également regarder notre présentation détaillée des métriques 2021.
Métriques
Métriques de la boîte à outils
workspace.getMetricsManager().getToolboxMetrics();
Les métriques de la boîte à outils sont composées des éléments height
, width
et position
d'une boîte à outils de catégorie. Cela n'inclut pas les informations sur le menu déroulant joint à la boîte à outils.
Le position
de la boîte à outils est de type Blockly.utils.toolbox.Position
.
Métriques volantes
workspace.getMetricsManager().getFlyoutMetrics();
Les métriques de menu déroulant sont composées des éléments height
, width
et position
d'une boîte à outils volant. Il est important de noter qu'il ne s'agit pas du menu déroulant joint à la boîte à outils de catégorie. Cela ne concerne que les boîtes à outils volantes, comme illustré dans la photo ci-dessous.
L'élément position
du menu déroulant est de type Blockly.utils.toolbox.Position
.
Métriques SVG
workspace.getMetricsManager().getSvgMetrics();
Les métriques SVG sont composées des éléments width
et height
du SVG parent de l'espace de travail. Pour l'espace de travail principal, il s'agit du SVG avec la classe blocklySvg
. Ce fichier SVG inclut l'espace de travail visible ainsi que la boîte à outils.
Afficher les métriques
workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);
Les métriques de la vue sont composées des éléments height
, width
, top
et left
de la fenêtre d'affichage. La fenêtre d'affichage correspond à la partie visible de l'espace de travail. Cela n'inclut aucun type de boîte à outils.
L'angle supérieur gauche correspond à l'origine de l'espace de travail. Les positions supérieure et gauche de la fenêtre d'affichage sont mises à jour lorsque vous faites glisser le curseur sur l'espace de travail.
Métriques absolues
workspace.getMetricsManager().getAbsoluteMetrics();
Les métriques absolues sont composées du décalage top
et left
de la fenêtre d'affichage par rapport au SVG pareng. Selon l'emplacement de la boîte à outils dans l'espace de travail, il s'agit généralement de la largeur ou de la hauteur de la boîte à outils.
Mesures du réseau de contenu
workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);
Les métriques de contenu sont composées des champs height
, width
, top
et left
du cadre de délimitation autour des blocs ou des commentaires de l'espace de travail.
Faire défiler les métriques
workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);
Les métriques de défilement sont composées des éléments height
, width
, top
et left
de la zone déroulante. Pour un espace de travail mobile, la zone déroulante correspond à la zone de contenu plus une marge intérieure.
Systèmes de coordonnées
Par défaut, toutes les métriques calculées par le gestionnaire de métriques sont renvoyées sous forme de coordonnées de pixels. Le cas échéant, vous pouvez obtenir certaines métriques dans les coordonnées de l'espace de travail en transmettant true
aux méthodes des métriques. Exemple : metricsManager.getViewMetrics(true)
.
workspaceCoordinate = pixelCoordinates / workspace.scale
Les coordonnées de l'espace de travail sont généralement utilisées pour les éléments qui se trouvent dans l'espace de travail, tels que les blocs et les commentaires. Les coordonnées de l'espace de travail ne changent pas lorsque l'utilisateur fait un zoom avant ou arrière.
Remplacer des métriques
Les développeurs qui souhaitent fournir leurs propres métriques pour l'espace de travail peuvent enregistrer un objet gestionnaire de métriques de remplacement qui implémente l'interface IMetricsManager
ou étend Blockly.MetricsManager
.
Vous en trouverez un exemple dans le plug-in Continue Toolbox ou dans le plug-in Bords fixes.