Administrador de métricas

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 espacio de trabajo de Blockly con flechas que muestran el ancho y la altura de 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 espacio de trabajo de Blockly con flechas que muestran el ancho y la altura del menú desplegable.

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.

El espacio de trabajo de Blockly con un rectángulo azul alrededor.

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.

El espacio de trabajo de Blockly con un rectángulo azul alrededor del área que no incluye la 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.

El espacio de trabajo de Blockly con un rectángulo azul alrededor del área que no incluye la caja de herramientas y un origen que se muestra desplazado desde la esquina superior izquierda.

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.

El espacio de trabajo de Blockly con una línea azul a la derecha de la caja de herramientas y en la parte superior del espacio de trabajo. El espacio de trabajo de Blockly con una caja de herramientas horizontal. Hay una línea azul a la izquierda del espacio de trabajo y debajo 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.

El espacio de trabajo de Blockly con un cuadro azul alrededor del contenido 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.

El espacio de trabajo de Blockly con un gran cuadro azul que lo rodea.

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.