מנהל המדדים

הכלי לניהול מדדים אוסף את כל המדדים שקשורים לסביבת העבודה של Blockly ומדווח עליהם. במדריך הזה מוסבר מה המשמעות של כל קבוצת מדדים שמוחזרת ממרכז המדדים. למידע נוסף על המרכז למדדים, אפשר גם לצפות בניתוח המעמיק של מדדים משנת 2021.

מדדים

מדדים של ארגז הכלים

workspace.getMetricsManager().getToolboxMetrics();

מדדי ארגז הכלים מורכבים מהמדדים height, width ו-position של ארגז כלים לקטגוריה. הנתונים האלה לא כוללים מידע על התפריט הנפתח שמצורף לארגז הכלים.

סביבת העבודה של Blockly עם חצים שמראים את הרוחב והגובה של ארגז הכלים.

ה-position של ארגז הכלים הוא מסוג Blockly.utils.toolbox.Position.

מדדים בחלונית הנפתחת

workspace.getMetricsManager().getFlyoutMetrics();

המדדים בתפריט הנשלף מורכבים מ-height, width ו-position של ארגז כלים נשלף. חשוב לציין שזה לא התפריט הנפתח שמצורף לארגז הכלים של הקטגוריה. ההסבר הזה רלוונטי רק לארגז כלים נפתח, כמו שמוצג בתמונה שלמטה.

סביבת העבודה של Blockly עם חצים שמראים את הרוחב והגובה של התפריט הנשלף.

ה-position של התפריט הנפתח הוא מסוג Blockly.utils.toolbox.Position.

מדדי SVG

workspace.getMetricsManager().getSvgMetrics();

מדדי ה-SVG מורכבים מ-width ו-height של ה-SVG הראשי של סביבת העבודה. בסביבת העבודה הראשית, זהו קובץ ה-SVG עם המחלקה blocklySvg. קובץ ה-SVG הזה כולל את סביבת העבודה הגלויה ואת ארגז הכלים.

סביבת העבודה של Blockly עם מלבן כחול מסביב.

הצגת מדדים

workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);

מדדי הצפייה מורכבים מהערכים height, width, top ו-left של אזור התצוגה. אזור התצוגה הוא החלק של סביבת העבודה שגלוי. הערך הזה לא כולל אף אחד מסוגי ארגז הכלים.

סביבת העבודה של Blockly עם מלבן כחול מסביב לאזור שלא כולל את ארגז הכלים.

הפינה הימנית העליונה היא ביחס לנקודת המוצא של סביבת העבודה. כשגוררים את סביבת העבודה, המיקום העליון והימני של אזור התצוגה מתעדכן.

סביבת העבודה של Blockly עם מלבן כחול סביב האזור שלא כולל את ארגז הכלים, ומקור שמוצג בהזזה מהפינה השמאלית העליונה.

מדדים מוחלטים

workspace.getMetricsManager().getAbsoluteMetrics();

המדדים המוחלטים מורכבים מההיסטים top ו-left של אזור התצוגה מ-SVG האב. בהתאם למיקום של ארגז הכלים בסביבת העבודה, זה בדרך כלל הרוחב או הגובה של ארגז הכלים.

סביבת העבודה של Blockly עם קו כחול מימין לארגז הכלים ומעל סביבת העבודה. סביבת העבודה של Blockly עם ארגז כלים אופקי. בצד ימין של סביבת העבודה ומתחת לארגז הכלים יש קו כחול.

מדדי תוכן

workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);

מדדי התוכן מורכבים מהערכים height, ‏ width, ‏ top ו-left של תיבת התוחמת סביב כל הבלוקים או התגובות במרחב העבודה.

סביבת העבודה של Blockly עם תיבה כחולה מסביב לתוכן של סביבת העבודה.

מדדי גלילה

workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);

מדדי הגלילה מורכבים מ-height, ‏ width, ‏ top ו-left של האזור הניתן לגלילה. בסביבת עבודה שאפשר להזיז, האזור שאפשר לגלול בו הוא אזור התוכן בתוספת ריווח פנימי.

סביבת העבודה של Blockly עם תיבה כחולה גדולה שמקיפה אותה.

מערכות קואורדינטות

כברירת מחדל, כל המדדים שמחושבים על ידי המרכז למדידת ביצועים מוחזרים כקואורדינטות של פיקסלים. במקרים הרלוונטיים, יש אפשרות לקבל מדדים מסוימים בקואורדינטות של Workspace על ידי העברת true לשיטות המדדים. לדוגמה, metricsManager.getViewMetrics(true).

workspaceCoordinate = pixelCoordinates / workspace.scale

בדרך כלל, קואורדינטות של סביבת עבודה משמשות לפריטים שנמצאים בסביבת העבודה, כמו בלוקים ותגובות בסביבת העבודה. הקואורדינטות של Workspace לא משתנות כשהמשתמש מבצע זום אין וזום אאוט.

החלפת מדדים

מפתחים שרוצים לספק מדדים משלהם לסביבת העבודה יכולים לרשום אובייקט חלופי של מנהל מדדים שמטמיע את IMetricsManagerהממשק או מרחיב את Blockly.MetricsManager.

דוגמה לכך אפשר למצוא בתוסף Continuous Toolbox או בתוסף Fixed Edges.