天气与日历 切换到窄版

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

[每日一码] 把选择的实体写到外部DWG文件

[复制链接]
  • TA的每日心情
    开心
    昨天 06:36
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    105

    主题

    11

    回帖

    1308

    积分

    管理员

    积分
    1308
    QQ
    发表于 2024-3-14 20:08:34 | 显示全部楼层 |阅读模式
    1. static void WblockIds() {
    2.         resbuf *rb = acutNewRb(RTSTR);
    3.         if (acedGetFileD(L"Export file", nullptr, L"dwg", 32, rb) != RTNORM)
    4.                 return;
    5.         AcString filename = rb->resval.rstring;   acutRelRb(rb);
    6.         ads采用name ss;
    7.         if (acedSSGet(nullptr, nullptr, nullptr, nullptr, ss) != RTNORM)
    8.                 return;
    9.         Adesk::Int32 nSel = 0;
    10.         acedSSLength(ss, &nSel);
    11.         if (nSel == 0) {  acedSSFree(ss); return; }
    12.         AcDbObjectIdArray ids; ids.setPhysicalLength(nSel);
    13.         for (int i = 0; i < nSel; i++) {
    14.                 ads采用name en; acedSSName(ss, i, en);
    15.                 AcDbObjectId id;
    16.                 if (acdbGetObjectId(id, en) == Acad::eOk) ids.append(id);
    17.         }
    18.         acedSSFree(ss);
    19.         Acad::ErrorStatus es;
    20.         AcDbDatabase *pOutputDb = new AcDbDatabase(false);
    21.         es = pOutputDb->readDwgFile(filename, AcDbDatabase::OpenMode::kTryForReadShare);
    22.         AcDbObjectId idModelSpace =
    23.                 AcDbSymbolUtilities::servicesPtr()->blockModelSpaceId(pOutputDb);
    24.         AcDbIdMapping idMap;
    25.         es = acdbCurDwg()->wblockCloneObjects(ids, idModelSpace, idMap, AcDb::DuplicateRecordCloning::kDrcReplace);
    26.         pOutputDb->closeInput(true);
    27.         es = pOutputDb->saveAs(filename);
    28.         delete pOutputDb;
    29. }
    复制代码

     

     

     

     

    [每日一码] 把选择的实体写到外部DWG文件
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

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

    GMT+8, 2024-11-1 13:33 , Processed in 0.129819 second(s), 26 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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