Günaydın,
Yine acemiliğim yüzünden çalıştıramadığım ekteki örnekte olan lisp. objelerin z değerleri elevationları hep sıfırlansın istiyorum. Fakat bu blok nesnelerinde olmuyor. bir daha blokun içine girip sıfırlamaya çalışıyorum orada da tam çalışmıyor. Nedir eksik olan hangi objeleri kapsaması gerektiğini de belirttim aslında. Yardımcı olabilir misiniz.
(defun c:Z0 ()
(princ "\nSıfırlanacak Objeleri Seçiniz :")
(setq obje (ssget))
;(setq obje (ssget "x" '((0 . "LINE" 0. "PLINE" 0. "BLOCK" 0. "MULTILEADER" 0. "DIM" ))))
;(setq obje (ssget "x" '((0 . "LINE" "PLINE" "BLOCK" "MULTILEADER" "DIM" ))))
(setq n (sslength obje))
(setq i 0)
(princ "\n...\n")
(repeat n
(setq ename (ssname obje i))
(setq elist (entget ename))
(setq bas (cdr (assoc 10 elist))
son (cdr (assoc 11 elist))
basx (car bas)
basy (cadr bas)
sonx (car son)
sony (cadr son)
)
(setq bas (list basx basy 0.0) son (list sonx sony 0.0))
(setq elist (subst (cons 10 bas) (assoc 10 elist) elist))
(setq elist (subst (cons 11 son) (assoc 11 elist) elist))
(entmod elist)
(setq i (+ i 1))
(sayac i n)
)
(princ (strcat "\n" (itoa i) " objenin Z'leri sıfırlandı."))
(princ)
)