AUTOLISP: programita coordenadas POR e Y.

Tengo una preguntilla... Quisiera hacer un pequeño programita con autolisp... Te explico a ver si puedes echarme una mano. Se trataría de crear una instrucción que: seleccionadno un punto, me hiciera un recuadro con una linea de directriz hasta el punto, y dentro de este recuadro me diga la coordenada POR e Y que le pertenece.

1 Respuesta

Respuesta
2
Bueno aquí realize una rutina simple que te entrega la coordenada por e y de un punto seleecionado en la pantalla, te lo pongo acá ya que es cortito, cualquiecosa mandame un email a [email protected]...
Espero te sirva... cópialo y pégalo en el bloq que notas y guardalo con el nombre que quieras pero con extensión *. Lsp...
(defun punto (/ )
(Setq pm (getpoint "\nSeleccione un punto en la pantalla: "))
(Setq ang 0)
(Setq pm2 (polar pm (+ ang (/ PI 2)) 20))
(Setq x (car pm))
(Setq y (cadr pm))
(setq coordenada (strcat (rtos x 2 3) "," (rtos y 2 3)))
(Command "leader" pm pm2 "a" coordenada "")
)
(defun c:coor (/ )
(Setvar "cmdecho" 0)
(Punto)
(Setvar "cmdecho" 1)(prin1)
)
(Prompt "\nNuevo comando COOR definido...")
Muchas gracias por cnt tan rapido.Me podirias especificar cual nombre es el de la instrucción, o sea, ¿qué tengo que teclear para ejecutar la instrucción dentro de AutoCAD_2000? Muchas gracias SpeedCAD!
Bueno como ya sabes la rutina se carga con el comando APPLOAD, luego de que se cargue la rutina, en la linea de comando de AutoCAD saldrá un mensaje que dirá: Nuevo comando COOR definido..., por lo tanto después que cargues la rutina debes teclear COOR, recuerda que debes copiar todo esto:
(defun punto (/ )
(Setq pm (getpoint "\nSeleccione un punto en la pantalla: "))
(Setq ang 0)
(Setq pm2 (polar pm (+ ang (/ PI 2)) 20))
(Setq x (car pm))
(Setq y (cadr pm))
(setq coordenada (strcat (rtos x 2 3) "," (rtos y 2 3)))
(Command "leader" pm pm2 "a" coordenada "")
)
(defun c:coor (/ )
(Setvar "cmdecho" 0)
(Punto)
(Setvar "cmdecho" 1)(prin1)
)
(Prompt "\nNuevo comando COOR definido...")

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas