Professional Documents
Culture Documents
Donde:
DEFUN
Smbolo
Es el nombre de la funcin.
Lista de
Parmetr
os
Cuerpo
de la
funcin
Ejemplo:
Donde:
SETQ
Smbolo
Expresi
n
Ejercicios:
1. Dibujar una lnea, dando valores fijos de los puntos, es decir los
siguientes puntos:
Lnea 1
L1 : P1 P 2 , P1=( 1, 1 ) y P2=( 5, 10 )
Lnea 2
Lnea 3
L3 : P1 P2 , P1=( 0, 0 ) y P 2=( 0, 20 )
Lnea 4
Desarrollo:
El cdigo necesario para poder dibujar las lneas que se nos solicita
en el ejercicio se podr implementar de la siguiente manera:
Con Listas:
Pero vemos que los puntos que nosotros hemos ingresado estn en
coordenadas absolutas, pero si quisiramos que los puntos estn
referidos con coordenadas relativas con respecto a un punto base nos
convendra trabajar de la segunda manera es decir los parmetros del
comando deben estar en forma de cadena de texto, as podremos
ingresar e indicar al AutoCAD que queremos que el punto este en
coordenadas relativas, veamos el ejemplo anterior:
Aqu estamos indicando que el siguiente punto
con respecto al punto base
absoluto
( 0 0)
( 11 )
( 5 10 )
es referido
2.
EL RETURN ()
Es el equivalente a un ENTER en algunos comandos pero no necesariamente
significa eso pues hay que saber en qu comandos trabaja como pulsar
ENTER y en que otros no. Algunos de estos ejemplos son los comandos TEXT
CIRCLE estos comandos no necesitan un RETURN de finalizacin de
comando pues solo necesitan ingreso de datos por ejemplo para dibujar una
circunferencia:
Comando: CIRCLE
1ro nos pide: ingresar un centro para la circunferencia y luego pulsamos
ENTER.
2do nos pide: ingresar un radio para la circunferencia y luego pulsamos
ENTER.
Termina el comando no es necesario hacer un ENTER de salida para
terminar el comando, pero que pasa si pulsamos un ENTER ms lo que
entiende el AutoCAD al hacer esto es que nosotros estamos solicitando el
ultimo comando ejecutado o solicitado en el PROMPT del AutoCAD es decir
en este caso se volver a ejecutar el comando CIRCLE esto se puede
entender mejor con el siguiente ejemplo:
Primero dibuje una POLILINEA con el comando PLINE luego ejecute el
siguiente cdigo:
((command circle 10,10 2 ) (PRINT HOLA) ) Qu paso? Por qu
paso esto?
Lo que paso es que se volvi a ejecutar el comando PLINE (el ltimo
comando ejecutado en el PROMPT del AutoCAD) y no la siguiente expresin
que queramos que se ejecute en este caso que imprima la palabra HOLA,
esto paso pues porque el comando CIRCLE solo necesita los datos
solicitados por el comando y termina pero en el cdigo nosotros
introducimos un RETURN o ENTER que ya no es necesario para el comando
entonces AutoCAD entiende que este RETURN () es un ENTER que solicita
el ultimo comando ejecutado en el PROMPT del AutoCAD por lo que vuelve a
ejecutar el comando PLINE pues este era el ltimo comando del PROMPT
esto provoca o fuerza a salir al AutoCAD del cdigo Lisp por lo que ya no
ejecutara la siguiente expresin pues esta expresin se vuelve un
parmetro del comando y evidentemente no reconocer este parmetro
arrojndonos el mensaje ; error: no function definition: nil por lo que se
pierde la expresin y volver a solicitar que se ingrese un parmetro
correcto para el comando ejecutado. Explicado esto a la hora de programar
un cdigo hay que tener cuidado de donde utilizar el RETURN () pues nos
puede llevar a errores no deseados y provocar que el programa no trabaje
bien.
El OBJECT SNAP es la funcin que nos permite identificar puntos claves pero
cuando interacta con el LISP muchas veces debido a la precisin del SNAP
los dibujos que nosotros queremos que nuestro cdigo en LISP los dibuje en
la pantalla del AutoCAD no necesariamente resultan lo que queremos por
Y para que no queden dudas cambiemos de lugar al filtro que har que el
resultado se verdadero