El administrador de métricas recopila y genera informes sobre todas las métricas relacionadas con el espacio de trabajo de Blockly. En esta guía, se describe el significado de cada conjunto de métricas que devuelve Metrics Manager. Para obtener más información sobre el Administrador de métricas, también puedes mirar nuestro Análisis detallado de métricas de 2021.
Métricas
Métricas de la caja de herramientas
workspace.getMetricsManager().getToolboxMetrics();
Las métricas de la colección de herramientas se componen de height
, width
y position
de una colección de herramientas de categoría. No incluye información sobre el menú desplegable adjunto a la caja de herramientas.
El position
de la caja de herramientas es del tipo Blockly.utils.toolbox.Position
.
Métricas de ventanas emergentes
workspace.getMetricsManager().getFlyoutMetrics();
Las métricas de la ventana emergente se componen de height
, width
y position
de una caja de herramientas de ventana emergente. Es importante tener en cuenta que este no es el menú desplegable adjunto a la caja de herramientas de categorías. Esto solo se aplica a las cajas de herramientas desplegables, como se muestra en la siguiente foto.
El position
del menú desplegable es del tipo Blockly.utils.toolbox.Position
.
Métricas de SVG
workspace.getMetricsManager().getSvgMetrics();
Las métricas de SVG se componen de width
y height
del SVG principal del espacio de trabajo. Para el espacio de trabajo principal, este es el SVG con la clase blocklySvg
.
Este SVG incluye el espacio de trabajo visible y la caja de herramientas.
Ver métricas
workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);
Las métricas de vista se componen de height
, width
, top
y left
de la ventana gráfica. El viewport es la parte del espacio de trabajo que está visible. Esto no incluye ningún tipo de caja de herramientas.
La esquina superior izquierda es relativa al origen del espacio de trabajo. A medida que arrastramos el espacio de trabajo, se actualizan la posición superior y la posición izquierda del viewport.
Métricas absolutas
workspace.getMetricsManager().getAbsoluteMetrics();
Las métricas absolutas se componen del desplazamiento top
y left
del viewport desde el SVG principal. Según la posición de la caja de herramientas en el espacio de trabajo, suele ser el ancho o la altura de la caja de herramientas.
Cifras del contenido
workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);
Las métricas de contenido se componen del height
, el width
, el top
y el left
del cuadro de límite alrededor de cualquier bloque o comentario del espacio de trabajo.
Métricas de desplazamiento
workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);
Las métricas de desplazamiento se componen de los valores height
, width
, top
y left
del área desplazable. En el caso de un espacio de trabajo móvil, el área desplazable es el área de contenido más un relleno.
Sistemas de coordenadas
De forma predeterminada, todas las métricas que calcula el Administrador de métricas se devuelven como coordenadas de píxeles. Cuando corresponda, existe la opción de obtener ciertas métricas en coordenadas del espacio de trabajo pasando true
a los métodos de métricas. Por ejemplo, metricsManager.getViewMetrics(true)
workspaceCoordinate = pixelCoordinates / workspace.scale
Por lo general, las coordenadas del espacio de trabajo se usan para los elementos que se encuentran en el espacio de trabajo, como los bloques y los comentarios del espacio de trabajo. Las coordenadas del espacio de trabajo no cambian a medida que el usuario acerca o aleja el mapa.
Anulación de métricas
Los desarrolladores que deseen proporcionar sus propias métricas para el espacio de trabajo pueden registrar un objeto administrador de métricas sustituto que implemente la interfaz IMetricsManager
o extienda Blockly.MetricsManager
.
Puedes encontrar un ejemplo de esto en el complemento Continuous Toolbox o en el complemento Fixed Edges.