יצירת מעבדים מותאמים אישית

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

class CustomRenderer extends Blockly.blockRendering.Renderer {
  constructor() {
    super();
  }
}

ללא התאמה אישית, המרת ה-HTML כברירת מחדל נראית כך:

עיבוד תמונה בסיסי

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

class CustomRenderer extends Blockly.thrasos.Renderer {
  constructor() {
    super();
  }
}

יצירת תת-סוג של רכיבי עיבוד אחרים

הצורה בפועל של הבלוק נקבעת על ידי רכיבי המשנה של המרינר.

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

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

במסמכי התיעוד של רכיבי ה-renderer מפורט מידע נוסף על הפעולות של כל רכיב.

שינוי שיטות המפעל

אחרי שיוצרים צאצא של רכיבי ה-renderer, צריך לשנות את שיטות המפעל של Renderer לרכיבים שיצרתם להם צאצא. כך ה-renderer יכול לחבר את הרכיבים השונים בצורה נכונה.

יש שיטה לכל סוג של רכיב:

רישום המכשיר להמרה

לבסוף, אחרי שתסיימו ליצור את המרת ה-HTML בהתאמה אישית, תצטרכו לרשום אותה. כך המערכת משייך את ה-renderer למחרוזת, כדי שתוכלו להעביר אותה לאפשרויות ההגדרה.

Blockly.blockRendering.register('custom_renderer', CustomRenderer);

const workspace = Blockly.inject(blocklyDiv, {
  renderer: 'custom_renderer',
});