找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2963|回复: 10

[LISP程序]:将图元画在指定的图层

[复制链接]
发表于 2005-11-3 21:43:36 | 显示全部楼层 |阅读模式

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

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

×
虚心求教:
   我在画图的经常会画相同的图元,比例说一个固定半径的圆,但是经常绘图的时候所要求这个圆并不是在当前层,求教一下:如何在不改变当前层的情况下,将这个固定半径的圆画在指定的图层上???
多谢!!!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 8157个

财富等级: 富甲天下

发表于 2005-11-4 07:27:29 | 显示全部楼层
Command:  CHPROP
Select objects: 1 found
Select objects:
Enter property to change [Color/LAyer/LType/ltScale/LWeight/Thickness]: la
Enter new layer name <0>: DIM
Enter property to change [Color/LAyer/LType/ltScale/LWeight/Thickness]:

化成 Lisp
(command "Chprop" (entlast) "" "LA" "DIM" "")
(command "Chprop" (entlast) "" "LA" Pause "")

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

使用道具 举报

 楼主| 发表于 2005-11-4 22:42:23 | 显示全部楼层
????

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

使用道具 举报

发表于 2005-11-4 23:33:03 | 显示全部楼层
  1. [FONT=courier new]
  2. (load "xyp_lib")
  3. ;|加载通用函数(可在签名栏直接下载)
  4. 如果已经下载xyp_lib并放到搜索路径下可以不再下载!
  5. 利用以下任何一种方式(首选第一种)即可加载和运行通用函数内的所有子程序:
  6. ★1·在acad.lsp中增加(load"xyp_lib")
  7. ■2·在每个程序内增加(load"xyp_lib")
  8. ■3·在command下,输入(load"xyp_lib")
  9. ■4·在菜单.mnl中增加(load"xyp_lib")
  10. ■5·将xyp_lib.vlx文件直接拽到cad屏幕
  11. [COLOR=red] ★通用函数下载地址:[/COLOR]
  12. [url]http://www.xdcad.net/forum/attachment.php?s=&postid=1606661[/url]
  13. [url]http://www.mjtd.com/bbs/dispbbs.asp?boardID=3&ID=37554&page=1[/url]
  14. |;
  15. (defun c:test ()
  16.   (CMDLA0)
  17.   (mkla "test" 1);层名假设为test,颜色为1
  18.   ;;自定义程序内容
  19.   ;;……
  20.   ;;……
  21.   (CMDLA1)
  22. )
  23. [/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 8157个

财富等级: 富甲天下

发表于 2005-11-6 22:57:03 | 显示全部楼层
(command
  "Chprop"
  (entlast)        ; 即刚才画的一个固定半径的圆
  ""
  "LA"               ; 变更图层
Pause             ; 等待输入 ==> 如上例中的 “DIM”
  ""
)

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

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2005-11-7 06:14:00 | 显示全部楼层
http://p4.xdcad.net/forum/showthread.php?s=&threadid=261921
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-7 21:38:56 | 显示全部楼层
6楼的方法听上去不错,但是每次还要去选择图层,不够简单。
我自己写了一个



(defun C:3 (/ cen)
    (command "-layer" "n" "圆" "c" "73" "圆" "")
    (command "clayer" "圆" "")
    (setq cen
        (getpoint "插入圆 : ")
    )
    (command "circle" cen "30" "")
    (princ)
)


每一次都建“圆”这个图层,自动跑到当前层,每次圆都画在当前圆层。
就是改变了当前层这点不好,但是我觉得挺实用了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2005-11-7 23:05:05 | 显示全部楼层
(defun c:3 (/ cen cla r)
  (setq r (getdist "\n请输入半径:"))
  (setq cla (getvar "clayer"))
  (command "-layer" "m" "圆" "c" "73" "圆" "")
  (setq cen (getpoint "\n插入圆 : "))
  (command "circle" cen r)
  (setvar "clayer" cla)
  (princ)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-7 23:06:23 | 显示全部楼层 |阅读模式

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

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

×
方法很多
可以先设定当前层为需要层画完图后在SETVAR回去
也可以用CHANGE命令
也可以用CHPROP命令
也可以用修改DXF组码实现
也可以用VLISP里面的修改属性功能来实现.....
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
 楼主| 发表于 2005-11-8 12:28:05 | 显示全部楼层
谢大家,问题解决了,看来对于 lsp 语言还真的博大精深啊,还有很多东西要学啊!


(setq cla (getvar "clayer"))


(setvar "clayer" cla)

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-28 19:03 , Processed in 0.382659 second(s), 52 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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