lincctw_ccl 发表于 2014-9-24 13:39:26

如何将串列中的图层名导出做为指令的关键词?

各位好!想请各位帮忙修个程序下列 程序已得出选择图的串列但我不知如何再把串列中的图层名再依序拆出我现在想做的动作是 依 其求出的串列层名依序单开其图层, 回车后续 单开串行中的第2项依此类推 直至依续 单开图层至串列中所有图层名谢谢!! (defun c:GGGG(/ Lyrss) (setvar "cmdecho" 0) (Princ"\n选取对象:")(and(setq ss (ssget))(setq i -1)(while (setq ee (ssname ss (setq i (1+ i))))    (cond   ((setq Lyrss (cons (cdr (assoc 8 (entget ee))) Lyrss)))   ((member (setq lyr (cdr (assoc 8 (entget ee)))) lyrss))   ) );;END WHILE (princ "\n对象所在图层:") (princ lyrss)) (prin1))

Andyhon 发表于 2014-9-24 14:28:18


(defun c:GGGG (/ Lyrss)
(setvar "cmdecho" 0)
(Princ "\n选取对像:")
(and
    (setq ss (ssget))
    (setq i -1)
    (while (setq ee (ssname ss (setq i (1+ i))))
      (cond
        ((setq Lyrss (cons (cdr (assoc 8 (entget ee))) Lyrss)))
        ((member (setq lyr (cdr (assoc 8 (entget ee)))) lyrss))
      )
    )
    ;;END WHILE
    (princ "\n对像所在图层集:")
    (princ lyrss)
    (princ "\n---------------------------")
    (foreach lyr Lyrss
      (princ "\n对像所在图层:") (princ Lyr)
      (command "Layer" "on" Lyr "")
      (setvar 'Clayer lyr)
      (command "Layer" "off" (strcat "~" Lyr) "")
      (grread)
   )
   (command "Layer" "on" "*" "")
)
(prin1)
)

lincctw_ccl 发表于 2014-9-29 07:47:34

Andyhon 发表于 2014-9-24 14:28 static/image/common/back.gif


谢谢指点!
问题已解决!
页: [1]
查看完整版本: 如何将串列中的图层名导出做为指令的关键词?