From 8cebd90e453271c2312b89b6b28b3e4d5c6fdb42 Mon Sep 17 00:00:00 2001 From: hasecilu Date: Sun, 8 Sep 2024 14:31:25 -0600 Subject: [PATCH 1/6] Use absolute path of template file --- python/create_skill_tree_svg.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/python/create_skill_tree_svg.py b/python/create_skill_tree_svg.py index ddbb4cf..7e4fdae 100755 --- a/python/create_skill_tree_svg.py +++ b/python/create_skill_tree_svg.py @@ -1,6 +1,7 @@ #!/bin/env python -import argparse +import argparse +import os import yaml @@ -41,7 +42,8 @@ def save_processed_svg(content, output_path): def main(): - svg_template_path = "skill_tree_template.svg.j2" + script_path = os.path.dirname(os.path.abspath(__file__)) + svg_template_path = os.path.join(script_path, "skill_tree_template.svg.j2") parser = argparse.ArgumentParser(description="Process SVG template with YAML data.") parser.add_argument("input_yaml", help="Path to input YAML file") From 3216af946d0bc1eaafd8e6d18d78705abc726c7d Mon Sep 17 00:00:00 2001 From: hasecilu Date: Sun, 8 Sep 2024 16:52:24 -0600 Subject: [PATCH 2/6] Add YAML files with English strings, compatible with Python script --- 3D Modelling Skill Tree/3D_Modeling.yml | 82 +++++++++++++++++++ 3D Printing Skill Tree/3D_Printing.yml | 82 +++++++++++++++++++ .../3D_Printing_and_Modelling.yml | 82 +++++++++++++++++++ 3 files changed, 246 insertions(+) create mode 100644 3D Modelling Skill Tree/3D_Modeling.yml create mode 100644 3D Printing Skill Tree/3D_Printing.yml create mode 100644 3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling.yml diff --git a/3D Modelling Skill Tree/3D_Modeling.yml b/3D Modelling Skill Tree/3D_Modeling.yml new file mode 100644 index 0000000..a4deca9 --- /dev/null +++ b/3D Modelling Skill Tree/3D_Modeling.yml @@ -0,0 +1,82 @@ +--- +title: 3D MODELING +author: MADE BY STEVEN MOHR & STEPH PIPER - MAKERQUEEN AU +row: + 0: + - Know how to check size in 3D software + - Use boolean tools in 3D software + - Create a model in TinkerCAD + - Learn to navigate a 3D interface with pan, orbit and zoom + - Make a low poly model + - Use the extrude tool in 3D software + - Use the revolve tool in 3D software + 1: + - Draw a detailed sketch with dimensions before 3D modelling + - Create a model in MeshMixer + - Edit a texture in an image-editing software + - Make a 2D schematic of a 3D model + - Texture a low poly object + - Design something for 3D printing + - Upload a remix of a 3D model + 2: + - Rig a crane object with FK/IK system + - Create a 3D model from a 2D schematic + - Create a 3 point light setup + - Modify edge normals for low-poly asset design + - Model and make something that solves a problem + - UV unwrap a low-poly object + - Design a custom model for a friend + 3: + - Make a model in sculpting software e.g. Blender, Z-brush, Mudbox etc + - Design a tool of some kind + - Light and render a 3D object turntable + - UV unwrap a complex object (UDIMs) + - Render a model in an engineering CAD software + - Create a model in an engineering CAD software e.g. Fusion 350, FreeCAD, SolidWorks or others + - 3D model something and upload it under an Open Source licence + 4: + - Create a texture in a texturing package, e.g. Substance Painter, Blender, Mudbox + - Capture a texture from the real world + - Texture a 3D model with realistic texturing + - Design a model to embed electronics or magnets + - Design something to be printed in two colors or materials + - Design something flat to be made in folded material, e.g. Sheet metal, papercraft + - Stress test a model in an engineering CAD software + 5: + - 3D model a character + - Retopologise a 3D object / character + - Sculpt something from a reference photo + - Use an SVG file to make part of a 3D model + - Design something to be printed in flexible TPU material + - Design an articulating or print in place model + - Reverse engineer something in CAD software + 6: + - Use a slicing software for preparing to print a model + - Assemble a 3D model with free assets + - Design a custom model for cosplay + - Make a CAD model of your room, work or home + - Iterative design: Make improvements to a 3D model + - Animate a 3D rig from a free online model e.g. Ball or pendulum rig + - Create a customizable model in OpenSCAD + 7: + - Rig something you've sculpted + - Teach a friend how to 3D model + - Learn two or more sculpting softwares + - Get 3D scanned or 3D scan something + - Design, print and assemble something with multiple parts + - Animate a crane rig + - Animate an engineering CAD model + 8: + - Animate something you've sculpted + - Use generative design + - Make a puzzle based 3D game + - Learn more than three softwares for 3D modelling + - Use mathematics to create a 3D model e.g. Grasshopper with Rhino 3D software + - Learn a game engine + - Sell something you've 3D modelled + 9: + - Make something for VR + - Make something for AR + - Create an instructable hackaday page or Hackster.io page on a project + - Teach a class on 3D printing or 3D modelling + - Create a 3D platformer game in a game engine diff --git a/3D Printing Skill Tree/3D_Printing.yml b/3D Printing Skill Tree/3D_Printing.yml new file mode 100644 index 0000000..2d9939b --- /dev/null +++ b/3D Printing Skill Tree/3D_Printing.yml @@ -0,0 +1,82 @@ +--- +title: 3D PRINTING +author: MADE BY STEPH PIPER - MAKERQUEEN AU +row: + 0: + - Print something with multiple parts and assemble + - Print a gift for a friend or family member + - Print an organiser for the home + - Put on your first 3D Print + - Use an FDM printer for the first time + - Learn how to level your print bed manually + - Print in PLA material + 1: + - Set up a resin printing PPE and wash and cure station + - Use a resin printer for the first time + - Create something from Customizer on Thingiverse + - Print a batch of something + - Accidentally break a print while removing support material + - Print something educational + - Print an articulating or print in place model + 2: + - Print something functional + - Calibrate a resin printer + - Use spiralise or vase mode to print something + - Print something that moves (eg fidget toy) + - Have a failed print and fix the problem + - Change a nozzle for the first time + - Identify and fix a settings issue + 3: + - Print a tool of some kind + - Print in PETG material + - 3D print something on fabric + - Do a hot pull and cold pull cycle to unclog a nozzle + - Model and print something that solves a problem + - Print a model with tree supports + - Edit an existing model and print + 4: + - Mix your own resin blend + - Make a lithophane from a photo or image + - Print in ABS material + - Embed electronics, magnets or something else inside a 3D print + - Print in two colors or materials + - Have a spectacular failure, with lots of spaghettis + - Upload a remix of a 3D model + 5: + - Print something for cosplay or prop making + - Teach a friend how to 3D Print + - Repair something with 3D printing + - Use PVA disolvable support material + - Print in flexible material + - Print something that requires more than 1kg of filament + - Reverse engineer something in CAD software + 6: + - Visit your local makerspace + - Use heat set threaded inserts in a part + - Print something to wear + - Print a mould for a casting project + - Print something again after making design improvements + - Sell something you've 3D printed + - Print something that makes a noise + 7: + - Try a different slicing software + - Acetone smoothing an ABS part + - Print something in metal or metal-like material + - Get 3D scanned and print a model of yourself + - Sand and paint something you've printed + - Mod your 3D printer with something 3D printed + - 3D Model something and upload it under an Open Source licence + 8: + - Try heat annealing a part to make it stronger + - Print in Carbon Fibre material + - Use a different type of 3D printer (eg food, clay, pancake...) + - Recycle filament or failed prints in a creative way + - Use a multi-material printer + - Print in Nylon or ASA material + - Print something large + 9: + - Send a file to your printer wirelessely + - Build your own 3D printer + - Teach a class on 3D Printing or 3D modelling + - Create and instructable, hackaday page or Hackster.io page on a project + - Install and use a nozzle larger or smaller than the standard size diff --git a/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling.yml b/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling.yml new file mode 100644 index 0000000..892b6af --- /dev/null +++ b/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling.yml @@ -0,0 +1,82 @@ +--- +title: 3D PRINTING %amp; MODELLING +author: MADE BY STEPH PIPER - MAKERQUEEN AU +row: + 0: + - Print something from Thingiverse + - Print a gift for a friend or family member + - Use a resin printer for the first time + - Put on your first 3D Print + - Use an FDM printer for the first time + - Learn how to level your print bed manually + - Print in PLA material + 1: + - Use 3D Builder to help you to prepare a model for printing + - Print something from MyMiniFactory + - Create something from Customizer on Thingiverse + - Print a benchy or Cali Cat + - Print something from Printables + - Print something from Cults3D + - Print an articulating or print in place model + 2: + - Print something functional + - Create and 3D print a model in TinkerCAD + - Use spiralise or vase mode to print something + - Create and 3D print a model in MeshMixer + - Have a failed print and fix the problem + - Change a nozzle for the first time + - Print 10 models + 3: + - Print a tool of some kind + - Print in PETG material + - 3D print something on fabric + - Do a hot pull and cold pull cycle to unclog a nozzle + - Model and print something that solves a problem + - Print a model with tree supports + - Edit an existing model and print + 4: + - 3D model 10 models + - Make a lithophane from a photo or image + - Print in ABS material + - Embed electronics, magnets or something else inside a 3D print + - Print in two colors or materials + - Have a spectacular failure, with lots of spaghettis + - Upload a remix of a 3D model + 5: + - Visit your local makerspace + - Teach a friend how to 3D Print + - Repair something that’s broken with 3D printing + - Create a model in an engineering software (eg Fusion 360, FreeCAD, Solidworks or others) + - Print in flexible TPU material + - Print something that requires more than 1kg of filament + - Reverse engineer something in CAD software + 6: + - Try a different Slicing Software + - Use heat set threaded inserts in a part + - Accidentally break a print while removing support material + - Make a CAD Model of your romm, work or home + - Iterative design: print something again after making improvements + - Sell something you've 3D printed + - Print something that makes a noise + 7: + - Try heat annealing a part to make it stronger + - Try acetone smoothing an ABS printed part + - Print something in metal or metal-like material + - Get 3D scanned and print a model of yourself + - Design, print and assemble something with multiples parts + - Mod your 3D printer with something 3D printed + - 3D Model something and upload it under an Open Source licence + 8: + - Make a model in a sculpting software (eg Blender, Z-brush, MudBox, Maya...) + - Print in Carbon Fibre material + - Use a different type of 3D printer (eg food, clay, pancake...) + - Recycle filament or failed prints in a creative way + - Buy a second 3D printer for work, home or makerspace + - Print in Nylon or ASA material + - Create a customizable model in OpenSCAD + 9: + - Send a file to your printer wirelessely (Octoprint, Astroprint or built-in + - Create something to address on of the Sustainable Development Goals + - Teach a class on 3D Printing or 3D modelling + - Create and instructable, hackaday page or Hackster.io page on a project + - Install and use a nozzle larger or smaller than the standard size From 85a62462f031fc15b8517c18a0297e7dbb7357de Mon Sep 17 00:00:00 2001 From: hasecilu Date: Sun, 8 Sep 2024 19:22:27 -0600 Subject: [PATCH 3/6] Translate "3D printing and modelling" maker trees to Spanish --- 3D Modelling Skill Tree/3D_Modeling_es.yml | 82 +++++++++++++++++++ 3D Printing Skill Tree/3D_Printing_es.yml | 82 +++++++++++++++++++ .../3D_Printing_and_Modelling_es.yml | 82 +++++++++++++++++++ 3 files changed, 246 insertions(+) create mode 100644 3D Modelling Skill Tree/3D_Modeling_es.yml create mode 100644 3D Printing Skill Tree/3D_Printing_es.yml create mode 100644 3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling_es.yml diff --git a/3D Modelling Skill Tree/3D_Modeling_es.yml b/3D Modelling Skill Tree/3D_Modeling_es.yml new file mode 100644 index 0000000..8b149de --- /dev/null +++ b/3D Modelling Skill Tree/3D_Modeling_es.yml @@ -0,0 +1,82 @@ +--- +title: MODELADO 3D +author: HECHO POR STEVEN MOHR & STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU +row: + 0: + - Saber cómo comprobar el tamaño en el software 3D + - Utilizar herramientas booleanas en software 3D + - Crear un modelo en TinkerCAD + - Aprender a navegar por una interfaz 3D con panorámica, órbita y zoom + - Hacer un modelo de pocos polígonos + - Utilizar la herramienta de extrusión en el software 3D + - Utilizar la herramienta de revolución en el software 3D + 1: + - Dibujar un croquis detallado con dimensiones antes del modelado 3D + - Crear un modelo en MeshMixer + - Editar una textura en un software de edición de imágenes + - Hacer un esquema 2D de un modelo 3D + - Texturizar un objeto de pocos polígonos + - Diseñar algo para impresión 3D + - Subir una remezcla de un modelo 3D + 2: + - Crear el esqueleto de una grúa con su sistema de cinemática directa/inversa + - Crear un modelo 3D a partir de un esquema 2D + - Crear una configuración de luz de 3 puntos + - Modificar las normales de las aristas para el diseño de una pieza de pocos polígonos + - Modelar y crear algo que resuelva un problema + - Hacer el desenvolvimiento UV de un objeto de pocos polígonos + - Diseñar un modelo personalizado para un amigo + 3: + - Hacer un modelo en un software de escultura, p.e. Blender, Z-brush, Mudbox, etc. + - Diseñar una herramienta de algún tipo + - Iluminar y renderizar un plato giratorio con objetos 3D + - Hacer el desenvolvimiento UV de un objeto complejo (UDIMs) + - Renderizar un modelo en un software CAD de ingeniería + - Crear un modelo en un software CAD de ingeniería, p.e. Fusion 360, FreeCAD, SolidWorks u otros + - Modelar algo en 3D y subirlo bajo una licencia de código abierto + 4: + - Crear una textura en un paquete de texturas, p.e. Substance Painter, Blender, Mudbox + - Capturar una textura del mundo real + - Texturizar un modelo 3D con texturas realistas + - Diseñar un modelo para incorporar electrónica o imanes. + - Diseñar algo para imprimir en dos colores o materiales + - Diseñar algo plano para fabricarlo con material doblado, p.e. chapa metálica, artesanía en papel + - Hacer una prueba de esfuerzo a un modelo en un software CAD de ingeniería + 5: + - Modelar en 3D a un personaje + - Retopologizar un objeto/personaje 3D + - Esculpir algo a partir de una foto de referencia + - Utilizar un archivo SVG para hacer la parte de un modelo 3D + - Diseñar algo para imprimir en material TPU flexible + - Diseñar un modelo articulado o un modelo impreso en el lugar + - Realizar ingeniería inversa en algún software CAD + 6: + - Utilizar un software de laminado para prepararse para imprimir un modelo + - Ensamblar un modelo 3D con recursos gratuitos + - Diseñar un modelo personalizado para cosplay + - Hacer un modelo CAD de tu habitación, trabajo o casa + - Diseño iterativo: Hacer mejoras a un modelo 3D + - Animar el esqueleto 3D de un modelo en línea gratuito, p.e. esqueleto de un sistema de bola o de péndulo + - Crear un modelo personalizable en OpenSCAD + 7: + - Crear el esqueleto de algo que hayas esculpido + - Enseñarle a un amigo a modelar en 3D + - Aprender dos o más softwares de escultura + - Obtener un escaneo 3D o escanear algo en 3D + - Diseñar, imprimir y montar algo con varias piezas + - Animar una plataforma de grúa + - Animar un modelo CAD de ingeniería + 8: + - Animar algo que hayas esculpido + - Utilizar diseño generativo + - Crear un juego de rompecabezas en 3D + - Aprender más de tres softwares para modelado 3D + - Utilizar matemáticas para crear un modelo 3D, p.e. Saltamontes con el software Rhino 3D + - Aprender a usar un motor de videojuegos + - Vender algo que hayas modelado en 3D + 9: + - Hacer algo para realidad virtual + - Hacer algo para realidad aumentada + - Crear una página con instrucciones de un proyecto en hackaday o en Hackster.io + - Impartir una clase sobre impresión 3D o modelado 3D + - Crear un juego de plataformas en 3D en un motor de juego diff --git a/3D Printing Skill Tree/3D_Printing_es.yml b/3D Printing Skill Tree/3D_Printing_es.yml new file mode 100644 index 0000000..0060393 --- /dev/null +++ b/3D Printing Skill Tree/3D_Printing_es.yml @@ -0,0 +1,82 @@ +--- +title: IMPRESIÓN 3D +author: HECHO POR STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU +row: + 0: + - Imprimir algo con varias partes y ensamblarlo + - Imprimir un regalo para un amigo o un familiar + - Imprimir un organizador para el hogar + - Empezar tu primera impresión 3D + - Utilizar una impresora FDM por primera vez + - Aprender a nivelar su cama de impresión manualmente + - Imprimir en material PLA + 1: + - Instalar equipo de protección personal para impresión con resina y una estación de lavado y curado. + - Utilizar una impresora de resina por primera vez + - Crear algo desde el personalizador en Thingiverse + - Imprimir un lote de algo + - Romper accidentalmente una impresión al retirar el material de soporte + - Imprimir algo educativo + - Imprimir un modelo articulado o un modelo impreso en el lugar + 2: + - Imprimir algo funcional + - Calibrar una impresora de resina + - Utilizar el modo espiral o jarrón para imprimir algo + - Imprimir algo que se mueva (por ejemplo, un juguete) + - Tener una impresión fallida y solucionar el problema + - Cambiar una boquilla por primera vez + - Identificar y solucionar un problema de configuración + 3: + - Imprimir una herramienta de algún tipo + - Imprimir en material PETG + - Imprimie algo en 3D sobre tela + - Realizar un ciclo de extracción en caliente y extracción en frío para desatascar una boquilla + - Modelar e imprimir algo que resuelva un problema + - Imprimir un modelo con soportes de árboles + - Editar un modelo existente e imprimirlo + 4: + - Mezclar tu propia mezcla de resina + - Hacer una litofanía a partir de una foto o imagen + - Imprimir en material ABS + - Incrustar componentes electrónicos, imanes o cualquier otra cosa dentro de una impresión 3D + - Imprimir en dos colores o materiales + - Tener un fracaso espectacular, con muchos espaguetis + - Subir una remezcla de un modelo 3D + 5: + - Imprimir algo para cosplay o crear algún accesorio + - Enseñarle a un amigo cómo imprimir en 3D + - Reparar algo con impresión 3D + - Utilizar material de soporte soluble PVA + - Imprimir en material flexible + - Imprimir algo que requiera más de 1kg de filamento + - Realizar ingeniería inversa en algún software CAD + 6: + - Visitar el espacio de creación local + - Utilizar insertos roscados termofijados en una pieza + - Imprimir algo para vestir + - Imprimir un molde para un proyecto de fundición + - Imprimir algo nuevamente después de realizar mejoras en el diseño + - Vender algo que hayas impreso en 3D + - Imprimir algo que haga ruid + 7: + - Probar un software de laminado diferente + - Alisar una pieza de ABS con acetona + - Imprimir algo en metal o un material similar al metal + - Escanear en 3D e imprimir un modelo de ti mismo + - Lijar y pintar algo que hayas impreso + - Modificar tu impresora 3D con algo impreso en 3D + - Modelar algo en 3D y subirlo bajo una licencia de código abierto + 8: + - Intentar recocer con calor una pieza para hacerla más fuerte + - Imprimir en material de fibra de carbono + - Utilizar un tipo diferente de impresora 3D (p.e. comida, arcilla, panqueques...) + - Reciclar filamentos o impresiones fallidas de forma creativa + - Utilizar una impresora multimaterial + - Imprimir en material Nylon o ASA + - Imprimir algo grande + 9: + - Enviar un archivo a la impresora de forma inalámbrica + - Construir tu propia impresora 3D + - Impartir una clase sobre impresión 3D o modelado 3D + - Crear una página con instrucciones de un proyecto en hackaday o en Hackster.io + - Instalar y utilizar una boquilla más grande o más pequeña que el tamaño estándar diff --git a/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling_es.yml b/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling_es.yml new file mode 100644 index 0000000..a8c2284 --- /dev/null +++ b/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling_es.yml @@ -0,0 +1,82 @@ +--- +title: IMPRESIÓN 3D Y MODELADO +author: HECHO POR STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU +row: + 0: + - Imprimir algo de Thingiverse + - Imprimir un regalo para un amigo o un familiar + - Utilizar una impresora de resina por primera vez + - Empezar tu primera impresión 3D + - Utilizar una impresora FDM por primera vez + - Aprender a nivelar su cama de impresión manualmente + - Imprimir en material PLA + 1: + - Utilizar 3D Builder para ayudarse a preparar un modelo para imprimir + - Imprimir algo desde MyMiniFactory + - Crear algo desde el personalizador en Thingiverse + - Imprimir un benchy o Cali Cat + - Imprimir algo de Printables + - Imprimir algo de Cults3D + - Imprimir un modelo articulado o un modelo impreso en el lugar + 2: + - Imprimir algo funcional + - Crear e imprimir en 3D un modelo en TinkerCAD + - Utilizar el modo espiral o jarrón para imprimir algo + - Crear e imprimir en 3D un modelo en MeshMixer + - Tener una impresión fallida y solucionar el problema + - Cambiar una boquilla por primera vez + - Imprimir 10 modelos + 3: + - Imprimir una herramienta de algún tipo + - Imprimir en material PETG + - Imprimir algo en 3D sobre tela + - Realizar un ciclo de extracción en caliente y extracción en frío para desatascar una boquilla + - Modelar e imprimir algo que resuelva un problema + - Imprimir un modelo con soportes de árboles + - Editar un modelo existente e imprimirlo + 4: + - Modelar en 3D 10 modelos + - Hacer una litofanía a partir de una foto o imagen + - Imprimir en material ABS + - Incrustar componentes electrónicos, imanes o cualquier otra cosa dentro de una impresión 3D + - Imprimir en dos colores o materiales + - Tener un fracaso espectacular, con muchos espaguetis + - Subir una remezcla de un modelo 3D + 5: + - Visitar el espacio de creación local + - Enseñarle a un amigo cómo imprimir en 3D + - Reparar algo roto con la impresión 3D + - Crear un modelo en un software de ingeniería (por ejemplo, Fusion 360, FreeCAD, Solidworks u otros) + - Impremir en material TPU flexible + - Imprimir algo que requiera más de 1kg de filamento + - Realizar ingeniería inversa en algún software CAD + 6: + - Probar un software de laminado diferente + - Utilizar insertos roscados termofijados en una pieza + - Romper accidentalmente una impresión al retirar el material de soporte + - Hacer un modelo CAD de tu habitación, trabajo o casa + - Diseño iterativo: imprimir algo nuevamente después de realizar mejoras + - Vender algo que hayas impreso en 3D + - Imprimir algo que haga ruido + 7: + - Intentar recocer con calor una pieza para hacerla más fuerte + - Intentar alisar con acetona una pieza impresa en ABS + - Imprimir algo en metal o un material similar al metal + - Escanear en 3D e imprimir un modelo de ti mismo + - Diseñar, imprimir y montar algo con varias piezas + - Modificar tu impresora 3D con algo impreso en 3D + - Modelar algo en 3D y subirlo bajo una licencia de código abierto + 8: + - Hacer un modelo en un software de escultura (p.e., Blender, Z-brush, MudBox, Maya...) + - Imprimir en material de fibra de carbono + - Utilizar un tipo diferente de impresora 3D (p.e., comida, arcilla, panqueques...) + - Reciclar filamentos o impresiones fallidas de forma creativa + - Comprar una segunda impresora 3D para el trabajo, el hogar o el espacio de creación + - Imprimir en material Nylon o ASA + - Crear un modelo personalizable en OpenSCAD + 9: + - Enviar un archivo a su impresora de forma inalámbrica (Octoprint, Astroprint o integrada) + - Crear algo para abordar uno de los Objetivos de Desarrollo Sostenible + - Impartir una clase sobre impresión 3D o modelado 3D + - Crear una página con instrucciones de un proyecto en hackaday o en Hackster.io + - Instalar y utilizar una boquilla más grande o más pequeña que el tamaño estándar From d9d2b016d3627be7517a907291cfae2a8e29d218 Mon Sep 17 00:00:00 2001 From: hasecilu Date: Sun, 8 Sep 2024 19:23:10 -0600 Subject: [PATCH 4/6] Remove "MADE BY " from template to allow translate string As seen on French-translated maker trees, the footer could (and should) be translated, so, removing the hardcoded string enable to completely translate the footer. --- python/skill_tree_template.svg.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/skill_tree_template.svg.j2 b/python/skill_tree_template.svg.j2 index e28af42..04045ff 100644 --- a/python/skill_tree_template.svg.j2 +++ b/python/skill_tree_template.svg.j2 @@ -658,7 +658,7 @@ text#credits { CC BY-NC-SA 4.0 github.com/sjpiper145/MakerSkillTree From 29c62bba0967031835f010fef64d814f73ec8804 Mon Sep 17 00:00:00 2001 From: hasecilu Date: Sun, 8 Sep 2024 19:29:56 -0600 Subject: [PATCH 5/6] Split long strings by inserting "new line" characther --- python/create_skill_tree_svg.py | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/python/create_skill_tree_svg.py b/python/create_skill_tree_svg.py index 7e4fdae..911a3ef 100755 --- a/python/create_skill_tree_svg.py +++ b/python/create_skill_tree_svg.py @@ -15,6 +15,29 @@ def load_svg_template(file_path): return file.read() +def make_text_multiline(text: list, length1: int = 18, length2: int = 25) -> str: + """Split long one-line strings into multiple-lines strings with a maximum length.""" + + # To follow the shape of the hexagon the first line should + # be smaller, maybe to 18 characters. + + desired_l = length1 # for line 1 + processed_str_len = 0 + + space_indexes = [i for i, char in enumerate(text) if char == " "] + for i in range(1, len(space_indexes)): + if space_indexes[i] < desired_l + processed_str_len: + # substring fit in the line, keep searching + pass + else: + # substring is greater than permissible length + text[space_indexes[i - 1]] = " " # break line on previous space + desired_l = length2 # for lines 2, 3, 4, ... + processed_str_len += space_indexes[i - 1] - 1 + + return "".join(text) + + def process_svg(template, data): # Replace title and author processed = template.replace("{{ title }}", data["title"]) @@ -30,8 +53,9 @@ def process_svg(template, data): if j >= 5: continue value = data["row"][i][j] + splitted_string = make_text_multiline(list(value)) placeholder = f"{{{{ box_{box_number:03d} }}}}" - processed = processed.replace(placeholder, str(value)) + processed = processed.replace(placeholder, splitted_string) return processed From e3b25803a7f37c99d99fbdf2c93120ecc1ecf4c1 Mon Sep 17 00:00:00 2001 From: hasecilu Date: Sun, 8 Sep 2024 21:20:18 -0600 Subject: [PATCH 6/6] Replace `author` tag with `footer` --- 3D Modelling Skill Tree/3D_Modeling.yml | 2 +- 3D Modelling Skill Tree/3D_Modeling_es.yml | 2 +- 3D Printing Skill Tree/3D_Printing.yml | 2 +- 3D Printing Skill Tree/3D_Printing_es.yml | 2 +- .../3D_Printing_and_Modelling.yml | 2 +- .../3D_Printing_and_Modelling_es.yml | 2 +- python/create_skill_tree_svg.py | 4 ++-- python/input.yml | 2 +- python/skill_tree_template.svg.j2 | 2 +- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/3D Modelling Skill Tree/3D_Modeling.yml b/3D Modelling Skill Tree/3D_Modeling.yml index a4deca9..f06a870 100644 --- a/3D Modelling Skill Tree/3D_Modeling.yml +++ b/3D Modelling Skill Tree/3D_Modeling.yml @@ -1,6 +1,6 @@ --- title: 3D MODELING -author: MADE BY STEVEN MOHR & STEPH PIPER - MAKERQUEEN AU +footer: MADE BY STEVEN MOHR & STEPH PIPER - MAKERQUEEN AU row: 0: - Know how to check size in 3D software diff --git a/3D Modelling Skill Tree/3D_Modeling_es.yml b/3D Modelling Skill Tree/3D_Modeling_es.yml index 8b149de..0e76d19 100644 --- a/3D Modelling Skill Tree/3D_Modeling_es.yml +++ b/3D Modelling Skill Tree/3D_Modeling_es.yml @@ -1,6 +1,6 @@ --- title: MODELADO 3D -author: HECHO POR STEVEN MOHR & STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU +footer: HECHO POR STEVEN MOHR & STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU row: 0: - Saber cómo comprobar el tamaño en el software 3D diff --git a/3D Printing Skill Tree/3D_Printing.yml b/3D Printing Skill Tree/3D_Printing.yml index 2d9939b..c917a5e 100644 --- a/3D Printing Skill Tree/3D_Printing.yml +++ b/3D Printing Skill Tree/3D_Printing.yml @@ -1,6 +1,6 @@ --- title: 3D PRINTING -author: MADE BY STEPH PIPER - MAKERQUEEN AU +footer: MADE BY STEPH PIPER - MAKERQUEEN AU row: 0: - Print something with multiple parts and assemble diff --git a/3D Printing Skill Tree/3D_Printing_es.yml b/3D Printing Skill Tree/3D_Printing_es.yml index 0060393..75fc0ec 100644 --- a/3D Printing Skill Tree/3D_Printing_es.yml +++ b/3D Printing Skill Tree/3D_Printing_es.yml @@ -1,6 +1,6 @@ --- title: IMPRESIÓN 3D -author: HECHO POR STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU +footer: HECHO POR STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU row: 0: - Imprimir algo con varias partes y ensamblarlo diff --git a/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling.yml b/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling.yml index 892b6af..7b6ddb2 100644 --- a/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling.yml +++ b/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling.yml @@ -1,6 +1,6 @@ --- title: 3D PRINTING %amp; MODELLING -author: MADE BY STEPH PIPER - MAKERQUEEN AU +footer: MADE BY STEPH PIPER - MAKERQUEEN AU row: 0: - Print something from Thingiverse diff --git a/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling_es.yml b/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling_es.yml index a8c2284..fed5d57 100644 --- a/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling_es.yml +++ b/3D Printing and Modelling Skill Tree/3D_Printing_and_Modelling_es.yml @@ -1,6 +1,6 @@ --- title: IMPRESIÓN 3D Y MODELADO -author: HECHO POR STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU +footer: HECHO POR STEPH PIPER - MAKERQUEEN AU, TRADUCIDO POR HASECILU row: 0: - Imprimir algo de Thingiverse diff --git a/python/create_skill_tree_svg.py b/python/create_skill_tree_svg.py index 911a3ef..298fdab 100755 --- a/python/create_skill_tree_svg.py +++ b/python/create_skill_tree_svg.py @@ -39,9 +39,9 @@ def make_text_multiline(text: list, length1: int = 18, length2: int = 25) -> str def process_svg(template, data): - # Replace title and author + # Replace title and footer processed = template.replace("{{ title }}", data["title"]) - processed = processed.replace("{{ author }}", data["author"]) + processed = processed.replace("{{ footer }}", data["footer"]) displacement = (0, 9, 19, 29, 39, 49, 59, 69) for i in range(10): diff --git a/python/input.yml b/python/input.yml index b13caa8..bb73e84 100644 --- a/python/input.yml +++ b/python/input.yml @@ -1,6 +1,6 @@ --- title: Some Interesting Title -author: John Doe +footer: John Doe row: 0: - 0a diff --git a/python/skill_tree_template.svg.j2 b/python/skill_tree_template.svg.j2 index 04045ff..b3ca7c7 100644 --- a/python/skill_tree_template.svg.j2 +++ b/python/skill_tree_template.svg.j2 @@ -658,7 +658,7 @@ text#credits { CC BY-NC-SA 4.0 github.com/sjpiper145/MakerSkillTree