BSC
--
A2Ki, SurvCad CES, Win98 se
Remove NO SPAM from my email address to email
Jonathan J. Baker
R&R Engineers-Surveyors, Inc.
Denver, Colorado
_________________________
"Ed Matthews"
wrote in message
news:3BD898AF.20009@wmsenginc.com...
> How do you start the command?
>
> Jon Baker wrote:
>
> > i found a lisp called bsc that will do that...
> >
> > (DEFUN aaej (aae@ / aaeQ)
> > (INITGET 128 "About Select")
> > (SETQ aaeQ (GETKWORD "\nSelect/: "))
> > (COND ((= aaeQ "About") (ALERT aae@) (aaej aae@))
> > ((= aaeQ "Select") (SETQ aaeQ (aael)))
> > ((NULL aaeQ) NIL)
> > ((NOT (TBLSEARCH "BLOCK" aaeQ))
> > (ALERT (STRCAT "Block \"" aaeQ "\" is not defined."))
> > (aaej aae@)
> > )
> > (T aaeQ)
> > )
> > )
> > (DEFUN aael (/ aae&)
> > (SETVAR "errno" 0)
> > (SETQ aae& (ENTSEL (STRCAT "\nSelect block: ")))
> > (COND ((= (GETVAR "errno") 7) (aael))
> > ((NULL aae&) NIL)
> > (T (aae1 aae&))
> > )
> > )
> > (DEFUN aae1 (aae& / aae# aae0 aae$)
> > (SETQ aae0 (CAR aae&))
> > (SETQ aae# (ENTGET aae0))
> > (SETQ aae$ (CDR (ASSOC 0 aae#)))
> > (SETQ aaeQ (CDR (ASSOC 2 aae#)))
> > (IF (NOT (EQ aae$ "INSERT"))
> > (PROGN (ALERT "Requires a block selection.") (aael))
> > (PROGN (PROMPT (STRCAT "\nBlock name: " aaeQ)) aaeQ)
> > )
> > )
> > (DEFUN aaeO (aaeQ / aae|)
> > (INITGET "Yes No ")
> > (SETQ aae| (GETKWORD "\nScale blocks globally? : "))
> > (IF (= aae| "No")
> > (SSGET (LIST (CONS 2 aaeQ)))
> > (SSGET "X" (LIST (CONS 2 aaeQ)))
> > )
> > )
> > (DEFUN aae% (aae?j / aaejj)
> > (IF (= aae?j "Relative")
> > (PROGN (INITGET "Absolute Relative" 7)
> > (SETQ aaejj (GETREAL "\nAbsolute/: "))
> > )
> > (PROGN (INITGET "Absolute Relative" 7)
> > (SETQ aaejj (GETREAL "\nRelative/: "))
> > )
> > )
> > (COND ((= aaejj "Absolute") (aae% "Absolute"))
> > ((= aaejj "Relative") (aae% "Relative"))
> > (T (LIST aae?j aaejj))
> > )
> > )
> > (DEFUN aae@j (aaeQj aaelj / aae# aae0 aae&j aae?j aae1j aae#j aae0j
> > aae$j)
> > (SETQ aae?j (CAR aaeQj))
> > (SETQ aae0j (CADR aaeQj))
> > (SETQ aae&j (SSLENGTH aaelj)
> > aae#j aae&j
> > )
> > (WHILE (> aae&j 0)
> > (SETQ aae&j (1- aae&j))
> > (SETQ aae0 (SSNAME aaelj aae&j))
> > (SETQ aae# (ENTGET aae0))
> > (SETQ aae1j (CDR (ASSOC 10 aae#)))
> > (SETQ aae$j (CDR (ASSOC 41 aae#)))
> > (IF (= aae?j "Relative")
> > (COMMAND "_.scale" aae0 "" "_none" aae1j aae0j)
> > (COMMAND "_.scale" aae0 "" "_none" aae1j (/ aae0j aae$j))
> > )
> > )
> > (PROMPT (STRCAT "\nBlock(s) scaled: " (ITOA aae#j)))
> > )
> > (DEFUN aaeOj (aae@ /)
> > (IF (/= aae@ "Function cancelled")
> > (PRINC aae@)
> > )
> > (SETQ *ERROR* aae|j)
> > (IF aae%j
> > (SETVAR "highlight" aae%j)
> > )
> > (COMMAND "_.undo" "_end")
> > (SETVAR "cmdecho" 1)
> > (PRINC)
> > )
> > (DEFUN C:BSC (/ aaeQ aae@ aae|j aaeQj aaelj)
> > (SETVAR "cmdecho" 0)
> > (COMMAND "_.undo" "_group")
> > (SETQ aae|j *ERROR*
> > *ERROR* aaeOj
> > )
> > (SETQ aae@ (STRCAT "Block Scale Version 5.1\n"
> > "Copyright"
> > (CHR 169)
> > " 1992-98 PowerLISP Solutions\n"
> > "All rights reserved.\n\n"
> > "Visit our web site at:\n"
> > "http://www.powerlisp.com"
> > )
> > )
> > (SETQ aaeQ (aaej aae@))
> > (IF aaeQ
> > (PROGN (SETQ aaeQj (aae% "Relative"))
> > (SETQ aaelj (aaeO aaeQ))
> > (IF aaelj
> > (aae@j aaeQj aaelj)
> > (ALERT "No objects found.")
> > )
> > )
> > )
> > (SETQ *ERROR* aae|j)
> > (COMMAND "_.undo" "_end")
> > (SETVAR "cmdecho" 1)
> > (PRINC)
> > )
> > (PRINC)
> >
> > --
> > A2Ki, SurvCad CES, Win98 se
> > Remove NO SPAM from my email address to email
> >
> > Jonathan J. Baker
> > R&R Engineers-Surveyors, Inc.
> > Denver, Colorado
> > _________________________
> > "Ed Matthews" wrote in message
> > news:3BD894FE.9060107@wmsenginc.com...
> >
> >>Luis, that was it. I do appreciate it very much. Forgive, but I have to
> >>ask. My blocks are at different scales, is there a routine you might
> >>have that could scale all blocks selected at one time?
> >>Thnks for everything
> >>Ed
> >>
> >>Luis Esquivel wrote:
> >>
> >>
> >>>Maybe I understood what you are looking for... 🙂
> >>>
> >>>(defun name (e v)
> >>> (setq
> >>>
> >>> lst
> >>> (subst (cons 2 v) (assoc 2 (entget e)) (entget e))
> >>> )
> >>> (entmod lst)
> >>> (entupd (cdr (assoc -1 lst)))
> >>>)
> >>>
> >>>(defun C:RBLOCKS (/ ss lth cont v)
> >>> (prompt "\nSelect block(s) to replace... ")
> >>> (setq ss (ssget '((66 . 1) (0 . "INSERT")))
> >>> lth (sslength ss)
> >>> cont 0
> >>> v (car (entsel "\nSelect target block: "))
> >>> )
> >>> (while (<= cont (- lth 1))
> >>> (name (ssname ss cont) (cdr (assoc 2 (entget v))))
> >>> (setq cont (1+ cont))
> >>> )
> >>> (princ)
> >>>)
> >>>
> >>>
> >>>
> >>>
> >
> >
>