获取ARX实体的DXF信息

ARX 专栏收录该内容
14 篇文章 0 订阅

下面介绍两种: 一种是在ARX程序中,一种是在CAD中,获取DXF信息

 

1. 在CAD中,可以在Command中输入以下信息,然后点选实体,就可以获取到实体的信息:

命令: (entget(car(entsel)))
命令: (entsel)
选择对象: (<图元名: 7ffffb05380> (792.588 573.405 0.0))

命令: (car(entsel))
选择对象: <图元名: 7ffffb05380>

命令: (entget(car(entsel)))
选择对象: ((-1 . <图元名: 7ffffb05380>) (0 . "TEXT") (330 . <图元名: 7ffffb039f0>) (5 .
"140") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "注释层") (100 .
"AcDbText") (10 789.655 572.652 0.0) (40 . 2.5) (1 . "未命名") (50 . 0.0) (41 .
1.0) (51 . 0.0) (7 . "Standard") (71 . 0) (72 . 0) (11 0.0 0.0 0.0) (210 0.0
0.0 1.0) (100 . "AcDbText") (73 . 0))

 

2. 在Arx程序中,通过这这个函数实现获取

函数:acdbEntGet

struct resbuf *

acdbEntGet(const ads_name ent);

Retrieves the specified entity from the drawing database and returns its definition data as a linked list of result buffers. This function is used also to examine dictionaries.

例如,在已知objid情况下,获取信息:

ads_name ads;
acdbGetAdsName(ads, objid);
resbuf* pResbuf = acdbEntGet(ads);

resbuf* pNext = pResbuf;
for (; pNext != NULL; pNext=pNext->rbnext)
{
      if (pNext->restype == 0)
      { // DXF == 0时,内容为String型,代表类型名称,例如 TEXT
            break;
     }
}

Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu  转载请标明来源 

  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值