找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1439|回复: 11

[原创]: 图层状态 保存/恢复工具

[复制链接]
发表于 2002-1-15 03:16:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
命令行方式的:-)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2002-1-16 00:15:02 | 显示全部楼层
梦,是不是该放在程序库论坛里?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-1-16 00:38:44 | 显示全部楼层
歹人哪,夜半有人来打劫.....
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2002-1-16 01:03:56 | 显示全部楼层
:-{} 要守住程序库论坛这一片净土,不能随便灌水,包括我自己
进程序库的必须是经得起考验的程序版本。

CY956:你的话很逗:-)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-1-16 01:15:22 | 显示全部楼层
同意梦话。[包括: “CY956:你的话很逗:-)”]

CY兄,此举目的是为了方便大家找[解决方法]。也方便日后整理程序。多包涵。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-1-16 22:54:50 | 显示全部楼层
没问题啦--,一句玩笑话。


为了不被说成是灌水,提供一个灌水函数:

(defun sys-out(filt);;;filt="LAYER""LTYPE""VIEW""STYLE""BLOCK""UCS""APPID""DIMSTYLE""VPORT"
  (setq lay0(tblnext filt t)
        LAYB(list (dxf 2 lay0)))
  (WHILE (setq lay0(tblnext filt))
    (setq layb(append layb (list (dxf 2 lay0))))
  )
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-1-17 08:24:54 | 显示全部楼层

这个程序有什么作用?

我怎么看不出来!望告知!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-1-17 09:46:08 | 显示全部楼层
(sys-out "LAYER");;;列出当前图内的所有"LAYER"
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-5-4 19:51:01 | 显示全部楼层

  1. ;;;lass,lasr----layer states restory 图层状态 保存/恢复工具----------------lxx.2001.4
  2. ;;;保存图层状态
  3. ;;laylst-图层状态表(全局); sslaylst-图层状态表长度; layln-图层状态命名; layladd-当前图层状态; laytbl-图层符号表数据
  4. (defun c:lasv (/ sslaylst n layln m k layladd laytbl);;laylst
  5. (princ "\n图层状态-保存工具-------用lasr恢复---------lxx.2001.4")
  6. (if (null laylst)
  7.   (setq laylst '()
  8.         sslaylst nil)
  9.   (setq sslaylst (length laylst))
  10. )
  11. (princ "\n已有命名:")
  12. (if sslaylst
  13. (foreach n laylst (princ (strcat "  "" (car n) """) ))
  14. )
  15. (while (= "" (setq layln (getstring t (strcat "\n*-laylst列表/<命名>:")))) );; end while
  16. (if (= "*" layln)
  17. (progn
  18.   (foreach n laylst (foreach m n (print m)))
  19.   (princ)
  20. )
  21. (progn
  22.   (setq k t                                                                                 
  23.         layladd '()                                                                        
  24.   )                                                                                         
  25.   (while (setq laytbl (tblnext "layer" k))                                                  
  26.    (setq k nil                                                                              
  27.          layladd (cons laytbl layladd)                                                      
  28.    )                                                                                       
  29.   )                                                                                         
  30.   ;(textpage)                                                                                
  31.   (princ "\n当前保存的层状态----2:图层名; 70(1)冻结(2)视口冻结(4)锁定; 62(-)关闭; 6:线形名")
  32.   (princ (strcat "\n--------------------当前命名:" layln "--------------------"))           
  33.   (setq layladd (cons layln layladd)                                                        
  34.         laylst (cons layladd laylst))                                                      
  35.   (foreach n layladd (print n))                                                                                    
  36. )                                                                                         
  37. );end if
  38. (if (> (length laylst) 6)
  39. (setq laylst (reverse laylst)
  40.        laylst (cdr laylst);;;;最多6个存储
  41.        laylst (reverse laylst)
  42. )
  43. )
  44. (princ (strcat "\n图层状态已经保存为:" layln))(princ)
  45. )
  46. ;;恢复图层状态   main                                                                        
  47. (defun c:lasr (/ i roop ix n ik);laylst                                     inc (strcat "  "" (car n) """) ))
  48. (while (= "" (setq layln (getstring t (strcat "\n*-laylst列表/<命名>:")))) );; end while
  49. (if (= "*" layln)
  50. (progn
  51.   (foreach n laylst (foreach m n (print m)))
  52.   (princ)
  53. )
  54. (progn
  55.   (setq k t                                                                                 
  56.         layladd '()                                                                        
  57.   )                                                                                         
  58.   (while (setq laytbl (tblnext "layer" k))                                                  
  59.    (setq k nil                                                                              
  60.          layladd (cons laytbl layladd)                                                      
  61.    )                                                                                       
  62.   )                                                                                         
  63.   ;(textpage)                                                                                
  64.   (princ "\n当前保存的层状态----2:图层名; 70(1)冻结(2)视口冻结(4)锁定; 62(-)关闭; 6:线形名")
  65.   (princ (strcat "\n--------------------当前命名:" layln "--------------------"))           
  66.   (setq layladd (cons layln layladd)                                                        
  67.         laylst (cons layladd laylst))                                                      
  68.   (foreach n layladd (print n));;;;;;;;;;;;;
  69. );end progn else
  70. );end if
  71. )
  72. (princ "\nlass/lasr----(图层状态保存/恢复工具)-----lxx.2001.4")(princ)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-4 20:03:55 | 显示全部楼层
我的印象中好像有一对VLA或 VLAX的函数可以直接做到
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2019-4-7 19:25:58 | 显示全部楼层
我来看看,这个好笑用不了????
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2019-4-7 19:28:14 | 显示全部楼层
抱歉,打错字,想说好像用不了,只是保存查看图层状态,那么恢复的函数呢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-17 21:37 , Processed in 0.243145 second(s), 54 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表