天气与日历 切换到窄版

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

ArxSetUcs_doit设置视图UCS

[复制链接]

该用户从未签到

主题

0

回帖

2912

积分

管理员

积分
2912
发表于 2024-6-22 09:46:18 | 显示全部楼层 |阅读模式
static void ArxSetUcs_doit(void)
{
        Acad::ErrorStatus es = Acad::eOk;
        {
                AcDbDatabase *pDb =  acdbHostApplicationServices()->workingDatabase();
                AcDbUCSTablePointer pUCSTable(pDb->UCSTableId(), AcDb::kForRead);

                if( (es = pUCSTable.openStatus()) != Acad::eOk )
                {
                        acutPrintf(ACRX_T("Fail %s @ Line %d"),
                                acadErrorStatusText(es), __LINE__);
                        return;
                }

                AcDbViewportTablePointer pViewportTable
                        (pDb->viewportTableId(), AcDb::kForRead);

                if((es = pViewportTable.openStatus()) != Acad::eOk)
                {
                        acutPrintf(ACRX_T("Fail %s @ Line %d"),
                                acadErrorStatusText(es), __LINE__);
                        return;
                }

                AcDbObjectId activeViewPortId;

                if((es = pViewportTable->getAt
                        (_T("*Active"),activeViewPortId)) != Acad::eOk)
                {
                        acutPrintf(ACRX_T("Fail %s @ Line %d"),
                                acadErrorStatusText(es), __LINE__);
                        return;
                }

                AcDbViewportTableRecordPointer
                        pActiveViewportTableRecord
                        (activeViewPortId, AcDb::kForWrite);

                if((es = pActiveViewportTableRecord.openStatus())
                        != Acad::eOk)
                {
                        acutPrintf(ACRX_T("Fail %s @ Line %d"),
                                acadErrorStatusText(es), __LINE__);
                        return;
                }

                if( pUCSTable->has(_T("testUCS") ))
                {
                        AcDbObjectId testUCSId;
                        if( (es = pUCSTable->getAt
                                (_T("testUCS"),testUCSId) ) != Acad::eOk )
                        {
                                acutPrintf(ACRX_T("Fail %s @ Line %d"),
                                        acadErrorStatusText(es), __LINE__);
                                return;
                        }

                        if(!testUCSId.isNull())
                        {
                                pActiveViewportTableRecord->setUcs(testUCSId);
                        }
                }
        }

        if((es = acedVportTableRecords2Vports())
                != Acad::eOk)
        {
                acutPrintf(ACRX_T("Fail %s @ Line %d"),
                        acadErrorStatusText(es), __LINE__);
                return;
        }
}

 

 

 

 

ArxSetUcs_doit设置视图UCS
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-1 10:30 , Processed in 0.149607 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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