¿Cómo utilizar CAD para realizar fácilmente el desplazamiento de múltiples objetos? ¿Utiliza autolisp?
;;;Prueba;Programa de compensación offset bidireccional 8.3;
(defun?C:NOD?(?/?ss?obj) (setvar?"cmdecho"?0 ) ( setvar?"blipmode"?0) (if?(null?vlax-dump-object)?(vl-load-com)??;;Cargar función de extensión vlax (if?(setq?ss?(ssget? ": S"?'((0?.?"Arco,Círculo,Elipse,*Línea")))) (progn
(vlax-for?obj?
( vla- get-activeselectionset (vla-get-activedocument? (vlax-get-acad-object) )
)
(vla-offset?obj?(-?8.3)) ;; Desplazamiento hacia afuera en 8,3
(NOD1);;Si no necesita modificar el estilo y el color de la línea, elimine esto
(vla-offset?obj?8.3);;Desplazamiento hacia adentro Mover 8.3
(NOD1);;Si no necesita modificar el estilo y el color de la línea, elimine esto
) ) ) (prin1)
)
;;Subrutina de compensación;;;;;
(defun?NOD1?(?/?&k1?#k?%k1?%k2?%k3?%k4) (setq?&k1 ?(entlast)) (if?(/=?&k1?nil) (progn
(setq?#k?(entget?&k1);;Lista de atributos%k1?(assoc? 62?#k );;Extraer color%k2?(cons?62?1);;Lista de colores 1 rojo%k3?(assoc?6?#k) %k4?(cons?6?"ByBlock") p>
)
(if?(=?%k1?nil);;Si es el valor predeterminado
(setq?#k?(cons?%k2? #k));; Modificar color
)
(if?(=?%k3?nil);;Si es el predeterminado
(setq ?#k?(cons?% k4?#k));;Modificar estilo de línea
)
(if?(/=?%k1?nil);;Si hay es color
(setq?#k?(subst?%k2?%k1?#k));;Reemplazar color
)
(if? (/=?%k3?nil) ;;Si es el predeterminado
(setq?#k?(cons?%k4?%k3?#k));;Modificar el estilo de línea p>
)
(entmod?#k);;Actualizar) )
);;Guardar en el bloc de notas y nombrarlo (NOD.lsp)