CommunityImagengithub.com

technical-drawing

Genera dibujos técnicos normalizados (ISO/DIN, también ASME en tercer ángulo en inglés) como PDF/SVG/DXF vectoriales a partir de modelos paramétricos build123d o archivos STEP – planos de pieza, conjunto y soldadura con secciones, vistas detalle/media/rotas, acotación, tolerancias ISO 286, tablas de ajustes, textura superficial, tolerancias geométricas (GD&T) y referencias, roscas, símbolos de soldadura, tablas de engranajes, bloque de título y lista de piezas, con verificación automática de colisiones e incoherencias.

¿Qué es technical-drawing?

Este skill de agente AI está diseñado para generar dibujos técnicos profesionales y normalizados para fabricación, directamente a partir de modelos paramétricos build123d o archivos STEP. Es compatible con las normas ISO/DIN (proyección en primer ángulo) y ASME (tercer ángulo, en inglés). El flujo de trabajo comienza con la aclaración de la función de la pieza, el modelo paramétrico, la verificación de interferencias en el ensamblaje, y finalmente la escritura de una función Python por lámina que define vistas, cotas, tolerancias, símbolos y el bloque de título. La salida incluye PDF vectorial (por lámina y fusionado), DXF, SVG y STP. Una verificación automática de colisiones e incoherencias se ejecuta en cada guardado, pero la revisión final del PNG es responsabilidad del usuario para validar la corrección del concepto de acotación y toleranciado. El skill también puede procesar un archivo STEP directamente para una generación rápida de vistas básicas, requiriendo luego la adición manual de cotas funcionales y tolerancias. Está pensado para ingenieros, diseñadores mecánicos y fabricantes que necesiten planos de fabricación listos para taller a partir de modelos 3D, evitando el dibujo manual y garantizando la coherencia con el modelo.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Emirhan-1111/technical-drawing/tree/HEAD

Installed? Explore more Imagen skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Dibujos técnicos

Los dibujos se generan, no se dibujan a mano: un modelo paramétrico build123d (o un archivo STEP) es la fuente única de verdad; scripts/drawlib.py deriva las vistas a partir de él (eliminación de líneas ocultas, seccionado, sombreado) y añade las anotaciones que un taller necesita. Cada guardado ejecuta una verificación automática de la lámina. El resultado es un PDF vectorial por lámina (opcionalmente DXF/SVG) más una previsualización PNG que debes revisar antes de considerar algo terminado.

Por qué esta vía: las vistas nunca pueden discrepar del modelo, un parámetro modificado regenera cada lámina y el mismo modelo proporciona archivos STEP y una comprobación de interferencias de forma gratuita.

Lo que debe lograr un buen dibujo

Un dibujo es un contrato con la persona que fabrica e inspecciona la pieza. Alguien que nunca haya visto el proyecto debe poder fabricarla solo con la lámina. Eso lo decide todo a continuación: acota lo que la función necesita, tolera solo lo que importa y explica cómo debe ser cada superficie funcional. Una lámina con cada borde acotado pero sin ajustes, rugosidad ni tolerancias geométricas no es fabricable en el sentido que entienden los examinadores y los talleres.

Elige la ruta

  • El usuario tiene un archivo STEP y quiere un dibujo rápido: ejecuta python scripts/step2drawing.py part.step [--section] [--lang en --projection third] [--units in] [--material ...] [--density ...] [--dxf]. Proporciona vistas, líneas ocultas, líneas de centro, dimensiones generales, bloque de título y la verificación. Luego indica claramente que aún deben añadirse las dimensiones funcionales, ajustes, tolerancias y textura superficial, y ofrece añadirlos: auto_drawing() en el mismo módulo devuelve (sheet, views, issues) con out=None, por lo que puedes seguir anotando la lámina en Python (--up y para exportaciones con Y hacia arriba).
  • Cualquier cosa que deba fabricarse a partir de: modela la(s) pieza(s) y escribe la lámina en Python (flujo de trabajo a continuación). La entrada STEP aún puede ser el modelo: D.load_step(path).

Flujo de trabajo

  1. Aclarar primero la función. Para cada pieza pregunta: ¿qué superficies acoplan con qué, qué debe ser coaxial/perpendicular/plano para que la máquina funcione, qué dimensiones provienen de piezas compradas (rodamientos, pasadores, tornillos)? Estos se convierten en referencias, ajustes y tolerancias. Si el usuario tiene un informe, lista de materiales o dibujo anterior, léelo y conserva sus números; marca cada valor que inventes como tu suposición e informa al usuario. Pregunta en qué idioma y método de proyección debe estar el dibujo (por defecto: alemán, primer ángulo; Norteamérica: inglés, tercer ángulo) y si hay un bloque de título de empresa.
  2. Modelar las piezas en un módulo, cada pieza en su posición de fabricación, todas las dimensiones como parámetros con nombre. Piezas torneadas: revolve un semiperfil (x, r); piezas prismáticas: cajas menos sólidos de taladro, o extrusión de un perfil (sin costuras fusionadas). Modela las roscas solo como agujeros de núcleo. Coloca las piezas compradas/estándar como sólidos simples para que el ensamblaje y la comprobación de interferencias estén completos.
  3. Verificar el ensamblaje antes de dibujar: volumen (a & b).volume por pares sobre todas las piezas; cada superposición debe ser cero o intencionada (enganche de rosca, ajuste a presión). Corrige el modelo, no el dibujo.
  4. Escribir una función por lámina, copiando el ejemplo más cercano en examples/: flanged_bush.py (pieza torneada, plantilla básica), bearing_bracket.py (ensamblaje, lista de piezas), stepped_shaft.py (vista rota, detalle, sección suprimida, rosca), flange.py (semisección, círculo de paso, tolerancia de posición), spur_gear.py (tabla de datos de engranaje), weldment.py (símbolos de soldadura), milled_block.py (inglés, tercer ángulo, bloque de título de empresa). Empieza solo con geometría, renderiza, mira, luego añade anotaciones en capas: líneas de centro -> dimensiones -> referencias y tolerancias -> textura superficial -> notas, tablas -> bloque de título.
  5. Renderizar, leer la verificación, mirar cada lámina. Sheet.save(pdf, png=...) imprime el informe de verificación y escribe <png>_check.png con cada hallazgo enmarcado. Corrige cada error y advertencia (mueve la anotación, cambia desplazamientos, tshift, tpos, rodillas de las líneas guía). Luego lee el PNG tú mismo: la verificación encuentra colisiones e incoherencias, no un concepto de acotación incorrecto o una flecha apuntando al borde equivocado. Recorta regiones densas para ampliar. Nunca informes una lámina como terminada que no hayas visto.
  6. Entregar: un PDF por lámina nombrado por número de dibujo, un conjunto fusionado (pypdf PdfWriter.append), DXF si el usuario edita en CAD, STEP por pieza y para el ensamblaje (export_step). Indica claramente qué no está dibujado aún y qué valores son suposiciones.

Configuración única por máquina: pip install -r requirements.txt. La fuente ISO 3098 osifont no está incluida; se encuentra en $DRAWLIB_FONT, scripts/fonts/, ~/.drawlib/fonts/ o en las fuentes del sistema (ver scripts/fonts/README.md). Sin ella, la biblioteca usa DejaVu Sans: misma geometría, rotulación no ISO 3098; la verificación mide la fuente que esté activa.

Uso de drawlib

Lee references/drawlib_api.md antes de escribir la primera lámina: cada llamada con sus convenciones de coordenadas, recetas y errores comunes. Los esenciales:

  • `S = D.Sheet(

Skills relacionados