找回密码 注册 QQ登录
一站式解决方案

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 18402|回复: 4
打印 上一主题 下一主题

[求助] cad中不同层间偏移实体(提供源码)

[复制链接]
跳转到指定楼层
1
发表于 2010-10-25 22:48:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在层间偏移很有用,所以在网上找了以下文件,但做成LSP后还是不能用 ,有那个高手帮忙做成LSP,谢谢!

  在CAD作图中,“offset”命令只能在同一层中偏移实体,而实际绘图中常常需要在不同层间偏移实体。例如:在一层上画完中心线后,只需将其向两边偏移一定的距离即可得到轮廓线,而中心线和轮廓线一般不在同一层上,还需改变轮廓线所在层。下面这个用autolisp编写的程序可以在不同层间偏移实体,解决了这一问题。其中变量“layer”定义为全局变量,指要把实体偏移到所在层的层名。当使用该函数时,如果所偏移到的层与上次相同,可以不用输入层名(变量“layer”的值)。

  (defun cla(/cmdecho d d1 lay ent p)

  (if *error* quit)

  (setq cmdecho (getvar ″cmdecho″))

  (setvar″cmdecho″1)

  (princ″\noffset dist<″)

  (setq d(getvar ″offsetdist″))

  (if(/=d-1)(princ d))

   (setq d1(getdist″>:″))

   (if(/=d1 nil)(setq d d1))

   (princ″\ninput the layer name to offset to<″)

   (if(/=layer nil)(princ layer))

   (setq lay(getstring ″>:″))

   (if (/=lay ″ ″)(setq layer lay))

   (while(setq ent(entsel ″\nselect object to offset:″))

   (setq p(getpoint″\nside object to offset?″))

   (command ″—.offset″d ent p″ ″)

   (command ″—.change″ ″1″ ″″ ″p″ ″layer″layer″ ″)

   )

   (setvar″cmdecho″ cmdecho)

   (princ)

  )

本帖最后由 ken_terry 于 2010-10-25 22:51 编辑

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
 楼主| 发表于 2010-10-25 23:35:36 | 只看该作者

马上注册,结交更多同行朋友,交流,分享,学习。

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

x
3
 楼主| 发表于 2010-10-27 14:50:35 | 只看该作者

马上注册,结交更多同行朋友,交流,分享,学习。

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

x
4
发表于 2010-12-11 23:05:48 | 只看该作者

马上注册,结交更多同行朋友,交流,分享,学习。

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

x
5
发表于 2010-12-11 23:06:26 | 只看该作者

马上注册,结交更多同行朋友,交流,分享,学习。

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

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

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-11-15 01:10 , Processed in 0.025936 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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