AutoLISP es un poderoso lenguaje de programación integrado en AutoCAD. Es un subconjunto del LISP, un lenguaje de programación desarrollado inicialmente en los años cincuenta del pasado siglo. Además de los conceptos del lenguaje original añade algunas funciones especialmente diseñadas para la manipulación de dibujos de AutoCAD. Es un verdadero lenguaje de programación, no es una macro o mera secuencia de acciones dentro de la aplicación.
AutoLISP permite la manipulación de las entidades y variables de
un dibujo de AutoCAD mediante sencillas rutinas de ejecución automática, así
como la extracción de datos del dibujo y su exportación para su posterior
tratamiento y análisis con otros programas.
Normalmente, se usa como lenguaje evaluado, es decir, sin
compilar, cada instrucción del lenguaje debe
ser leída por el evaluador y convertida a lenguaje máquina. La primera vez que
el evaluador de AutoLISP encuentra un bloque de código, lo evalúa y convierte a
código máquina, si a lo largo de la ejecución del programa el bloque de
instrucciones se repite, el evaluador no necesita volver a convertirlo, “recuerda”
su valor y lo ejecuta simplemente, sin usar tiempo adicional en su conversión.
Es un lenguaje orientado a la manipulación de símbolos, lo que lo
hace ideal para la programación de sistemas CAD. Un símbolo es cualquier representación
de la realidad mediante una convención previamente establecida. Tanto los
símbolos como los datos y el mismo programa se integran en listas que se
colocan entre paréntesis. De hecho, AutoLISP es un lenguaje extremadamente eficiente para
encontrar símbolos en una lista. Su nombre proviene de LISt Processing
(procesado de listas) y, en realidad, cualquier programa de AutoLISP es una
lista en sí mismo. Como tal, cualquier programa de LISP comienza con la
apertura de un paréntesis y finaliza con su cierre.
En la mayoría de los lenguajes de programación la asignación de
información se hace mediante signos matemáticos, por ejemplo con el carácter igual
(=). En LISP, por el contrario, la forma de asignar valor a una variable es
mediante la instrucción “setq”. Mediante esta sencilla instrucción se puede
transferir la información de una a otra lista de las que componen el programa.
Los símbolos no tienen porqué ser palabras, pueden ser cualquier
cosa a la que se le pueda asignar un significado. Una representación gráfica, por
ejemplo, puede ser un símbolo, es decir, una abstracción de la realidad
susceptible de ser interpretada por el programa. En ese sentido, el símbolo es
el “sujeto” portador del valor de la realidad representada.
En AutoCAD los símbolos gráficos complejos, por ejemplo, la
representación de una bañera, están formados por entidades simples: líneas,
arcos, elipses... coordinados y dispuestos como elementos constitutivos de la
representación inteligible. Estos elementos simples son los “ladrillos” constituyentes
de una nueva representación, dotada a su vez de un significado, que el programa
puede entender y usar como conjunto. Por ejemplo, el bloque de una mesa no
tiene que ser definido y establecido una y otra vez desde el principio para
constituir un comedor. Basta con repetirlo como conjunto (bloque) para obtener
el resultado apetecido.
Los símbolos pueden contener información adicional acerca de
cualquiera de las cualidades del objeto que representan: color, material,
calidad, precio… de forma que un símbolo de AutoCAD puede contener toda la
información necesaria para designar unívocamente la realidad representada. Y lo
que es mejor, toda esa información se puede extraer del dibujo mediante el uso
de AutoLISP, bien para su uso con el propio programa, como para su tratamiento
por programas distintos: procesadores de texto, hojas de cálculo, programas de
mediciones y presupuestos, etc. Con ello, el uso de AutoLISP podría permitirnos,
desde redactar la memoria de un proyecto, hasta hacer su valoración completa,
nada más usando la información contenida en los dibujos de AutoCAD.
AutoLISP permite abordar desde programas muy sencillos -por
ejemplo que permitan cambiar las propiedades de las entidades de un dibujo o
contar sus concurrencias- hasta programas de enorme complejidad y
sofisticación, como el cálculo de las tuberías de una instalación de
calefacción o la evaluación de las pérdidas caloríficas de un edificio.
AutoCAD es un programa muy versátil, su
propósito es generalista, permite cualquier tipo de diseño, pero no está
concebido para un uso en particular. Se puede usar para diseño arquitectónico o
para representación topográfica, para diseño industrial o para representación
de circuitos electrónicos. Y lo que es una ventaja por su arquitectura flexible,
puede ser una desventaja por su falta de especificidad. Afortunadamente AutoCAD
puede ser configurado de forma que se adapte al propósito con que cada uno lo
use y además, su arquitectura abierta le permite ser utilizado para multitud de
operaciones que en otros sistemas CAD deben realizarse mediante programas
externos. Con AutoLISP podrás implementar muchas de esas potencialidades, desde crear tus propias órdenes en línea que sustituyan a rutinas frecuentes, hasta
configurar entornos de trabajo y verdaderos programas de procesamiento y
cálculo integrados en el dibujo.
No hay comentarios:
Publicar un comentario