Der Messwertmanager

Der Metrics Manager erfasst und erstellt Berichte zu allen Messwerten, die zum Blockierter Arbeitsbereich. In diesem Leitfaden wird die Bedeutung der einzelnen Messwerte beschrieben. die vom Messwertmanager zurückgegeben werden. Weitere Informationen zum Metrics Manager können Sie sich auch das Video 2021 Metrics Deep Dive ansehen.

Messwerte

Toolbox-Messwerte

workspace.getMetricsManager().getToolboxMetrics();

Die Toolbox-Messwerte setzen sich aus height, width und position von Kategorie-Toolbox. Dies umfasst keine Informationen zum Flyout, an der Toolbox angebracht.

Der Arbeitsbereich „Blockly“ mit Pfeilen, die die Breite und Höhe der Toolbox anzeigen.

Die position der Toolbox hat den Typ Blockly.utils.toolbox.Position.

Flyout-Messwerte

workspace.getMetricsManager().getFlyoutMetrics();

Die Flyout-Messwerte setzen sich aus height, width und position eines Flyout-Toolbox. Beachten Sie, dass dies nicht der Flyout-Effekt ist, der Kategorie-Toolbox. Dies betrifft nur Flyout-Toolboxes, wie im Foto unten zu sehen.

Der Arbeitsbereich „Blockly“ mit Pfeilen, die die Breite und Höhe des Flyouts anzeigen.

Die position des Flyouts ist vom Typ Blockly.utils.toolbox.Position.

SVG-Messwerte

workspace.getMetricsManager().getSvgMetrics();

Die SVG-Messwerte setzen sich aus width und height des übergeordneten Elements des Arbeitsbereichs zusammen: SVG. Für den Hauptarbeitsbereich ist dies die SVG-Datei mit der Klasse blocklySvg. Dieses SVG enthält den sichtbaren Arbeitsbereich und die Toolbox.

Der Arbeitsbereich „Blockly“ mit einem blauen Rechteck darum.

Messwerte ansehen

workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);

Die Messwerte für Aufrufe setzen sich aus height, width, top und left der Darstellungsbereich. Der Darstellungsbereich ist der Teil des Arbeitsbereichs, der sichtbar ist. Dieses umfasst keine Art von Toolbox.

Der Blockly-Arbeitsbereich mit einem blauen Rechteck um den Bereich ohne Toolbox.

Oben links ist relativ zum Ursprung des Arbeitsbereichs zu sehen. Wenn wir die Maus sind die obere und linke Position des Darstellungsbereichs aktualisiert.

Der Blockly-Arbeitsbereich mit einem blauen Rechteck um den Bereich ohne Toolbox und einem Ursprung, der verschoben von der oberen linken Ecke angezeigt wird.

Absolute Messwerte

workspace.getMetricsManager().getAbsoluteMetrics();

Die absoluten Messwerte setzen sich aus dem Versatz von top und left des Darstellungsbereichs zusammen. aus der SVG-Datei. Je nachdem, wo sich die Toolbox im Arbeitsbereich ist dies normalerweise die Breite oder Höhe der Toolbox.

Der Blockly-Arbeitsbereich mit einer blauen Linie rechts neben der Toolbox und über dem Arbeitsbereich. Der Blockly-Arbeitsbereich mit einer horizontalen Toolbox. Links neben dem Arbeitsbereich und unter der Toolbox wird eine blaue Linie angezeigt.

Content-Messdaten

workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);

Die Inhaltsmesswerte setzen sich aus height, width, top und left zusammen. Begrenzungsrahmen um alle Blöcke oder Arbeitsbereichskommentare hinzu.

Der Arbeitsbereich „Blockly“ mit einem blauen Rahmen um den Inhalt des Arbeitsbereichs.

Scroll-Messwerte

workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);

Die Scroll-Messwerte setzen sich aus height, width, top und left von scrollen können. Bei einem beweglichen Arbeitsbereich ist der scrollbare Bereich der Inhalt -Bereich und ein wenig Abstand.

Der Arbeitsbereich „Blockly“ mit einem großen blauen Rahmen.

Koordinatensysteme

Standardmäßig werden alle vom Metrics Manager berechneten Messwerte als Pixel zurückgegeben. Koordinaten. Gegebenenfalls können Sie bestimmte Messwerte Arbeitsbereichskoordinaten, indem Sie true an die Messwertmethoden übergeben. Beispiel: metricsManager.getViewMetrics(true)

workspaceCoordinate = pixelCoordinates / workspace.scale

Arbeitsbereichskoordinaten werden im Allgemeinen für Elemente verwendet, die sich im Arbeitsbereich befinden, wie Blöcke und Kommentare zum Arbeitsbereich. Arbeitsbereichskoordinaten ändern sich nicht wenn die Nutzenden heran- und herauszoomen.

Messwerte überschreiben

Entwickler, die ihre eigenen Messwerte für den Arbeitsbereich bereitstellen möchten ein Ersatz-Messwertmanagerobjekt registrieren, das die IMetricsManager-Schnittstelle oder erweitert Blockly.MetricsManager.

Ein Beispiel hierfür finden Sie im Continuous Toolbox-Plug-in oder im Fixed Edges-Plug-in.