几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量  


返回   几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 » 仿射空间:CAX软件开发(三)二次开发与程序设计 » CAD二次开发 » AutoCAD二次开发 » 数据库ObjectDBX
用户名
密码
注册 帮助 会员 日历 银行 搜索 今日新帖 标记论坛为已读


回复
 
主题工具 搜索本主题 显示模式
旧 2009-04-28, 10:55 AM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】上传一个简单实用的lisp源程序(图元快速成块):

上传一个简单实用的lisp源程序(图元快速成块):
www.dimcax.com
上传一个简单实用的lisp源程序(图元快速成块):
;;designed by g.q.lou 12-26-2008
(defun c:qblock(/ a b c d e f val val1) ;主函数开始
(setq val(getvar "cmdecho")) ;获系统变量“是否回显”参数
(setvar "cmdecho" 0) ;设command 函数运行期间,autocad 不回显提示和输入
(defun *error* (msg) ;按esc键时的处理方法
(setvar "gripsize" val1) ;按esc键时把夹点恢复原来大小
(princ"")
;(princ msg)
;(princ)
)
(setq a(cadr(ssgetfirst)));判断当前图形是否有既被夹取的对象,如果有则把这个选择集赋予变量a
(if(= a nil) ;如果变量a为空时
(progn
(setq val1(getvar "gripsize")) ;获得系统夹点大小
(print "-> 请选择要设为块的对象或按<esc>退出") ;显状态栏提示的信息
(setq b(ssget));创建一个选择集
(initget 1) ;为随后的交互输入函数getpoint创关键字
(setq c(getpoint"\n指定基点:"));获得一个三维点坐标
;(setq d(list (car c) (cadr c)));转换为二维点坐标(在此不必要)
(command "undo" "group") ;为undo编组
(command "copybase" c b "");调用autocad的copybase命令
(command "erase" b "");调用autocad的erase命令删除b选择集
(command "pasteblock" c);调用autocad的pasteblock命令
(command "undo" "end") ;undo编组结束
(prompt "\n***** 对象设为块成功! *****") ;显状态栏提示的信息
)
(progn ;如果变量a不为空时
(setq val1(getvar "gripsize")) ;获得系统夹点大小
(setvar "gripsize" 1) ;设夹点大小
(print "-> 所选对象将设为块或按<esc>退出:") ;显状态栏提示的信息
(initget 1) ;为随后的交互输入函数getpoint创关键字
(setq c(getpoint"\n指定基点:"));获得一个三维点坐标
(setvar "gripsize" val1) ;把夹点恢复原来大小
;(setq d(list (car c) (cadr c)));转换为二维点坐标(在此不必要)
(command "undo" "group") ;为undo编组
(command "copybase" c a "");调用autocad的copybase命令
(command "erase" a "");调用autocad的erase命令删除b选择集
(command "pasteblock" c);调用autocad的pasteblock命令
(command "undo" "end") ;undo编组结束
(prompt "\n***** 对象设为块成功! *****") ;显状态栏提示的信息
)
);if结束
(princ);静默退出
(setvar "cmdecho" val) ;设command 函数运行期间,autocad 的回显提示和输入恢复原状
);主函数结束
;;;--------------------------------end----------------------------------------

支持

程序用起来很好,是否能将所作的块起一个块名,并赋予以一个基点是否更好

程序很不错,不过还要进一步改进.

楼主能不能发一个程序,代码还要编写,费时
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)
回复


主题工具 搜索本主题
搜索本主题:

高级搜索
显示模式

发帖规则
不可以发表新主题
不可以回复主题
不可以上传附件
不可以编辑您的帖子

vB 代码开启
[IMG]代码开启
HTML代码关闭



所有的时间均为北京时间。 现在的时间是 07:27 PM.


于2004年创办,几何尺寸与公差论坛"致力于产品几何量公差标准GD&T | GPS研究/CAD设计/CAM加工/CMM测量"。免责声明:论坛严禁发布色情反动言论及有关违反国家法律法规内容!情节严重者提供其IP,并配合相关部门进行严厉查处,若內容有涉及侵权,请立即联系我们QQ:44671734。注:此论坛须管理员验证方可发帖。
沪ICP备06057009号-2
更多