常用对象类型之间的转换

ads_point 是原来的ADS 编程中定义的一种数据类型,其定义为:
typedef ads_real ads_point[3];
而ads_real 则被定义为:
typedef double ads_real;
可以看出,ads_point 实际上是一个三维浮点数组,它至今仍在与ADS 相关的编程中使
用。从ads_point 转换到AcGePoint3d 类型的点,即可以通过数组元素直接赋值,也可以通过
asPnt3d 函数直接转化:
? 通过数组元素交换:
ptInsert[X] = pt[X];
ptInsert[Y] = pt[Y];
ptInsert[Z] = pt[Z];
? 使用asPnt3d 函数(需要包含geassign.h 头文件):
AcGePoint3d ptInsert = asPnt3d(pt);
AcGePoint3d (AcGePoint2d )转换 ads_point 用:asDblArray函数。

获取ads_point点函数:

acedGetPoint

选择实体,获取实体的ads_name,ads_point

acedEntSel

获取实体ads_name

acedSSName

ads_point与AcGePoint3d、AcGePoint2d之间的转换

asPnt3d、asPnt2d

asDblArray

获取选择集函数

acedSSGet

ads_name转换成AcDbObjectId的函数:

AcDbGetObject

AcDbHandle/AcDbObjectID/AcDbObject/ads_name之间的转换
AcDbDatabase::getAcDbObjectId() // AcDbHandle=> AcDbObjectID
acdbOpenAcDbObject() // AcDbObjectId =>AcDbObject
AcDbObject:objectId() // AcDbObject =>AcDbObjectId
AcDbObject::getAcDbHandle() // AcDbObject =>AcDbHandle
acdbGetObjectId() // ads_name => AcDbObjectId
acdbGetAdsName() // AcDbObjectId => ads_name


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值