Wipeout and Textmask functions

Does anyone know how to emulate for BricsCad the AutoCAD R14 Bonus Tools - WIPEOUT AND TEXTMASK autolisp utilities?

Comments

  • How about this function. Get a selection set... filter only mText and toggle background mask on/off.

    ;;;---------------------------------------------------------;;;--- Toggle's background for mText entities --------------;;;---------------------------------------------------------(defun c:mtw (/ $CMDECHO ent obj sset1 sset2 newent cnt cnt2 cnt3) ;; get big selection set (prompt "\nSelect entities to Toggle Background Fill [only mText will be modified]:") (if (setq sset1 (ssget)) (progn (setq $CMDECHO (getvar "CMDECHO")) (setvar "CMDECHO" 0) ;; run through each entity selected (setq cnt -1 cnt2 0 cnt3 0) (while (< (setq cnt (1+ cnt)) (sslength sset1)) (setq obj (vlax-ename->vla-object (ssname sset1 cnt)) ObjType (vla-get-ObjectName obj) ) (cond ((= ObjType "AcDbMText") (setq cnt2 (1+ cnt2)) (setq ent (ssname sset1 cnt)) (if (= (vla-get-BackgroundFill obj) :VLAX-TRUE) ;;;--- IF TRUE - already filled (progn (vla-put-BackgroundFill obj :VLAX-FALSE) (vla-update obj) (setq cnt3 (1+ cnt3)) ) ;;;--- IF TRUE - already filled ;;;--- IF FALSE - no fill (progn (setq sset2 (ssadd)) (ssadd ent sset2) (command "draworder" sset2 "" "F") (setq ent (entget ent)) (if (= 1 (cdr(assoc 90 ent))) (progn (setq ent (subst (cons 90 1) (cons 90 3) ent) ) (entmod ent) (entupd (cdr(assoc -1 ent))) ) (progn (setq newent (append ent (list(cons 90 3)))) (entmod newent) (entupd (cdr(assoc -1 newent))) ) ) ;;;--- IF FALSE - no fill ) ) ) ) ; end COND ) ; end WHILE (prompt (strcat "\nmText Background(s) Modified <" (rtos (- cnt2 cnt3) 2 0) " turned ON> " "<" (rtos cnt3 2 0) " turned OFF>\n") ) (setvar "CMDECHO" $CMDECHO) ); end progn ); end if(princ)); end MTW;;;---------------------------------------------------------;;;---------------------------------------------------------
  • and a wipeout work around...

    ;;;---------------------------------------------------------;;;--- Creates a Rectangular Wipeout (i.e. PLANE entity ----;;;--- with color set to RGB 255,255,255) ----;;;---------------------------------------------------------(defun c:WIPE (/ pt1 pt2 $CMDECHO $CECOLOR) (setq $CMDECHO (getvar "CMDECHO")) (setq $CECOLOR (getvar "CECOLOR")) (setvar "cmdecho" 0) ;Get box location (setq pt1 (getpoint "\nFirst point of Wipeout:")) (if (setq pt2 (getcorner pt1 "\nOther corner of rectangle:")) (progn (setvar "CECOLOR" "RGB:255,255,255") (command "PLANE" "RECTANGLE" pt1 pt2 0 "") ) ) (setvar "CMDECHO" $CMDECHO) (setvar "CECOLOR" $CECOLOR) ; clean exit (princ));;;---------------------------------------------------------;;;---------------------------------------------------------;;;---------------------------------------------------------;;;---------------------------------------------------------
  • is there a core command for the wipeout and textmask functions or do i have to use a lisp routine for them, it is my hope that these two commands will eventually be included in your software as they are the most needed commands to produce a top quality draft. without them it is hard to use xrefs and still have the maps look presentable.

This discussion has been closed.