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

ATTRIBUTE JUSTIFY AND MOVE

2 REPLIES 2
Reply
Message 1 of 3
msclout72
497 Views, 2 Replies

ATTRIBUTE JUSTIFY AND MOVE

;ANY THOUGHTS ..HAVING PROBLEM WITH JUSTIFYING ATTRIBUTE AND MOVING IT...WHAT IS GONG ON?

(defun attributeSearch()
(setq TagSearch (entnext BlkName))
);;defun


(defun c:AM()
(setq blk (ssget "X" '((2 . "MYBLOCKNAME"))))
(setq blkQty (sslength blk))
(setq index 0)


(while (/= index blkqty)
(setq BlkName (ssname blk index))

;UPDATE ANGLE
(attributeSearch)
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
(while (/= FindTag "T1")
(setq TagSearch (entnext Tagsearch))
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
);;while

(setq old (assoc 50 (entget Tagsearch)))
(setq new (cons 50 0))
` (setq NewList (subst new old (entget Tagsearch)))
(entmod NewList)
(entupd (cdr(assoc -1 (entget TagSearch))))



;UPDATE JUSTIFICATION LEFT
(attributeSearch)
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
(while (/= FindTag "T1")
(setq TagSearch (entnext Tagsearch))
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
);;while

(setq old (assoc 72 (entget Tagsearch)))
(setq new (cons 72 0))
` (setq NewList (subst new old (entget Tagsearch)))
(entmod NewList)
(entupd (cdr(assoc -1 (entget TagSearch))))


;UPDATE JUSTIFICATION MIDDLE LEFT
(attributeSearch)
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
(while (/= FindTag "T1")
(setq TagSearch (entnext Tagsearch))
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
);;while

(setq old (assoc 74 (entget Tagsearch)))
(setq new (cons 74 2))
` (setq NewList (subst new old (entget Tagsearch)))
(entmod NewList)
(entupd (cdr(assoc -1 (entget TagSearch))))


;MOVE ATTRIBUTE
(attributeSearch)
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
(while (/= FindTag "T1")
(setq TagSearch (entnext Tagsearch))
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
);;while

(setq oldx (car (cdr (assoc 10 (entget Tagsearch)))));x value
(setq oldy (cadr (cdr (assoc 10 (entget Tagsearch)))));y value
(setq xmove (+ +5.1250 oldx))
(setq ymove (+ -5.1250 oldy))
(SETQ NEW (cons 10 (list 10 xmove ymove 0.0)))

;(setq NewList (subst (list 10 xmove ymove 0.0) old (entget Tagsearch)));NEED FIX THIIS LINE??
(entmod NewList)
(entupd (cdr(assoc -1 (entget TagSearch))))


(setq index (+ index 1))

);;while
);;defun Edited by: msclout72 on Oct 5, 2009 9:04 AM
2 REPLIES 2
Message 2 of 3
st0neface
in reply to: msclout72

Hi

>>>(SETQ NEW (cons 10 (list 10 xmove ymove 0.0)))
>>>(setq NewList (subst (list 10 xmove ymove 0.0) old (entget Tagsearch)))


use
(cons 10 (list xmove ymove 0.0))
to create the correct dotted pair
Message 3 of 3
msclout72
in reply to: msclout72

;;THANKS FOR THE HAND..
;;I also had to change justification around middle left 1st then left


(defun attributeSearch()
(setq TagSearch (entnext BlkName))
);;defun


(defun c:rot-just-mov()
;(setq blk (ssget "X" '((2 . "MYBLOCK"))))

(setq blk (ssget '((0 . "INSERT")(66 . 1))))

(setq blkQty (sslength blk))
(setq index 0)


(while (/= index blkqty)
(setq BlkName (ssname blk index))


;UPDATE ANGLE
(attributeSearch)
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
(while (/= FindTag "X")
(setq TagSearch (entnext Tagsearch))
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
);;while

(setq old (assoc 50 (entget Tagsearch)))
(setq new (cons 50 0))
(setq NewList (subst new old (entget Tagsearch)))
(entmod NewList)
(entupd (cdr(assoc -1 (entget TagSearch))))



;UPDATE JUSTIFICATION MIDDLE LEFT
(attributeSearch)
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
(while (/= FindTag "X")
(setq TagSearch (entnext Tagsearch))
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
);;while

(setq old (assoc 74 (entget Tagsearch)))
(SETQ NEW (cons 74 2))

(setq NewList (subst new old (entget Tagsearch)))
(entmod NewList)
(entupd (cdr(assoc -1 (entget TagSearch))))


;UPDATE JUSTIFICATION LEFT
(attributeSearch)
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
(while (/= FindTag "X")
(setq TagSearch (entnext Tagsearch))
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
);;while

(setq old (assoc 72 (entget Tagsearch)))
(SETQ NEW (cons 72 0))

(setq NewList (subst new old (entget Tagsearch)))
(entmod NewList)
(entupd (cdr(assoc -1 (entget TagSearch))))


;MOVE ATTRIBUTE
(attributeSearch)
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
(while (/= FindTag "X")
(setq TagSearch (entnext Tagsearch))
(setq FindTag (cdr(assoc 2 (entget TagSearch))))
);;while

(setq old (assoc 11 (entget Tagsearch)))


;offset move from current attribute point
(setq oldx (car (cdr (assoc 11 (entget Tagsearch)))))
(setq oldy (cadr (cdr (assoc 11 (entget Tagsearch)))));;
(setq xoffsetmove (+ +1.0 oldx))
(setq yoffsetmove (+ +1.0 oldy))
(setq NewList (subst (list 11 xoffsetmove yoffsetmove 0.0) old (entget Tagsearch)));offset from current att point


;move attribute to specific point
;(setq xmove 27.0)
;(setq ymove 18.0)
;(setq NewList (subst (list 11 xmove ymove 0.0) old (entget Tagsearch)));move to specific point


(entmod NewList)
(entupd (cdr(assoc -1 (entget TagSearch))))




(setq index (+ index 1))

);;while
);;defun

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

Post to forums  

Autodesk Design & Make Report

”Boost