明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4360|回复: 16

CAD中如何实现“insert”命令插入块程式化选择?

  [复制链接]
发表于 2012-3-23 22:39:51 | 显示全部楼层 |阅读模式

如图所示,输入"insert"之后,每次还得选择(1)插入点<在屏幕上指定>,去掉(2)缩放比例<在屏幕上指定>,选择(3)旋转<在屏幕上指定>,操作完这三个选项之后,还得点击确定。
但如果用(defun c:bb()   (command "insert"))这个简单的lsp,输入bb后还得重新修改比例,插入点和缩放比例还得重新设置,具体如下图所示。

请问哪位仙人能用lsp程序实现块插入简单化?只输入块名就行了的那种

本帖子中包含更多资源

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

x
发表于 2012-5-26 01:52:37 | 显示全部楼层
还是用这个吧
(defun c:bb(/ n p)
(setq n (strcat "*" (getstring "\n请输入块名:")));在块名前自动添加*号
(setq p (getpoint "\n指定插入点:"))
(command "-insert" n p "1" "1" "0" )
(princ)
)
回复 支持 1 反对 0

使用道具 举报

发表于 2012-5-26 01:45:36 | 显示全部楼层
或者在最后加一句(command "EXPLODE" (entlast))

(defun c:bb(/ n p)
(setq n (getstring "\n请输入块名:"))
(setq p (getpoint "\n指定插入点:"))
(command "-insert" n p "1" "1" "0" )
(command "EXPLODE" (entlast));加这句 炸开图块 免去输入*号
(princ)
)
回复 支持 1 反对 0

使用道具 举报

发表于 2012-5-26 01:42:15 | 显示全部楼层
块名前面加个*号就行了,比如块名为A,输入块名的时候写成*A
回复 支持 1 反对 0

使用道具 举报

发表于 2012-3-24 00:27:38 | 显示全部楼层
用SCR怎么样
发表于 2012-3-25 15:35:56 | 显示全部楼层
这个可以吗
(defun c:bb(/ n p)
(setq n (getstring "\n请输入块名:"))
(setq p (getpoint "\n指定插入点:"))
(command "-insert" n p "1" "1" "0" )
(princ)
)
 楼主| 发表于 2012-3-26 20:48:18 | 显示全部楼层
不行啊。出错,找不到块的位置
发表于 2012-3-27 14:27:02 | 显示全部楼层
dwg块要放到支持文件搜索路径下啊 选项中设置下位置
 楼主| 发表于 2012-3-28 16:15:39 | 显示全部楼层
你这条程序里面(command "-insert" n p "1" "1" "0" ),n  p  "1"  "1"  "0"这些参数指的什么意思?
发表于 2012-3-28 16:31:44 | 显示全部楼层
就是命令-insert中 需要你输入的数据啊 n p是块名和插入点 1是比例 0是角度
你输命令看看就知道了啊
发表于 2012-5-25 23:52:22 | 显示全部楼层
print1985 发表于 2012-3-25 15:35
这个可以吗
(defun c:bb(/ n p)
(setq n (getstring "\n请输入块名:"))

[em:3:]朋友你好!我万分激动的看到了你在某帖子中的回复:
(defun c:bb(/ n p)
(setq n (getstring "\n请输入块名:"))
(setq p (getpoint "\n指定插入点:"))
(command "-insert" n p "1" "1" "0" )
(princ)
)
这个程序我找了好久,比较类似,但具体功能我希望是这样的0[em:3:]:我通过快捷键的方式在图纸的指定位置插入我编辑好的xx.dwg文件,比例为1,旋转为0,但是插入进来后不是图块的形式,而是图块分解后的形式,类似于insert命令对话框勾选“分解”的效果,你能帮我吗?谢谢你!我的QQ274157750,焦急等待大神回复[em:11:]!
发表于 2012-5-25 23:55:38 | 显示全部楼层
print1985 发表于 2012-3-25 15:35
这个可以吗
(defun c:bb(/ n p)
(setq n (getstring "\n请输入块名:"))

print1985 你好!我万分激动的看到了你在某帖子中的回复:
(defun c:bb(/ n p)
(setq n (getstring "\n请输入块名:"))
(setq p (getpoint "\n指定插入点:"))
(command "-insert" n p "1" "1" "0" )
(princ)
)
这个程序我找了好久,比较类似,但具体功能我希望是这样的0[em:3:]:我通过快捷键的方式在图纸的指定位置插入我编辑好的xx.dwg文件,比例为1,旋转为0,但是插入进来后不是图块的形式,而是图块分解后的形式,类似于insert命令对话框勾选“分解”的效果,你能帮我吗?谢谢你!我的QQ274157750,焦急等待大神回复[em:11:]!
发表于 2012-5-25 23:58:10 | 显示全部楼层
你看一下 insert 命令的帮助就知道如何才能 "插入进来后不是图块的形式,而是图块分解后的形式"
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-24 14:27 , Processed in 0.178051 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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