Visual LISP, AutoLISP and General Customization
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Mleader lisp - Help please!!!

4 REPLIES 4
Reply
Message 1 of 5
iramos.israel
1477 Views, 4 Replies

Mleader lisp - Help please!!!

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)

4 REPLIES 4
Message 2 of 5
pbejse
in reply to: iramos.israel

(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

Message 3 of 5
iramos.israel
in reply to: pbejse

Thank you very much!

I really appreciate the help, please let me know if I can do anything to return the favor.

 

Israel Ramos

 

 

Message 4 of 5
pbejse
in reply to: iramos.israel


@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.

 


 

Message 5 of 5
iramos.israel
in reply to: pbejse

 

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)

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report

”Boost