找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2776|回复: 26

[编程申请] 求取逐个显示选中的图元的代码

[复制链接]
发表于 2013-7-18 15:24:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
我有这样的设想,就是逐个显示选中的图元。选中图元可以用常青藤来进行,比如筛选出了5个TEXT,内容为“ABC”,或5个直径为3的圆。
由于选中的这些图元分布零散,我就想写一些代码,将这些图元逐个显示。显示时需先计算这个图元的外包围盒的大小,再定视口高度是围盒的大小的4倍大,将窗口缩放到这一图元上。按一个空格键,其它的图元也如此逐个显示。甚至还可以设一个文本框,可以输入数值,设定从第几个开始显示。
请高手帮忙写一下看看,VBA、LISP都行
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-7-18 17:02:54 | 显示全部楼层
1 求出每个 Textbox 逐个 zoom w
2 高版本的有 zoom object 选项
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-7-18 17:52:14 | 显示全部楼层
清风明月10 发表于 2013-7-18 17:06
要有人写一下就好了

  1. (defun c:tt (/ ss e box p)
  2.   (if (setq ss (ssget '((0 . "text"))))
  3.     (progn
  4.       (xdrx_setsstodb ss 0)
  5.       (while (setq e (xdrx_getentdata 0))
  6. (setq box (xdrx_entity_box e))
  7. (xdrx_drawing_zoomw (car box) (caddr box))
  8. (setq p (getpoint "\nPoint: "))
  9. (vl-cmdf ".zoom" "P")
  10.       )
  11.     )
  12.   )
  13.   (princ)
  14. )

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

使用道具 举报

 楼主| 发表于 2013-7-18 18:10:54 | 显示全部楼层
4楼的写得蛮好用,还有一个问题没有解决,就是选中的总数有M个,我想从第N个开始看,怎么写呢?其中N小于等于M

点评

你确定N就是你想的吗? 所以,你还是要先对实体排下序,然后才能心中有数,从哪个看。  详情 回复 发表于 2013-7-18 18:38
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-7-18 18:38:51 | 显示全部楼层
清风明月10 发表于 2013-7-18 18:10
4楼的写得蛮好用,还有一个问题没有解决,就是选中的总数有M个,我想从第N个开始看,怎么写呢?其中N小于等 ...

你确定N就是你想的吗? 所以,你还是要先对实体排下序,然后才能心中有数,从哪个看。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-7-18 18:46:00 | 显示全部楼层
本帖最后由 清风明月10 于 2013-7-18 18:48 编辑

能排序当前更好,不能排序也可以。为什么我说是N呢?因为我检查的目的是修改。比如你上次查到了N-1,修改了N-1,则再查当然是从N开始查了。而且从不重复检查的原则来讲,不排序反而不可能造成重复检查,排序了反而会造成重复检查

点评

你只要开始时候就是对拍好序的检查,那么以后肯定不会出现重复,除非人为。 而选择集建立可不一定每次都是一个顺序的。  详情 回复 发表于 2013-7-18 19:41
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2013-7-18 19:03:14 来自手机 | 显示全部楼层
这些要记录选择集和一个实体做全局变量来自: Android客户端
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-7-18 19:41:39 | 显示全部楼层
清风明月10 发表于 2013-7-18 18:46
能排序当前更好,不能排序也可以。为什么我说是N呢?因为我检查的目的是修改。比如你上次查到了N-1,修改了N ...

你只要开始时候就是对拍好序的检查,那么以后肯定不会出现重复,除非人为。 而选择集建立可不一定每次都是一个顺序的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2013-7-18 19:47:44 | 显示全部楼层
还是希望有人能完善,即从第N个查起

点评

通用函数: XD::SS:ents 获得实体表,你就好找N了。 http://www.xdcad.net/forum/thread-668630-1-1.html  详情 回复 发表于 2013-7-18 20:08
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-7-18 20:08:41 | 显示全部楼层
清风明月10 发表于 2013-7-18 19:47
还是希望有人能完善,即从第N个查起

通用函数: XD::SS:ents 获得实体表,你就好找N了。
http://www.xdcad.net/forum/thread-668630-1-1.html
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2013-7-24 20:36:02 | 显示全部楼层
本帖最后由 wowan1314 于 2013-7-24 20:37 编辑

啊啊
  1. ;从左到右看选择集
  2. (defun c:t11 (/ enbox ss )
  3.     (defun enbox (ename / ll ur)
  4.         (vla-getboundingbox (vlax-ename->vla-object ename) 'll 'ur)
  5.         (mapcar 'vlax-safearray->list (list ll ur))
  6.     )
  7.     (if
  8.         (setq ss (cadr(ssgetfirst))
  9.         )
  10.         (mapcar
  11.             '(lambda(x)
  12.                 (getint "\n空格/右键-看大图")
  13.                 (command "ZOOM" "W" (car x) (cadr x))
  14.             )
  15.             (vl-sort (mapcar 'enbox(cdr(reverse(mapcar 'cadr (ssnamex ss))
  16.                         )
  17.                     )
  18.                 )
  19.                 '(lambda(a b)(< (caar a) (caar b))
  20.                 )
  21.             )
  22.         )
  23.         (alert "没有选择集")
  24.     )
  25.     (princ)
  26. )

点评

老师,你的代码有BUG,它会丢失第一个图元。即第1个图元它不会显示  详情 回复 发表于 2013-7-27 09:24
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-7-27 09:24:36 | 显示全部楼层

老师,你的代码有BUG,它会丢失第一个图元。即第1个图元它不会显示

点评

你试试,从左往右写1-7,再选中它们,运行你的插件,它不是从1开始,而是从2开始  详情 回复 发表于 2013-7-27 13:16
不会吧  发表于 2013-7-27 12:48
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-7-27 13:16:53 | 显示全部楼层
清风明月10 发表于 2013-7-27 09:24
老师,你的代码有BUG,它会丢失第一个图元。即第1个图元它不会显示

你试试,从左往右写1-7,再选中它们,运行你的插件,它不是从1开始,而是从2开始

试验BUG.rar

56.65 KB, 下载次数: 1, 下载积分: D豆 -1 , 活跃度 1

点评

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-19 04:35 , Processed in 0.342789 second(s), 61 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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