乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 54|回复: 3

怎样变层色????急!

[复制链接]

23

主题

30

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
122
发表于 2003-6-20 09:43:00 | 显示全部楼层 |阅读模式
各位大虾及斑竹,我要用LISP编写一个程序,用于控制layer表中层的颜色,就是如果我总共有20层,1----10层用200号色,11---15层用156号色,16---20层用10号色,不想用手打开layer表改,用程序怎么改???急!!!
回复

使用道具 举报

124

主题

837

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1333
发表于 2003-6-20 10:34:00 | 显示全部楼层

;;
;; Get list of entire layer name.
;;
(defun do_layer (/ start lyr layer_list)
(setq start 1)
(while (setq lyr (tblnext "LAYER" start))
   (setq start nil)
   (setq layer_list (append layer_list (list (cdr (assoc 2 lyr))) ))
)
layer_list
)
(defun c:change_lac ( / all_layer_list n la)
  (setq all_layer_list (do_layer))
  (setq n 0)
  (while (setq la (nth n all_layer_list))
    ;
    (cond
      ((< n 10)(command "-layer" "c" "200" la ""))
      ((< n 15)(command "-layer" "c" "156" la ""))
      ((< n 20)(command "-layer" "c" "10" la ""))
    );_cond
    (setq n (+ n 1))
  );_while
)
[此贴子已经被作者于2003-6-20 10:34:27编辑过]
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2003-6-20 10:27:00 | 显示全部楼层
;lname——图层名,lcolor——图层颜色,如果没有此图层,还会建立新图层,自己编个程序,循环一下使用此函数设置图层颜色就可以了
(defun setlayer_color(lname lcolor / layer layers adoc)
  (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
  (setq layers (vla-get-layers adoc))
  (setq layer (vl-catch-all-apply 'vla-item (list layers lname)))
  (if (vl-catch-all-error-p layer)
      (setq layer (vla-add layers lname))
  )
  (if lin
    (vla-put-color layer lcolor)
  )
  (princ)
)
回复

使用道具 举报

23

主题

30

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
122
发表于 2003-6-20 14:23:00 | 显示全部楼层
谢谢楼上!有没有办法得到CPUID??
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-3 15:08 , Processed in 1.035242 second(s), 60 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表