Page 1 of 1

Scale multiple objects, each about its own Center

Posted: Sun Mar 05, 2023 6:24 am
by martin777
How to do this in Intellicad compatible lisp?

Re: Scale multiple objects, each about its own Center

Posted: Sun Mar 05, 2023 6:33 pm
by QuanNguyen
Please refer to the simple lisp, multi-scale circle, and arc object.

Code: Select all

(defun c:scCir(/ ent i obj ss)
  (vl-load-com)
  
  (if (setq i -1 ss (ssget '((0 . "CIRCLE,ARC"))))
    (progn
      (SETQ scaleUp (not scaleUp))
      (while (setq ent (ssname ss (setq i (1+ i))))
	(setq obj (vlax-ename->vla-object ent))
	(setq center (vla-get-center obj))
	(vla-ScaleEntity obj center (if scaleUp 2 0.5) ))      ))  
  (princ))