明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1781|回复: 4

[求助]请教ARX高手

[复制链接]
发表于 2002-12-20 10:46:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2002-12-20 10:46:12 编辑

以前一直用ADS,刚刚学习ARX,有一个问题求教各位高手:
已知ads_name,可以得到其AcDbObjectId和AcDbEntity,通过pEnt->isA()->name()也知道是AcDbPolyline,我也知道AcDbPolyline::getPointAt(unsigned int, AcGePoint3d& pt)函数可以得到点,但我如何才能将ads_name与AcDbPolyline关联上?急盼。。。
发表于 2002-12-20 10:44:00 | 显示全部楼层

Use AcDbPolyline Class Query Function

使用AcDbPloyline类的查询函数:
Acad::ErrorStatus AcDbPolyline::getPointAt(unsigned int index, AcGePoint2d& pt) const;
或者
Acad::ErrorStatus AcDbPolyline::getPointAt(unsigned int index,    AcGePoint3d& pt) const;
ARX帮助中有详细说明。
 楼主| 发表于 2002-12-20 10:52:00 | 显示全部楼层

[再求助]

本帖最后由 作者 于 2002-12-20 10:52:15 编辑

多谢斑竹指点:
我也知道AcDbPolyline::getPointAt(unsigned int, AcGePoint3d& pt)函数可以得到点,但我如何才能将ads_name与AcDbPolyline关联上?急盼。。。
发表于 2002-12-20 11:15:00 | 显示全部楼层

这样

假设你已得到了AcDbEntity类的指针pEnt以下代码对你可能有用:
AcDbPloyline *pPLine;
if(pEnt->isKindOf(AcDbPolyline::desc()) /*一般来说,这一句不要省略,它检查pEnt指针是否为AcDbPoloyline类型*/
{
  pPLine=AcDbPloyline::cast(pEnt);/* 所有AcDb实体类都派生自AcRxObject类,cast()函数是AcRxObject类的成员函数,这样调用将返回AcDbPolyline类指针,当然若pEnt不是AcDbPloyline类的,cast()函数返回NULL  */
  //这样就可以针对pPLine调用AcDbPloyline类的成员函数了
  //......
}
 楼主| 发表于 2002-12-20 11:21:00 | 显示全部楼层

thinks

多谢斑竹:我明白了。查了半天help,也找到过这几个函数,就是不会组合着用。以后还望斑竹多指点。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 09:32 , Processed in 0.175685 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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