找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 910|回复: 14

[求助]:acedSSGet()问题

[复制链接]
发表于 2003-10-30 19:05:13 | 显示全部楼层 |阅读模式

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

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

×
rc=acedSSGet("C",p1,p2,NULL,ssName)函数可以选择图形中已存在的实体,但是对于新加入的实体为什么不能选择呢?例如我用创建了一个AcDbText实体,并用pBlockTableRecord->appendAcDbEntity(textId,pText)加入到数据库中,p1,p2肯定通过该实体,可为什么rc返回的不是RTNORM呢?
谢谢大家了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-10-30 19:24:11 | 显示全部楼层
刷新屏幕,有好几个刷新的函数,看看斑助吧
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-10-30 21:25:29 | 显示全部楼层
听了你的建议,我试了很多刷新函数:acedUpdateDisplay(),pText->recordGraphicsModified(),acedCommand(RTSTR,"redraw",0);可是都不行啊,怎么回事呢?
程序如下:
......
        pText=new AcDbText(insPt,gc,textstyleId,2.0,0.0);
        pText->setHorizontalMode(AcDb::kTextLeft);
        pText->setVerticalMode(AcDb::kTextBase);
        pText->setAlignmentPoint(insPt2);
        pText->setWidthFactor(0.8);       
        pBlockTableRecord->appendAcDbEntity(textId,pText);
//         pText->draw();
        pText->recordGraphicsModified();
          pText->close();   
//      acDocManager->unlockDocument(pDoc);
//      AcTransactionManager->flushGraphics();
        acedUpdateDisplay();

        ads_point maxPt,minPt;
        Acad::ErrorStatus es;
        AcDbExtents* extents = new AcDbExtents;      
        if ((es = pText->getGeomExtents(*extents)) != Acad::eOk) {
                pText->close();
                delete extents;
        }
        maxPoint=extents->maxPoint();
        minPoint=extents->minPoint();
        maxPt[X]=maxPoint.x; maxPt[Y]=maxPoint.y; maxPt[Z]=0.0;
        minPt[X]=minPoint.x; minPt[Y]=minPoint.y; minPt[Z]=0.0;       
       
        int rc;
        ads_name ssName;
        rc=acedSSGet("C",minPt,maxPt,NULL,ssName);
        if(rc!=RTNORM)  
        {
                acutPrintf("\nNO entity in BWH");
                flag=111;
        }
......
输出NO entity in BWH,这是怎么回事?请高手帮帮忙。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-10-31 16:24:58 | 显示全部楼层
将pBlockTable与pBlockTableRecord close了,然后再去执行你的acedSSGet函数试试!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 157个

财富等级: 日进斗金

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

使用道具 举报

已领礼包: 192个

财富等级: 日进斗金

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

使用道具 举报

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

使用道具 举报

发表于 2003-11-28 16:11:18 | 显示全部楼层
为什么我刚建立的实体能选择呢
我用acedSSGet("L",NULL,NULL,NULL,ss);
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2003-12-11 15:53:40 | 显示全部楼层
首先要刷新,然后你要让生成的对象在当前视图中,就是人眼要能看到的范围。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-6-7 14:05:12 | 显示全部楼层
我在做BOM表的時候也是,在客戶丟過來的一張圖中,用z-a第一次的時候是正常的,用第二次的時候就錯誤了,那時再用acedSSGet("C",pt1,pt2,NULL,ssname);返回的就不時pt1 和pt2
的Crossing selection 了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-6-8 08:46:28 | 显示全部楼层
pText=new AcDbText(insPt,gc,textstyleId,2.0,0.0);
-------------------^^^^^-请检查此参数的z值。
pText->setHorizontalMode(AcDb::kTextLeft);
pText->setVerticalMode(AcDb::kTextBase);
pText->setAlignmentPoint(insPt2);
----------------------^^^^^-请检查此参数的z值。

maxPt[X]=maxPoint.x; maxPt[Y]=maxPoint.y; maxPt[Z]=0.0;
minPt[X]=minPoint.x; minPt[Y]=minPoint.y; minPt[Z]=0.0;
-------------------------------^^^^^-此处你清z值了。


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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-16 15:25 , Processed in 0.210967 second(s), 59 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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