找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: 贱人

[测试]:一键快速打印的lsp,请ll_j、它山之石、xyp1964还有斑竹来看看

[复制链接]
发表于 2005-3-10 09:07:32 | 显示全部楼层
最初由 贱人 发布
[B]开始怀疑我的机器不正常
命令: wplot
*** 模型空间批量打印软件V050222 ***
        [晓东论坛作品]; 错误: no function definition: XDRX_ENTSEL [/B]


        不好意思,俺用到了一个晓东API中的函数XDRX_ENTSEL,你中要加载xdrx_api14.arx就可以了。


  1. xdrx_entsel

  2. 功    能:单选符合过滤表条件的实体,LISP 函数(entsel)的增强。并将该实体的(entget)实体数
  3.           据存入XDRX内部数据库的ARX变量,供相关函数调用。

  4. 调用格式:(xdrx_entsel <提示字符串> [英文层名或中文索引层名] [实体选择项] [SSGET过滤表])

  5. 说    明:1.若提供SSGET过滤表如'((8 . "a*")(0 . "*line")...),若SSGET过滤表中提供层组码8,
  6.             则忽略前面的[英文层名或中文索引层名]。
  7.             若SSGET过滤表中没有提供层组码8,若前面设置了 [英文层名或中文索引层名],则将
  8.             英文层面用(cons 8 ename),若中文索引,则求出中文索引对应的英文层名后,加入
  9.             SSGET过滤表中。
  10.           2.[实体选择项] 值为0,1,2, 若给其他值,函数返回NIL退出。
  11.           3.[实体选择项]含义:(不提供,默认为0)
  12.             若符合条件的实体不是一个(如有重复实体,或拾取框中范围符合条件的实体多于一个)
  13.                 0:返回任意一个符合条件的提示和最近捕捉点
  14.                 1:弹出选项 请选取符合条件的实体/X-退出/Y-确定/<下一个>:
  15.             若输入X,则退出函数,返回NIL.
  16.             若输入Y,则返回当前亮显的实体名和最近捕捉点
  17.             输入回车(或鼠标右键),则循环亮显实体,供用户选择,直到输入Y确认为止。

  18. 提    示: 允许配合使用函数(initget)。

  19. 返 回 值:成功返回表(图元名 最近捕捉点), 失败返回 nil。

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

使用道具 举报

 楼主| 发表于 2005-3-12 14:43:35 | 显示全部楼层
它兄啊,别搞那么复杂啊,能不能把4楼的那个你试成功的lsp传上来,我索性把我机器里的打印机、样式按你的lsp里的改,只想通过一次
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2005-3-14 12:45:23 | 显示全部楼层
最初由 贱人 发布
[B]它兄啊,别搞那么复杂啊,能不能把4楼的那个你试成功的lsp传上来,我索性把我机器里的打印机、样式按你的lsp里的改,只想通过一次 [/B]


  你如果不想加载晓东API,只要将15楼程序中的xdrx_entsel函数替换成CAD中标准的entsel函数即可。
  这很复杂吗?俺只是觉得你那个程序功能需要增强才修改的。
    另外,4楼的程序就可以运行正确,而且提供的是源码。俺刚又试了一下。关键你要输入正确的图框的图块名。直接回车的话就是程序隐含的“BASE”图块,可能会出错。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-17 16:51:41 | 显示全部楼层
请问 (setq ss (ssget "x" (list '(0 . "INSERT") (cons 2 BlkName))))

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

使用道具 举报

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

使用道具 举报

发表于 2005-3-18 08:54:46 | 显示全部楼层
我的块参照是*U18  , 有'(0 . "INSERT") 时选不中,

为什么(setq ss (ssget "x" (list (cons 2 BlkName))))还会出错?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-18 12:06:21 | 显示全部楼层
你可以将过滤图层的语句注释掉。
[php]
(setq        BlkName        (car (xdrx_entsel
                       "\n选择图框<回车点选打印范围>"
                       '((0 . "INSERT") (8 . "TK"))
                     ) ;_ 结束xdrx_entsel
                ) ;_ 结束car
  ) ;_ 结束setq
[/php]
改为
[php]
  (setq        BlkName        (car (xdrx_entsel
                       "\n选择图框<回车点选打印范围>"
                       '((0 . "INSERT") )
                     ) ;_ 结束xdrx_entsel
                ) ;_ 结束car
  ) ;_ 结束setq
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-19 15:47:59 | 显示全部楼层
谢谢它山之石:

其它都正常了,就下面这条语句“选择总是 nil ”
(setq ss (ssget "x" (list '(0 . "INSERT") (cons 2 Blk_Name))))

(ACAD2002环境下其它版本下没试过)程序很有用,只有全部打印搞不定。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-20 11:42:02 | 显示全部楼层
俺用的很正常,没有你说的问题。
你运行程序时命令行是否出现了以下提示:
“图形文件中共有名为 [ A1 ] 的图框 2 个”


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

使用道具 举报

发表于 2005-3-20 12:48:27 | 显示全部楼层
Blk_Name 变量的值为 "*U18" 正常.

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

使用道具 举报

发表于 2005-3-20 16:26:41 | 显示全部楼层
晕,“*U18”是无名块。
你可以搜一下论坛,关于无名块有很多主题。
你插入的图框总有正式的块名吧。
换个图块试试吧。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-5-13 22:18:19 | 显示全部楼层
对于打印的操作,我建议使用Vlisp的ActiveX/COM接口,用命令接口变化太复杂了。

我这里有一个做得比较完整的模型空间批量程序,有对话框,使用Vlisp实现。如果只是要用用的话,可以试试:
http://quelea.w3.zccn.net/blogview.asp?logID=41&cateID=2
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 23个

财富等级: 恭喜发财

发表于 2005-5-14 10:17:57 | 显示全部楼层
vla-getboundingbox在矩形对象与UCS非正交状态下,返回结果是不对的.
所以按上面的这些程序,还不能完全达到实际工作的要求,需要作进一步的改进.

我以前写的和这个类似的(可以任意角度任意比例,任意或指定图框的BlockName,指定比例自动出图比例...)至今没有最后完善,是自己太懒了...
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-5-16 08:39:58 | 显示全部楼层
  两位斑主所言极是,这个程序通用性不好。秋枫斑主的程序俺也有用过。不过俺认为这个小程序完全满足了俺自己的打印要求。合适的就是最好的。正可谓是杀鸡不用宰牛刀。更何况还有些收钱的所谓商业或共享软件。不合吾意,当然放弃。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-14 14:13 , Processed in 0.227194 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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