Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/31/2019 in all areas

  1. I've been working in Tekla now for a few years. I miss Autocad, so happy to help
    1 point
  2. Please try this: ;; Restore Attribute Position ~ By Lee Mac ~ 12.12.2009 (defun c:ResAtt (/ *error* BLK DOC ENT NPT OBJ UFLAG VEC) (vl-load-com) (setq doc (vla-get-ActiveDocument (vlax-get-acad-object))) (defun *error* (msg) (and uflag (vla-EndUndoMark doc)) (or (wcmatch (strcase msg) "*BREAK,*CANCEL*,*EXIT*") (princ (strcat "\n** Error: " msg " **"))) (princ)) (while (progn (setq ent (car (nentsel "\nSelect Attribute to Reset: "))) (cond ( (eq 'ENAME (type ent)) (if (eq "AcDbAttribute" (vla-get-ObjectName (setq obj (vlax-ename->vla-object ent)))) (if (eq :vlax-true (vla-get-LockPosition obj)) (princ "\n** Invalid Attribute Type **") (progn (setq uflag (not (vla-StartUndoMark doc))) (vlax-for sub (vla-item (vla-get-Blocks doc) (vla-get-Name (setq blk (vla-ObjectIdtoObject doc (vla-get-OwnerID obj))))) (if (and (eq "AcDbAttributeDefinition" (vla-get-ObjectName sub)) (apply (function eq) (mapcar (function strcase) (mapcar (function vla-get-TagString) (list obj sub))))) (setq vec (vlax-safearray->list (vlax-variant-value (vlax-get-property sub (if (eq acAlignmentLeft (vla-get-Alignment obj)) 'InsertionPoint 'TextAlignmentPoint))))))) (if vec (progn (setq nPt (mapcar (function +) (vlax-safearray->list (vlax-variant-value (vla-get-InsertionPoint blk))) vec)) (vlax-put-property obj (if (eq acAlignmentLeft (vla-get-Alignment obj)) 'InsertionPoint 'TextAlignmentPoint) (vlax-3D-point nPt)))) (setq uflag (vla-EndUndoMark doc)))) (princ "\n** Object Must be an Attribute **")))))) (princ))
    1 point
×
×
  • Create New...