Vous êtes sur la page 1sur 5

AutoLISP Leccin 2 - MEDIO AMBIENTE

AutoLISP
(Abril de 1999)
El entorno de AutoLISP se introduce cuando AutoCAD recibe un smbolo "(" en la lnea
de comandos. Cuando AutoCAD ve el parntesis de apertura, se ejecuta el intrprete de
AutoLISP. El intrprete entonces evala, en forma de lista, lo que est entre la apertura "("
smbolo y el cierre ")" smbolo.
Contenido
[hide]
1 Tipos de datos
2 errores
3 Caracteres especiales
4 El intrprete LISP
5 funciones de comando
6 bibliotecas Lisp
7 Ms Lecciones
Los tipos de datos
Hay tres tipos bsicos de datos en AutoLISP. Son funciones, smbolos y listas.
Funcin: es el primer elemento en cada lista. El resto de la lista y se utiliza como los
parmetros o argumentos de la funcin. Si el primer elemento de la lista no es una
funcin, usted recibir un mensaje de error que indica: "mal funcionamiento".
Smbolo: es lo que otros lenguajes de programacin llaman una variable, ya partir de
este momento cuando me refiero a una variable realmente estoy hablando de un smbolo.
Un smbolo en LISP embargo, puede ser mucho ms que slo un valor, como una
variable normal sostendra. Un smbolo puede contener una lista o una definicin de
funcin. Un smbolo tiene un valor fijado a ella. Si no tiene la unin que se dice que es
"nulo". Todos los smbolos deben fijarse a cero al terminar un programa o encontrar un
error.
Lista: es todo lo que no es un smbolo.
Errores
Si se produce un error durante la ejecucin de un programa AutoLISP, el intrprete
regresar un rastro de la funcin a partir de la funcin ms reciente y continua a la parte
superior del programa. Esto es til para depurar. Usted debe definir su propio gestor de
errores por lo que el usuario no tiene que ver esto y me pregunto qu est pasando.
Los caracteres especiales
Hay algunos personajes de AutoLISP, como cualquier lenguaje, que no se puede utilizar
en determinadas circunstancias.
Los nombres simblicos pueden contener cualquier secuencia de caracteres
imprimibles, excepto los siguientes:
(). '";
Ciertos caracteres terminan un nombre de smbolo o constante numrica, que son los
siguientes:
() '";
Un signo menos (-) signo puede ser utilizado para indicar nmeros enteros o reales
negativos.
El signo ms (+) es opcional cuando significando enteros positivos o reales.
Las cadenas literales se introducen entre comillas dobles (""). Dentro de citas
cadenas, el carcter de barra invertida (\) se puede usar para introducir caracteres de
control. Los caracteres de control son las siguientes:
\ \ Le da un carcter normal de barra invertida.
\ "Le da un carcter normal comillas dobles.
\ E da un carcter de escape.
N \ da un carcter de nueva lnea.
\ R da un carcter de retorno.
\ T Da el carcter de tabulacin.
\ Nnn da un personaje que es nnn es el cdigo octal.
El carcter de comilla simple se puede utilizar en lugar de la funcin de cita por ejemplo:
'Esto es equivalente a (Cita este)
Cada comentario en LISP debe comenzar con el carcter de punto y coma:
; Este es un comentario
Los comentarios sern discutidos en profundidad ms adelante en las lecciones.
El intrprete LISP
En el corazn de la intrprete de LISP es el evaluador. El evaluador toma una lnea de
cdigo ceceo, la evala y devuelve un resultado. Evaluacin sucede de la siguiente
manera:
Enteros, reales, cadenas, punteros de archivos y funciones evalan a s mismos.
Smbolos evalan como el valor de su actual unin.
Las listas se evaluaron de acuerdo con el primer elemento de la lista.
Si el primer elemento de la lista es una funcin de AutoLISP predefinido, los
elementos restantes se pasan a la funcin predefinida, y evaluados por la funcin.
Si el primer elemento de la lista se evala como una lista, la lista se supone que es
una definicin de funcin y la funcin se evala usando el resto de la lista como sus
argumentos.
Los enlaces actuales de funciones y variables se pueden recuperar en la lnea de
comandos mediante el carcter de exclamacin "!". Si el valor que se est recuperado es
una funcin de toda la lista de funciones se desplazar por la pantalla. Si el valor que se
est recuperando es una variable, se devolver el valor de la corriente de unin. Esto es
normalmente lo que buscas, al revisar la actual unin de un objeto. Cuando la
comprobacin de errores en el cdigo a veces es til ver que las variables se estn
ajustadas correctamente.
Las funciones de comando
Usted puede crear sus propias funciones de mando dentro de AutoLISP. La funcin
DEFUN se utiliza para crear funciones en AutoLISP. Si al crear la funcin que los define
as:
(Defun c: function_name (/)
(Hacer algo)
)
La funcin puede ser llamada dentro de AutoCAD sin tener que poner parntesis
alrededor. La "c:" no tiene nada que ver con las unidades de disco; simplemente dice
LISP que la funcin debe ser definida como una funcin de lnea de comandos.
Bibliotecas Lisp
Usted puede crear su propia biblioteca de rutinas lisp utilizando el archivo ACAD.LSP. Si
sta no existe en su sistema puede crear uno y aadir sus rutinas a la misma. Si ya
existe, las rutinas pueden ser agregados al final para que se carguen cada vez que entras
AutoCAD.
Si usted tiene ciertas cosas que hace cada vez que entra en un dibujo, se pueden aadir
al archivo ACAD.LSP y automticamente se ejecuta cada vez que se carga el archivo
ACAD.LSP. Para ello se debe definir una funcin que se llama "s :: startup". La funcin s
:: inicio se ejecuta cada vez que se carga ACAD.LSP.
Cualquier funcin lisp puede cargar escribiendo (load "lispname"). El comando debe
estar dentro de parntesis, y la extensin ". Lsp" no debe ser aadido. Si usted encuentra
sus programas Lisp no se carga, asegrese de que ha seguido las reglas anteriores, a
continuacin, intente lo que viene despus.
AutoLISP buscar en la ruta de bsqueda de archivo de soporte que se establece en el
comando CONFIG. Si no encuentra el programa de la ruta de bsqueda no se cargar y
le indicar que no pudo encontrarlo. Se mostrar una lista de todos los lugares que
pareca. Si el archivo no est en un camino de bsqueda, y no se puede poner all, usted
todava puede cargarlo dndole AutoLISP toda la ruta de acceso al archivo de la carga del
sistema, ejemplo:
(Load "c :/ acad / Dave / myprog")
Nota us barras inclinadas en lugar de barras invertidas. AutoLISP no interpretar las
barras inclinadas invertidas correctamente si slo vas a usar una (1). Recuerde que
desde principios de la leccin de la barra invertida es un carcter especial en AutoLISP y
no se puede utilizar en el uso literal. Asimismo, recuerda que puede ser utilizado
literalmente si pones dos (2) en una fila. De esta manera:
(Load "c: \ \ acad \ \ Dave \ \ myprog")

Vous aimerez peut-être aussi