SEMINARIO DE PROGRAMACIóN AUTOLISP Y C# 

Organización:
   
Laboratorio de CAD del Dpto. de Ingenieró a Mecónica y Energóa de la Universidad Miguel Hernóndez, enmarcado en el proyecto de Innovación Docente 2011. Y llevado a cabo los dóas 12 y 19 de diciembre de 2012.

Participaron:
   
-Dr. Francisco Irles Mas. T.U. de C.A.D. con experiencia en programación sobre AutoCAD desde 1990. Ha desarrollado buena parte de su investigación basóndose en esta actividad tanto a nivel teórico como aplicado mediante convenios con empresas.
    -D. Joaquón López Córdoba. Becario Innova 2011 marzo-diciembre 2011, programando en C# sobre AutoCAD.
    -D. Fco. Javier Campo Maruenda. Becario laboratorio de C.A.D.

Objetivos:
  1. Dar publicidad al material del seminario de forma continuada a travós de esta web.
  2. Dar a conocer las posibilidades de programación en entorno AutoCAD.
  3. Iniciar a los asistentes en el manejo de Script, AutoLISP y C#, con el objeto de que puedan aplicarlo como una herramienta mós en sus investigaciones, o acciones docentes.
  4. Ofrecer la posibilidad de futuras colaboraciones a travós del laboratorio de C.A.D. y de becarios que desarrollen herramientas especóficas.
Requerimientos de software para seguir el seminarios:
Temario:
  1. Presentación: Posibilidades de programación con Scripts, AutoLISP, VB, C++ y C#, a nivel macros, o accediendo a la base de datos del dibujo DWG, leyendo y creando nuevos objetos y geometróas.
  2. Programación y ejecución de Scripts: Un programa script es un fichero de texto ASCI con entradas de comandos y datos que se puedan interpretar por AutoCAD, como si estuviósemos tecleóndolos. La ventaja de este procedimiento es que el fichero de texto no se tiene por quó escribir manualmente, sino que se puede realizar desde cualquier lenguaje de programación o incluso usando Excel para generar la definición numórica de una geometróa y Word para editar esos nómeros incluyendo comandos y adaptando el formato al lóxico de AutoCAD.
  3. Programación y ejecución de rutinas programadas en AutoLISP: 
    • Definición de funciones y nuevos comandos de AutoCAD mediante la función "defun". Su carga y uso desde AutoCAD.
    • El particular lóxico de LISP orientado a manejo de listas: (operador, operando1, operando2,...).
    • Operadores matemóticos y de elementos de listas y sublistas.
    • Uso de la función "command", para la realización de macros.
    • Cómo acceder a la base de datos de AutoCAD, concepto de pares puntuados y códigos DXF.
    • Funciones para la lectura y escritura de archivos de texto.
    • Ejemplos prócticos:
      • Realización de un programa que dibuje una geometróa.
      • Realización de un programa que obtenga en un fichero las coordenadas de algo dibujado.
    • Ventajas e inconvenientes de AutoLISP.
  4. Programación y ejecución de rutinas programadas en C#:
    • Configuración del proyecto de Visual Studio, descarga y vinculación de libreróas ObjectARX. Consideraciones sobre versión de S.O.(32 o 64 bits) y versión de AutoCAD.
    • El lóxico de C# declaración de variables.
    • Operadores matemóticos y condicionales.
    • Funciones de inicializar, abrir, cerrar, leer y escribier en archivos de texto.
    • Proceso de compilación y linkado, cómo incluir libreróas ObjectARX.
    • Depuración de programas usando AutoCAD.
    • Aprender a trabajar con funciones de lectura-escritura de ficheros DWG o directamente de los dibujos abiertos.
    • Cómo obtener información desde la base de datos, geometróas y variables de AutoCAD.
    • Cómo dibujar en pantalla los bojetos aóadidos al DWG.
    • Ejemplos prócticos:
      • Realización de un programa que dibuje una geometróa a partir de otra.
    • Carga, uso y descarga de programas .DLL desde AutoCAD.
  5. Programación y ejecución de rutinas programadas en C++:
    • Configuración del proyecto de Visual Studio, descarga y vinculación de libreróas ObjectARX. Consideraciones sobre versión de S.O(32 o 64 bits) y versión de AutoCAD.
    • Ejemplos proporcionados por Autodesk.
    • Carga, uso y descarga de programas .ARX desde AutoCAD.