找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 884|回复: 10

[求助] [求助]:插入某一图纸,能知道它的大概坐标吗,进来讨论一下

[复制链接]
发表于 2008-5-30 15:00:06 | 显示全部楼层 |阅读模式

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

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

×
天天学习,总是碰到难题,求大家帮解决
通过LISP计算得到STR
然后插入:
(command ".insert" str p0 "1" "1" "0")

现在想问插入的STR图纸能知道其大概坐标吗?
我们的图纸分大,小坐标
如,X,Y坐标 361234,2947890就是大坐标
同一点去掉前面大数如:61234,47890就是小坐标。
大小坐标的图纸名字都一样,看名字是不能判断的,如上面两种情况(1:2000)名字都是61004700.dwg

我想想想这样:如果插入的是大坐标,就移动一下,把前面大数去掉,即移动-300000,-2900000,再插入。
              如果是小坐标就直接插入。

想了几天了,没有想出来呢,不知道怎么解决?

于是院长再提出另外一个思路:
因为每幅图都有一个共同点:有一行字:黄海高程系
能不能打开后,查找字符“黄海高程系”,再调用其坐标属性,然后再判断其是大还是小坐标,再移动....................

大伙看一下,那种简单啊,帮解决一下
我是LISP新手,一直都在努力学啊学,学的不是很好 :)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2008-5-31 15:54:33 | 显示全部楼层
insert后的last应该就是那个图块吧。
这样的问题,格式和规律更重要,不是一个专业可能不好理解。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-5-31 17:26:56 | 显示全部楼层

Re: [求助]:插入某一图纸,能知道它的大概坐标吗,进来讨论一下

最初由 温柔女神 发布
[B]通过LISP计算得到STR
然后插入:
(command ".insert" str p0 "1" "1" "0")

现在想问插入的STR图纸能知道其大概坐标吗?
我们的图纸分大,小坐标
如,X,Y坐标 361234,2947890就是大坐标
同一点去掉前面大数如:61234,47890就是小坐标。
大小坐标的图纸名字都一样,看名字是不能判断的,如上面两种情况(1:2000)名字都是61004700.dwg

我想想想这样:如果插入的是大坐标,就移动一下,把前面大数去掉,即移动-300000,-2900000,再插入。
如果是小坐标就直接插入。 [/B]


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

使用道具 举报

 楼主| 发表于 2008-5-31 17:35:46 | 显示全部楼层
""没法提前判断的话,何不先插入后再判断,再决定是否移动不就解决问题了吗?条条大路通罗马嘛  ""
其实就是插入后判断的,关键是要电脑自动移动。

如果是人工的话,就没有效率了,
人工可以这样的:插入后,就知道它是大坐标还是小坐标了,然后选择移动---慢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 10249个

财富等级: 富甲天下

发表于 2008-5-31 22:25:54 | 显示全部楼层
可以先插入,再用ENTLAST取得刚插入的图块,用VL函数求得图块的最小包围框(网上有很多程序)可以得到图块的大小,再判断是否移动。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-31 23:00:11 | 显示全部楼层
(setq en (entlast))?
某个物体是有属性的,能不能调出 EN 的坐标属性呢
我查了一下VL函数,还是不明白
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2008-6-5 23:37:02 | 显示全部楼层
vla-getboundingbox?
找不到相应的例子,大哥,能否举个简单的例子
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-6-7 16:07:50 | 显示全部楼层
(vla-getboundingbox (vlax-ename->vla-object obj) 'minp 'maxp)
  (setq minp (vlax-safearray->list minp)) ;左下角0
  (setq maxp (vlax-safearray->list maxp)) ;右上角1
  (setq        midp (list (+ (/ (- (car maxp) (car minp)) 2.0) (car minp))
                   (+ (/ (- (cadr maxp) (cadr minp)) 2.0) (cadr minp))
                   (+ (/ (- (caddr maxp) (caddr minp)) 2.0) (caddr minp))
             ) ;中点2
  )
  (setq        lup (list (car minp)
                  (cadr maxp)
                  0
            ) ;左上角点3
  )
  (setq        rdp (list (car maxp)
                  (cadr minp)
                  0
            ) ;右下角点4
  )
  (list minp midp maxp lup rdp);左下角点、中心点、右上角点、左上角点、右下角点
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3256个

财富等级: 富可敌国

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-25 12:23 , Processed in 0.350598 second(s), 51 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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