Hi there!
I'm new in the community, recently I was robbed and I lost all my lisp documentation.
So I've been doing some research to get some lisp routines and I find this:
(defun C:CEE (/ trap1 temperr oldsnap copy_objects) ; COPY from Endpoint to Endpoint
(defun trap1 (errmsg)
(command "_.undo" "_end") ; undo end
(setvar "osmode" oldsnap) ; restore variables
(setvar "cmdecho" 1) ; enable cmdecho
(setq *error* temperr) ; restore old error handler
(prompt "\nResetting System Variables ") ; inform user
(princ)
); defun
(setq temperr *error*) ; save error handler
(setq *error* trap1) ; assign error handler to trap1
(setq oldsnap (getvar "osmode"))
(setvar "cmdecho" 0) ; disable command echo
(setvar "osmode" 1) ; set ENDPOINT osnap
(command "_.undo" "_begin") ;undo begin
(setvar "cmdecho" 1) ; enable cmdecho
(if (setq copy_objects (ssget))
(progn
(command "_.copy" "si" copy_objects "_m")
(while (/= (getvar "cmdactive") 0)
(command pause)
(setvar "osmode" 1) ; set ENDPOINT osnap
); while
); progn
); if
(setvar "cmdecho" 0) ; disable cmdecho
(trap1 "done")
)
The routine works ok, but, my problem is that, when I pick any point on the screen, the object selected it's been posted on that point.
The objective of the routine (which I did modify from the original one), is to avoid mistakes caused for other snaps or simple sloppy fingers.
So, my question is if any body can help me to modify it in a way that only can copy from end point to end point.
I already tried with something like this: "(command "COPY" PAUSE "" "end" PAUSE "end" PAUSE)", but it just doesn't feel right.
Thank you in advance for your help