关于cad的lisp
例如!(异形分层)有个圆在图层0上例如我画一个不规则的封闭的图形在0层,现在我想用一个快捷命令把它复制到层1和层2上,而且要求复制到层2上时这个图形单边加大2.0(也就是...
例如!(异形分层)有个圆在图层0上例如我画一个不规则的封闭的图形在0层,现在我想用一个快捷命令把它复制到层1和层2上,而且要求复制到层2 上时这个图形单边加大2.0(也就是偏移2.0)请帮忙写个lisp,谢谢,我的邮箱:yongpretty@163.com
本人百度财富少,可以其他方式感谢 展开
本人百度财富少,可以其他方式感谢 展开
3个回答
展开全部
提供思路 和 部分代码
1.快捷方式可以用(defun c: xxx) 实现
2.调用xxx 时 可以弹出对话框 选择需要选取的图形 并将结果 放入选集 selection@
3.关闭0 图层 打开 1图层 试用insert 命令插入 至于偏移多少自己定.
3.关闭1 图层 打开 2图层 用insert 命令插入 到图层2中
;;;;;实现打开图层1 例如 (LayerOn 1)
(defun LayerOn (LayerNames$ / LayerList@ Name$)
(setq LayerList@ (CommaList LayerNames$))
(foreach Name$ LayerList@
(if (= Name$ "*")
(command ".LAYER" "T" "*" "U" "*" "ON" "*" "")
(if (tblsearch "layer" Name$)
(command ".LAYER" "T" Name$ "U" Name$ "ON" Name$ "S" Name$ "")
(command ".LAYER" "M" Name$ "")
);if
);if
);foreach
);defun LayerOn
;;关闭图纸0 (LayerOff 0)
(defun LayerOff (LayerNames$)
(if (= LayerNames$ "*")
(command ".LAYER" "F" "*" "")
(command ".LAYER" "OFF" LayerNames$ "F" LayerNames$ "")
);if
);defun LayerOff
1.快捷方式可以用(defun c: xxx) 实现
2.调用xxx 时 可以弹出对话框 选择需要选取的图形 并将结果 放入选集 selection@
3.关闭0 图层 打开 1图层 试用insert 命令插入 至于偏移多少自己定.
3.关闭1 图层 打开 2图层 用insert 命令插入 到图层2中
;;;;;实现打开图层1 例如 (LayerOn 1)
(defun LayerOn (LayerNames$ / LayerList@ Name$)
(setq LayerList@ (CommaList LayerNames$))
(foreach Name$ LayerList@
(if (= Name$ "*")
(command ".LAYER" "T" "*" "U" "*" "ON" "*" "")
(if (tblsearch "layer" Name$)
(command ".LAYER" "T" Name$ "U" Name$ "ON" Name$ "S" Name$ "")
(command ".LAYER" "M" Name$ "")
);if
);if
);foreach
);defun LayerOn
;;关闭图纸0 (LayerOff 0)
(defun LayerOff (LayerNames$)
(if (= LayerNames$ "*")
(command ".LAYER" "F" "*" "")
(command ".LAYER" "OFF" LayerNames$ "F" LayerNames$ "")
);if
);defun LayerOff
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我会编写CAD的LSP程序,价格可以商量的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
还没完全听懂你的意思,上CAD图看下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询