if anyone can or want to help, I need help removing the "Invalid Input" message. The routine works its just that message.
Thanks
Israel Ramos
(defun c:KeyLeader ()
;;=======================
(setvar "CMDECHO" 0)
;(setvar "ATTDIA" 0)
;(setvar "ATTREQ" 0)
;;=======================
(setq |get:CLAYER| (getvar "CLAYER"))
(setq *error* *KeyNote_error*)
(command "_.LAYER" "M" "E-TEXT" "C" "7" "" "")
;-LAYER;M;E-TEXT;C;7;;;
(setq |TagNo| (getstring "\nSpecify Tag No. :"))
;;;;;;;;;(setq |pt1| (getpoint "\nSpecify point: "))
(setvar "NOMUTT" 1)
;;;;;;;;;(command "_.MLEADER" pause pause |TagNo|)
(command "_.MLEADER" |pt1|)
;;;;;;;;;(command "_.MLEADER")
;;;;;;(while (= (getvar "CMDACTIVE") 1) (command pause |TagNo|))
(while (eq (logand 1 (getvar 'CMDACTIVE)) 1) (command pause |TagNo|))
(setvar "NOMUTT" 0)
(princ)
(setvar "CLAYER" |get:CLAYER|)
(setvar "CMDECHO" 1)
(princ)
)
;;========================================================================
(defun c:TableSearch->Block ()
(setq |BlockName| "SL_DimText")
(if (=(null(tblsearch "BLOCK" "HexKey"))T)
(progn
(command "_.INSERT" (strcat "C:\\Dropbox\\SL_Acad2012\\Templates\\" |BlockName| ".dwg") "0,0" ".01" ".01" "0")
(setq |Erase:Blk| (entlast))
(command "ERASE" |Erase:Blk| "")
;(command "_.PURGE" "B" |BlockName| "N")
)
)
(princ)
)
;;========================================================================
(defun c:HexArrow ()
(c:TableSearch->Block)
(setvar "CMLEADERSTYLE" "HexArrow")
(c:KeyLeader)
(princ)
)
;;========================================================================
(defun *KeyNote_error* (msg)
(setvar "CLAYER" |get:CLAYER|)
(setvar "CMDECHO" 1)
(princ)
)
(princ)
(setvar "ATTREQ" 1)
(setvar "ATTDIA" 0)
Variable |pt1| not defined, you can use
(command "_.MLEADER" (getpoint) |TagNo|)
or prompt for |pt1|
(setq |TagNo| (getstring "\nSpecify Tag No. :")
|pt1| (getpoint "\nPick point"))
(command "_.MLEADER" |pt1| |TagNo|)
no need for this
(while (eq (logand 1 (getvar 'CMDACTIVE)) 1) (command pause |TagNo|))
Unless you are planning to loop the command
(setq |TagNo| (getstring "\nSpecify Tag No. :")
(while (setq |pt1| (getpoint "\nSpecify point: "))
(command "_.MLEADER" |pt1| |TagNo| pause)
(setq |TagNo| (itoa
(1+ (atoi |TagNo|)))))
HTH
Thank you very much!
I really appreciate the help, please let me know if I can do anything to return the favor.
Israel Ramos
@iramos.israel wrote:Thank you very much!
I really appreciate the help, please let me know if I can do anything to return the favor.
Israel Ramos
Glad i could help Israel If there's anything else you need dont hesitate to ask.
Cheers.
This is the final code for the Mleader lisp. Thanks to those who helped me get it together.
Israel Ramos
CAD/BIM Operator
;;========================================================================
;
;;========================================================================
(defun c:HexArrow ()
(c:TableSearch->Block)
(setvar 'CMLEADERSTYLE "HexArrow")
(c:Arrow_MLeader)
(princ)
)
;;========================================================================
(defun c:MchArrow ()
(c:TableSearch->Block)
(setvar'CMLEADERSTYLE "MchArrow")
(c:Arrow_MLeader)
(princ)
)
;;========================================================================
(defun c:EqpArrow ()
(c:TableSearch->Block)
(setvar 'CMLEADERSTYLE "EqpArrow")
(c:Arrow_MLeader)
(princ)
)
;;========================================================================
(defun c:TextArrow ()
(c:TableSearch->Block)
(setvar 'CMLEADERSTYLE "TxtArrow")
(c:Arrow_MLeader)
(princ)
)
;;========================================================================
;;
;;========================================================================
(defun c:HexTag ()
(c:TableSearch->Block)
(setvar 'CMLEADERSTYLE "HexTag")
(c:Tag_MLeader)
(princ)
)
;;========================================================================
(defun c:MchTag ()
(c:TableSearch->Block)
(setvar 'CMLEADERSTYLE "MchTag")
(c:Tag_MLeader)
(princ)
)
;;========================================================================
(defun c:EqpTag ()
(c:TableSearch->Block)
(setvar 'CMLEADERSTYLE "EqpTag")
(c:Tag_MLeader)
(princ)
)
;;========================================================================
;;
;;========================================================================
(defun c:HexLoop ()
(c:TableSearch->Block)
(setq |PFX| "Hex")
(c:Loop_MLeader)
(princ)
)
;;========================================================================
(defun c:MchLoop ()
(c:TableSearch->Block)
(setq |PFX| "Mch")
(c:Loop_MLeader)
(princ)
)
;;========================================================================
(defun c:EqpLoop ()
(c:TableSearch->Block)
(setq |PFX| "Eqp")
(c:Loop_MLeader)
(princ)
)
;;========================================================================
(defun c:TextLoop ()
(c:TableSearch->Block)
(setq |PFX| "Txt")
(c:Loop_MLeader)
(princ)
)
;;========================================================================
;;
;;========================================================================
;;========================================================================
;;
;;========================================================================
(defun c:Tag_MLeader ()
(setvar 'CMDECHO 0)
(setvar 'ATTREQ 1)
(setvar 'ATTDIA 0)
(setq |clayer| (getvar 'CLAYER))
(setq |orthomode| (getvar 'ORTHOMODE))
(setvar 'ORTHOMODE 1)
(setq *error* *KeyNote_error*)
(command "_.LAYER" "M" "E-KEYNOTE" "C" "7" "" "LW" "0.35" "" "")
(setq |TagNo| (getstring "\nSpecify Tag No. :"))
(while |TagNo|
(command "_.MLEADER" "H" pause |TagNo|)
)
(princ)
)
;;========================================================================
;;
;;========================================================================
(defun c:Arrow_MLeader ()
(setvar 'CMDECHO 0)
(setvar 'ATTREQ 1)
(setvar 'ATTDIA 0)
(setq |clayer| (getvar 'CLAYER))
(setq |orthomode| (getvar 'ORTHOMODE))
(setvar 'ORTHOMODE 1)
(setq *error* *KeyNote_error*)
(command "_.LAYER" "M" "E-KEYNOTE" "C" "7" "" "LW" "0.35" "" "")
(setq |TagNo| (getstring "\nSpecify Tag No. :"))
(while
(setq |pt1| (getpoint "\nSpecify point: "))
(command "_.MLEADER" "H" |pt1| (progn (initget 32)(getpoint |pt1|)) pause |TagNo|)
)
(princ)
)
;;========================================================================
;;
;;========================================================================
(defun c:Loop_MLeader ()
(setvar 'CMDECHO 0)
(setvar 'ATTREQ 1)
(setvar 'ATTDIA 0)
(setq |clayer| (getvar 'CLAYER))
(setq |orthomode| (getvar 'ORTHOMODE))
(setvar 'ORTHOMODE 1)
(setq *error* *KeyNote_error*)
(command "_.LAYER" "M" "E-KEYNOTE" "C" "7" "" "LW" "0.35" "" "")
(setq |TagNo| (getstring "\nSpecify Text. :"))
;;========================================================================
(while
(setq |pt1| (getpoint "\nSpecify Start Point: "))
(initget 32)
(setq |pt2| (getpoint |pt1| "\nSpecify Next Point: "))
(command "_.LINE" |pt1| |pt2| "")
(setq |Line| (entlast))
(initget 32)
(setq |pt3| (getpoint |pt2| "\nSpecify Loop Direction: "))
(command "_.ERASE" |Line| "")
(setq |Angle| (*(angle |pt1| |pt3|) (/ 180 pi)))
(progn
(setq |X1| (car |pt1|))
(setq |Y1| (cadr |pt1|))
(setq |X2| (car |pt2|))
(setq |Y2| (cadr |pt2|))
(setq |pt3| (list |X1| |Y2|))
)
;;========================================================================
(cond
((and(> |Angle| 0)(<= |Angle| 90)) (setq |SFX| "Loop2"))
((and(> |Angle| 90)(<= |Angle| 180)) (setq |SFX| "Loop1"))
((and(> |Angle| 180)(<= |Angle| 270)) (setq |SFX| "Loop2"))
((and(>= |Angle| 270)(< |Angle| 360)) (setq |SFX| "Loop1"))
)
(setvar 'CMLEADERSTYLE (strcat |PFX| |SFX|))
;;========================================================================
(command "_.MLEADER" "H" |pt1| |pt2| pause |TagNo|)
)
;;========================================================================
(princ)
)
;;========================================================================
;;
;;========================================================================
(defun c:TableSearch->Block ()
(setvar 'CMDECHO 0)
(setq |BlockName| "SL_DimText")
(if (=(null(tblsearch "BLOCK" "HexKey"))T)
(progn
(command "_.INSERT" (strcat "X:\\SL_Acad2013\\cuix\\05-Symbols\\" |BlockName| ".dwg") "0,0" ".01" ".01" "0")
(setq |Erase:Blk| (entlast))
(command "ERASE" |Erase:Blk| "")
(command "_.PURGE" "B" |BlockName| "N")
)
)
(if (=(null(tblsearch "BLOCK" "EqpKey"))T)
(progn
(command "_.INSERT" (strcat "X:\\SL_Acad2013\\cuix\\05-Symbols\\" |BlockName| ".dwg") "0,0" ".01" ".01" "0")
(setq |Erase:Blk| (entlast))
(command "ERASE" |Erase:Blk| "")
(command "_.PURGE" "B" |BlockName| "N")
)
)
(if (=(null(tblsearch "BLOCK" "MchKey1"))T)
(progn
(command "_.INSERT" (strcat "X:\\SL_Acad2013\\cuix\\05-Symbols\\" |BlockName| ".dwg") "0,0" ".01" ".01" "0")
(setq |Erase:Blk| (entlast))
(command "ERASE" |Erase:Blk| "")
(command "_.PURGE" "B" |BlockName| "N")
)
)
(princ)
)
;;========================================================================
;;
;;========================================================================
(defun *KeyNote_error* (msg)
(setq |TagType| nil)
(setq |TagNo| nil)
(setvar 'CLAYER |clayer|)
(setvar 'ORTHOMODE |orthomode|)
(setvar 'NOMUTT 0)
(setvar 'ATTREQ 1)
(setvar 'ATTDIA 1)
(setvar 'CMDECHO 1)
(princ)
)
;;========================================================================
;;
;;========================================================================
(princ)