找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: ljfzx

[已解决] 如何提取动态块中的查询参数并标注在图框旁边?

[复制链接]

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-22 23:26:12 | 显示全部楼层

实在麻烦您了,我加载了这个lsp并且输入了XD::Table:MakeFromList提示未知命令“XD::TABLE:MAKEFROMLIST”。按理说加载是可以的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-10-22 23:26:46 | 显示全部楼层

提示的这些 XD::xxx:xxx 函数都在 开源函数库论坛里面,你可以搜索拷贝回去。

不过,你通用LISP函数库加载不了,说明你的系统有问题,这个不解决,论坛上的插件你拷贝回去都用不了的,还是先把这个解决了吧,试试重装个版本的CAD ?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-22 23:28:13 | 显示全部楼层

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-10-22 23:28:44 | 显示全部楼层

XD::TABLE:MAKEFROMLIST只是个函数,不是命令,你不能直接运行它的, 要运行我上面写的程序命令 TT。


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

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-22 23:29:31 | 显示全部楼层

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-10-22 23:32:27 | 显示全部楼层

最好装2个版本,低版本装个2008.  装后, API 安装程序重新安装下。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-22 23:45:22 | 显示全部楼层
本帖最后由 ljfzx 于 2016-10-23 00:03 编辑

重装CAD12之后可以使用了,装了08也没问题,现在就是想不需要那个表格,只需要一行字,显示图纸大小和比例,固定4000高度,位置大概在图中所示方框位置,不知道可不可以实现,而且这样一个一个选图框有点麻烦,实际中肯定很多图,可不可以框选所有图框并在上方生成这样的字段


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

使用道具 举报

已领礼包: 6470个

财富等级: 富甲天下

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-10-23 01:32:14 | 显示全部楼层

多选的版本,如果成,希望做个动画贴到论坛来。

(defun c:tt ( / blk box cc cc1 h mtext pt scl ss txt x y)
  (prompt "\n拾取图框<退出>:")
  (if (setq ss (ssget '((0 . "insert"))))
    (progn
      (xd::text:init 1)
      (mapcar
        '(lambda (blk)
           (if (and
                 (xdrx_dynblock_isDyn blk)
                 (setq x (xdrx_dynblock_GetValue blk "X向距离"))
                 (setq y (xdrx_dynblock_GetValue blk "Y向距离"))
                 (setq cc (xdrx_dynblock_GetValue blk "图纸尺寸"))
                 (setq cc1 (xdrx_string_regexps "[^+]+" cc))
                 (setq scl (xdrx_getpropertyvalue blk "scalefactors"))
               )
             (progn
               (setq pt (xd::geom:get9pt blk 8)
                     txt (strcat "图纸尺寸:" (xdrx_prompt (/ y 100) "X"
                                                          (/ x 100) t
                                             ) "\\P" "规    格:"
                                 (if (> (length cc1) 1)
                                   (strcat (car cc1) "加长" (last cc1))
                                   (car cc1)
                                 )
                         )
               )
               (setq mtext (xdrx_mtext_make pt txt 15000 1000)
                     box (xdrx_entity_box mtext)
                     h (cadr (mapcar '- (last box)(car box)))
               )
               (xdrx_entity_scale mtext  (/ 4000.0 h) (xd::geom:get9pt mtext 1))
               (xdrx_entity_move mtext (xd::geom:get9pt mtext 2) (mapcar '+ '(0 1000 0) pt))
             )
           )
         )
        (xdrx_pickset->ents ss)
      )
    )
  )
  (princ)
)


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

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-23 09:30:12 | 显示全部楼层

附上程序的GIF图


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

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-23 09:33:43 | 显示全部楼层

前辈,还有两个小问题:
1:我想要的其实是类似这种单行文字,高4000,紧贴图框放在上方,显得清晰明了


QQ截图20161023092930.png


2.每次打开CAD都会自动弹出XD API的界面,我的CAD显得好卡,可不可以不用自动加载这个API库,每次用您的程序的时候在手动加载这个库?

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2016-10-23 16:07:06 来自手机 | 显示全部楼层
动态块的值都在value属性,前提是这个属性名称只有自己知道
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-23 21:28:54 | 显示全部楼层

不行,按照您说的修改之后,这个插件就不生成多行文字了,什么都没有
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-10-23 22:14:32 | 显示全部楼层

是你没改对,简单的替换就行了

(defun c:tt ( / blk box cc cc1 h mtext pt scl ss txt x y)
  (prompt "\n拾取图框<退出>:")
  (if (setq ss (ssget '((0 . "insert"))))
    (progn
      (xd::text:init 1)
      (mapcar
        '(lambda (blk)
           (if (and
                 (xdrx_dynblock_isDyn blk)
                 (setq x (xdrx_dynblock_GetValue blk "X向距离"))
                 (setq y (xdrx_dynblock_GetValue blk "Y向距离"))
                 (setq cc (xdrx_dynblock_GetValue blk "图纸尺寸"))
                 (setq cc1 (xdrx_string_regexps "[^+]+" cc))
                 (setq scl (xdrx_getpropertyvalue blk "scalefactors"))
               )
             (progn
               (setq pt (xd::geom:get9pt blk 8)
                     txt (strcat  "规    格:"
                                 (if (> (length cc1) 1)
                                   (strcat (car cc1) "+" (last cc1))
                                   (car cc1)
                                 )
                         )
               )
               (setq mtext (xdrx_mtext_make pt txt 15000 1000)
                     box (xdrx_entity_box mtext)
                     h (cadr (mapcar '- (last box)(car box)))
               )
               (xdrx_entity_scale mtext  (/ 4000.0 h) (xd::geom:get9pt mtext 1))
               (xdrx_entity_move mtext (xd::geom:get9pt mtext 2) (mapcar '+ '(0 1000 0) pt))
             )
           )
         )
        (xdrx_pickset->ents ss)
      )
    )
  )
  (princ)
)

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

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-23 22:36:35 | 显示全部楼层

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-18 10:20 , Processed in 0.512260 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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