Jump to content

Leaderboard

Popular Content

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

  1. I managed to rotate them using the lisp below because I quit on my initial thoughts but pkenewell proved he is another creature. I have been scratching my head for a while on this rotating depending on the difference between two angles for a while and he solved it so casually - Both pkenewell and BIGAL must be alians (super advanced) (in a good sense hah)! Thank you again pkenewell (DEFUN C:IT (/ BS BSL CT NOFUV NOFNU LP NE NEL NEAET NEA NEAS OFNU NNEL) (PROMPT "\n*SET ATTRIBUTE ROTATION* ") (PROMPT "\nSelect block with attributes to rotate: ") (SETQ BS (SSGET '((-4 . "<AND") (0 . "INSERT") (66 . 1) (-4 . "AND>")) )) (SETQ BSL (SSLENGTH BS)) (SETQ CT (- BSL 1)) (SETQ NOFUV (GETANGLE "\nNew attribute rotation angle: ")) (SETQ LP 1) (WHILE LP (SETQ NE (SSNAME BS CT)) (SETQ CT2 0) (SETQ LP2 1) (WHILE LP2 (SETQ NE (ENTNEXT NE)) (SETQ NEL (ENTGET NE)) (SETQ NEAET (CDR (ASSOC 0 NEL))) (SETQ NEA (ASSOC 50 NEL)) (SETQ NEAS (CDR NEA)) (IF (= NEAET "ATTRIB") (PROGN (IF (/= NEA NIL) (PROGN (SETQ NOFNU (CONS 50 NOFUV)) (SETQ OFNU NEA) (SETQ NNEL (SUBST NOFNU OFNU NEL)) (ENTMOD NNEL) (ENTUPD NE) ));END PROGN/IF NEA ));END PROGN/IF NEAET (IF (= NEAET "SEQEND") (SETQ LP2 NIL)) );END WHILE LP2 (SETQ CT (- CT 1)) (IF (< CT 0) (SETQ LP NIL)) );END WHILE LP (PRINC) );END DEFUN I am sure even this lisp has a lot of holes in it!
    1 point
  2. sdevecy If it will be difficult for you to use Lisp, then you can try an additional program. Here is the link - Revers - Automatic batch printing This is a video tutorial for your title blocks : https://youtu.be/Er0Wz4AHUpc
    1 point
  3. Nice one but now you made me even confused haha. But yeah, a new learning stuff for me, thanks.
    1 point
  4. You need to save the two files in a Autocad supported path or edit the "Load path. (if (not AH:Butts)(load "c:\\myprograms\\lisps\\Multi Radio buttons.lsp")) (if (not AH:Butts)(load "c:\\put your path here\\Multi Radio buttons.lsp"))
    1 point
  5. My original Double Offset application was designed to precisely emulate the prompts & options offered by the standard AutoCAD OFFSET command, however with the offset being performed to both sides rather than a selected side. Here's a quickly written alternative to permit multiple object selection: (defun c:mdoff ( / d i o s ) (initget 6) (if (and (setq d (getdist "\nSpecify offset distance: ")) (setq s (ssget "_:L" '( (0 . "ARC,CIRCLE,ELLIPSE,*LINE") (-4 . "<NOT") (-4 . "<AND") (0 . "POLYLINE") (-4 . "&") (70 . 80) (-4 . "AND>") (-4 . "NOT>") ) ) ) ) (repeat (setq i (sslength s)) (setq i (1- i) o (vlax-ename->vla-object (ssname s i)) ) (foreach x (list d (- d)) (vl-catch-all-apply 'vlax-invoke (list o 'offset x)) ) ) ) (princ) ) (vl-load-com) (princ)
    1 point
×
×
  • Create New...