天气与日历 切换到窄版

 找回密码
 立即注册
中国膜结构网
十大进口膜材评选 十大国产膜材评选 十大膜结构设计评选 十大膜结构公司评选
查看: 66|回复: 0

ObjectArx块内元素显示排序 获取块排序表对象

[复制链接]

该用户从未签到

主题

0

回帖

2912

积分

管理员

积分
2912
发表于 2024-6-22 09:46:18 | 显示全部楼层 |阅读模式
AcDbSortentsTable * getSortentsTable(AcDbBlockTableRecord * pRec)
{
    if (!pRec)
        return NULL;
    Acad::ErrorStatus es;
    AcDbObjectId ext_id = pRec->extensionDictionary();
    if (AcDbObjectId::kNull == ext_id)
    {
        pRec->upgradeOpen();
        es = pRec->createExtensionDictionary();
        if (es != eOk)
            return NULL;
        pRec->downgradeOpen();
        ext_id = pRec->extensionDictionary();
        if (AcDbObjectId::kNull == ext_id)
        {
            return NULL;
        }
        pRec->downgradeOpen();
    }
    AcDbDictionary *pExt;
    es = acdbOpenObject(pExt, ext_id, AcDb::kForRead);
    if (Acad::eOk != es)
        return NULL;
    AcDbObject *pObj;
    if (Acad::eOk != pExt->getAt(_T("ACAD_SORTENTS"), pObj, AcDb::kForWrite))
    {
        if (Acad::eOk != pExt->upgradeOpen())
        {
            pExt->close();
            return NULL;
        }
        AcDbSortentsTable *pSt = new AcDbSortentsTable;
        if (NULL == pSt)
        {
            pExt->close();
            return NULL;
        }
        AcDbObjectId new_id;
        if (Acad::eOk != pExt->setAt(_T("ACAD_SORTENTS"), pSt, new_id))
        {
            delete pSt;
            pExt->close();
            return NULL;
        }
        pSt->setBlockId(pRec->objectId());
        pObj = pSt;
    }
    pExt->close();
    if (!pObj->isKindOf(AcDbSortentsTable::desc()))
    {
        pObj->close();
        return NULL;
    }
    return (AcDbSortentsTable*)pObj;
}

 

 

 

 

ObjectArx块内元素显示排序 获取块排序表对象
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|中国膜结构网|中国膜结构协会|进口膜材|国产膜材|ETFE|PVDF|PTFE|设计|施工|安装|车棚|看台|污水池|中国膜结构网_中国空间膜结构协会

GMT+8, 2024-11-1 11:44 , Processed in 0.112571 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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