天气与日历 切换到窄版

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

C++ AcDbObjectId::asOldId方法代碼示例

[复制链接]

该用户从未签到

主题

0

回帖

2912

积分

管理员

积分
2912
发表于 2024-6-22 09:46:18 | 显示全部楼层 |阅读模式
[code]在下文中一共展示了AcDbObjectId::asOldId方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於我們的係統推薦出更棒的C++代碼示例。

示例1: acutPrintf
▲ 點讚 9 ▼
void
AsdkWblockReactor::otherWblock(AcDbDatabase*  pDestDb,
                               AcDbIdMapping& idMap,
                               AcDbDatabase*  pSrcDb)
{
    AcDbBlockTable       *pDestBlockTable;
    AcDbBlockTableRecord *pDestBTR;

    pDestDb->getSymbolTable(pDestBlockTable, AcDb::kForRead);
    pDestBlockTable->getAt(ACDB_MODEL_SPACE,
        pDestBTR, AcDb::kForRead);
    pDestBlockTable->close();

    // Now pDestBTR is pointing to pSrcDb database's Model
    // Space not to the destination database's Model Space!
    // The code above is not correct!

// END CODE APPEARING IN SDK DOCUMENT.

    acutPrintf("\nIncorrect destination BTR's ObjectId is \t\t%Ld",
        pDestBTR->objectId().asOldId());
    pDestBTR->close();

    AcDbBlockTable *pSrcBlockTable;
    AcDbObjectId    srcModelSpaceId;
    pSrcDb->getSymbolTable(pSrcBlockTable, AcDb::kForRead);
    pSrcBlockTable->getAt(ACDB_MODEL_SPACE,
        srcModelSpaceId);
    pSrcBlockTable->close();

    acutPrintf("\nSource Database's Model Space BTR's ObjectId is \t%Ld",
        srcModelSpaceId.asOldId());
}
開發者ID:kevinzhwl,項目名稱:ObjectARXMod,代碼行數:33,代碼來源:othrwblk.cpp


示例2: AsdkSelectionFilterUI_SubentSel
▲ 點讚 7 ▼
    // ----- AsdkSelectionFilterUI.SubentSel command (do not rename)
    static void AsdkSelectionFilterUI_SubentSel(void)
    {
        // we have to allow duplicates; otherwise, the xref would be selectable
        // only once (because the main entity is the one that counts).

        setAllowDuplicateSelection(curDoc(), true);
        ads_name sset, eName;
        AcDbObjectId id;

        // "_:n" gives us nested entities
        //
        if (RTNORM == acedSSGet("_:n", NULL, NULL, NULL, sset))
        {
            acutPrintf("\n");
            long len = 0;
            acedSSLength(sset, &len);
            for (long i = 0; i < len; i++)// For each entity in sset
            {

                resbuf *rb = NULL;
                // We use ssnamex() here, because the regular ssname()
                // would give only the main entity (the xref)
                //
                if (RTNORM == acedSSNameX(&rb, sset, i))//Get the sub entity
                {
                    resbuf *rbWalk = rb;
                    while (NULL != rbWalk)
                    {
                        if (RTENAME == rbWalk->restype)
                        {
                            eName[0] = rbWalk->resval.rlname[0];
                            eName[1] = rbWalk->resval.rlname[1];
                            if(Acad::eOk == acdbGetObjectId(id, eName))
                            {
                                acutPrintf("Entity %d: <%x>", i, id.asOldId());
                                AcDbEntity *pEnt;
                                if (Acad::eOk == acdbOpenObject(pEnt, id, AcDb::kForRead))
                                {
                                    acutPrintf("(%s)\n", pEnt->isA()->name());
                                    pEnt->close();
                                }
                                else
                                    acutPrintf("\nCouldn't open object");
                            }
                            rbWalk = NULL; //force quit out of loop
                        }
                        else
                            rbWalk = rbWalk->rbnext;
                    }
                    acutRelRb(rb);
                }
            }
            acedSSFree(sset);
        }

        setAllowDuplicateSelection(curDoc(), false);
    }
開發者ID:kevinzhwl,項目名稱:ObjectARXMod,代碼行數:58,代碼來源:acrxEntryPoint.cpp

示例3: acdbOpenAcDbObject
▲ 點讚 5 ▼
void
AsdkWblockReactor::otherWblock(AcDbDatabase*  pDestDb,
                               AcDbIdMapping& idMap,
                               AcDbDatabase*  pSrcDb)
{
    // To find the destination Model Space,  you must look
    // it up in the ID map:

    AcDbBlockTable *pSrcBlockTable;
    pSrcDb->getSymbolTable(pSrcBlockTable, AcDb::kForRead);

    AcDbObjectId srcModelSpaceId;
    pSrcBlockTable->getAt(ACDB_MODEL_SPACE,
        srcModelSpaceId);
    pSrcBlockTable->close();

    AcDbIdPair idPair;
    idPair.setKey(srcModelSpaceId);
    idMap.compute(idPair);

    AcDbBlockTableRecord *pDestBTR;
    acdbOpenAcDbObject((AcDbObject*&)pDestBTR,
        idPair.value(), AcDb::kForRead, Adesk::kTrue);

// END CODE APPEARING IN SDK DOCUMENT.

    acutPrintf("\nCorrect destination BTR's ObjectId is:\t\t%Ld",
        pDestBTR->objectId().asOldId());
    pDestBTR->close();

    // Incorrect way done here so that the wrong value can be
    // compared to the correct value
    //
    AcDbBlockTable *pDestBlockTable;
    pDestDb->getSymbolTable(pDestBlockTable, AcDb::kForRead);
    pDestBlockTable->getAt(ACDB_MODEL_SPACE,
        pDestBTR, AcDb::kForRead);
    pDestBlockTable->close();

    acutPrintf("\nIncorrect destination BTR's ObjectId is \t\t%Ld",
        pDestBTR->objectId().asOldId());
   
    pDestBTR->close();

    // source database Model Space BTR's ObjectId is shown to
    // demonstrate that this is what the incorrect method gets
    //
    pSrcDb->getSymbolTable(pSrcBlockTable, AcDb::kForRead);
    pSrcBlockTable->getAt(ACDB_MODEL_SPACE,
        srcModelSpaceId);
    pSrcBlockTable->close();

    acutPrintf("\nSource Database's Model Space BTR's ObjectId is \t%Ld",
        srcModelSpaceId.asOldId());
}
開發者ID:kevinzhwl,項目名稱:ObjectARXMod,代碼行數:55,代碼來源:othrwblk.cpp


示例4: CmdException
▲ 點讚 2 ▼
void Jig3d::init(const AcDbObjectId& idEntity,const AcGePoint3d& refPoint,int viewportNumber) throw(CmdException)
{
    m_int.m_idEntity    = idEntity;
    m_refPoint          = refPoint;
    AcGsManager * pMan  = acgsGetGsManager();
    if (pMan==NULL)
        throw CmdException("Cannot get Gs manager");

    AcGsView * pView    = acgsGetGsView (viewportNumber, false);
    if (pView==0)
        throw CmdException("Perform this command in a 3d View.  Use the shademode command to activate one.");

    m_MSBObjectID       = GetModelSpaceBlockID();
    if (m_MSBObjectID.asOldId() == 0)
        throw CmdException("Unable to retrieve modelspace block ID");

    m_pModel            = pMan->getDBModel();
    if (m_pModel==NULL)
        throw CmdException("Unable to retrieve AcDb AcGsModel");

    m_pModel->onAdded  (&m_int, m_MSBObjectID.asOldId());
    m_mode = kMove;
}
開發者ID:kevinzhwl,項目名稱:ObjectARXMod,代碼行數:23,代碼來源:jig3dcmd.cpp

示例5: setSpecialCursorType
▲ 點讚 1 ▼
AcEdJig::DragStatus Jig3d::sampler()
{
    setSpecialCursorType(AcEdJig::kRubberBand);
    AcGePoint3d pt;
    AcEdJig::DragStatus status;
    double angle;
    if (m_mode == kMove){
        setKeywordList("Base X Y Z Exit");
        status = acquirePoint(pt,m_refPoint);
    } else {
        setKeywordList("Exit");
        //acquireAngle seems to have a defect
        //I'm applying the following temporary
        //workaround:
        status = acquirePoint(pt,m_refPoint);
        angle = acutAngle(asDblArray(pt),asDblArray(m_refPoint));
    }

    if (pt == m_LastPoint)      // if there is no work to be done,
        return status;          // exit early!
    m_LastPoint = pt;

    if (status == AcEdJig::kNormal){
        switch (m_mode)
        {
        case kMove:
            m_xformTemp = AcGeMatrix3d::translation(pt-m_refPoint);
            m_int.setTransform(m_xformTemp*m_xform);
            break;
        case kRotateX:
            m_xformTemp = AcGeMatrix3d::rotation(angle,AcGeVector3d::kXAxis,m_refPoint);
            m_int.setTransform(m_xformTemp*m_xform);
            break;
        case kRotateY:
            m_xformTemp = AcGeMatrix3d::rotation(angle,AcGeVector3d::kYAxis,m_refPoint);
            m_int.setTransform(m_xformTemp*m_xform);
            break;
        case kRotateZ:
            m_xformTemp = AcGeMatrix3d::rotation(angle,AcGeVector3d::kZAxis,m_refPoint);
            m_int.setTransform(m_xformTemp*m_xform);
            break;
        }
        m_pModel->onModified(&m_int, m_MSBObjectID.asOldId());

    }
    return status;
}
開發者ID:kevinzhwl,項目名稱:ObjectARXMod,代碼行數:47,代碼來源:jig3dcmd.cpp


示例6: OnBnClickedBtnSelect
▲ 點讚 1 ▼
void CDlgReadInfo::OnBnClickedBtnSelect()
{
    //交互選擇實體
    BeginEditorCommand();

    CString strCadName;
    CComboBox* pCmb = (CComboBox*)GetDlgItem(IDC_COMBO_CADLY);
    pCmb->GetLBText(pCmb->GetCurSel(),strCadName);

   
    ads_name ssName;
    struct resbuf *filter=NULL;
    if(strCadName.CompareNoCase("所有圖層") != 0)
    {
        filter=acutNewRb(AcDb::kDxfLayerName);
        filter->restype=AcDb::kDxfLayerName;
        filter->resval.rstring = (char*) malloc((strCadName.GetLength()+1)*sizeof(char));
        strcpy(filter->resval.rstring,strCadName.GetBuffer(0));
        filter->rbnext=NULL;
    }
   
    if (acedSSGet(":S", NULL, NULL, filter, ssName) != RTNORM)
    {
        acutPrintf("\n選擇實體有誤!");
        acedSSFree(ssName); acutRelRb(filter);
        CompleteEditorCommand();
        return;
    }
    if(filter != NULL) acutRelRb(filter);

    AcDbObjectId tempObjId;
    ads_name ssTemp;
    long nNum = 0;
    int nPos = 0;
    acedSSLength(ssName,&nNum);
    CString strSdeName,strId,strRowId;

    m_wndTree.DeleteAllItems();

    // 清空屬性列表
    ResetListItems();

    for(int i=0; i<nNum; i++)
    {
        acedSSName(ssName, i, ssTemp);
        if(Acad::eOk != acdbGetObjectId(tempObjId, ssTemp)) continue;
        strId.Format("%d",tempObjId.asOldId());
        CDistXData tempXData(tempObjId,"ROWID_OBJS");
        if(tempXData.Select("SDELYNAME",strSdeName)==FALSE) continue;
        if(tempXData.Select("OBJECTID",strRowId)==FALSE) continue;
        tempXData.Close();

        HTREEITEM hItem = m_wndTree.InsertItem(strId);

        AcDbEntity *pEnt = NULL;
        if (Acad::eOk != acdbOpenObject(pEnt, tempObjId, AcDb::kForRead))
        {
            return;
        }
        pEnt->close();

        ITEM_DATA xxItemData;
        xxItemData.strID = strId;
        xxItemData.strSdelayerName = strSdeName;
        xxItemData.strCadLayerName = pEnt->layer();
        xxItemData.strRowId = strRowId;

        mapItemData[strId] = xxItemData;

        nPos++;
    }
   
    acedSSFree(ssName);

    CompleteEditorCommand();

    if (m_wndTree.GetCount() <= 0)
    {
        return;
    }

    HTREEITEM hItem = m_wndTree.GetFirstVisibleItem();

    // 顯示屬性
    OnSelectChanged(hItem);
}[/code]

 

 

 

 

C++ AcDbObjectId::asOldId方法代碼示例

该用户从未签到

主题

0

回帖

0

积分

管理员

积分
0
发表于 2024-7-28 09:28:43 | 显示全部楼层
  法拉利膜材作为一种高性能的建筑材料,在建筑、汽车及广告等多个领域有着广泛的应用。以下是对法拉利膜材型号、特点及优点的详细分析:
[img]http://www.mjgou.com/data/attachment/forum/202403/13/223041uiqmeujen4jjj6zv.jpg[/img]
[b]一、法拉利膜材型号[/b]
法拉利膜材有多种型号,包括但不限于以下几种:1302 S2 Flexlight Advanced:这是一种高性能IV型柔性复合膜材,以其卓越的透光性、耐久性和易维护性而受到青睐。942、1202 S2、1002 S2、902 S2、1212 S2、912 S2:这些型号同样属于法拉利膜材系列,各自具有不同的特性和适用范围,但具体特点需根据具体型号进一步分析。需要注意的是,法拉利膜材的型号可能随着产品更新换代而有所变化,具体型号及其特性请参考最新产品资料。
[img=860,1255]http://www.mjgou.com/data/attachment/forum/202403/13/223254bbblwlbvbvsbwlsl.jpg[/img]
[b]二、法拉利膜材特点[/b]
法拉利膜材的特点主要体现在以下几个方面:
1、高强度与耐用性:法拉利膜材采用高强度材料制成,具有良好的抗拉强度和撕裂强度,能够承受较大的外力作用而不易破损。耐用性强,能够在恶劣气候条件下保持稳定的性能,延长使用寿命。
2、透光性与美观性:部分型号如1302 S2 Flexlight Advanced具有高透光性,能够在保持室内光线充足的同时,提供清晰的视野。膜材表面平整光滑,色彩丰富多样,能够满足不同建筑和装饰需求,提升整体美观性。
3、轻质与灵活性:法拉利膜材重量较轻,便于运输和安装,能够降低施工成本和时间。膜材具有一定的柔韧性,能够适应各种复杂形状和结构的设计要求。
4、环保与可回收性:法拉利膜材符合环保要求,部分材料可回收利用,减少了对环境的影响。
[img]http://www.mjgou.com/data/attachment/forum/202403/13/223128owhn0099rrds5h5y.jpg[/img]
[b]三、法拉利膜材优点[/b]
法拉利膜材的优点主要体现在以下几个方面:
1、提升建筑性能:高强度与耐用性使得法拉利膜材能够提升建筑的稳定性和安全性,延长使用寿命。透光性与美观性使得建筑内部光线充足、视野开阔,同时提升整体美观度。
2、降低施工成本:轻质特性使得运输和安装成本降低,施工效率提高。膜材的柔韧性使得施工更加灵活多变,能够适应各种复杂地形和结构要求。
3、节能环保:部分材料可回收利用,符合环保要求,减少了对环境的影响。良好的透光性能够减少室内照明需求,降低能耗。
4、广泛应用领域:
法拉利膜材不仅适用于建筑领域(如体育设施、商业设施、文化设施、交通设施等),还广泛应用于汽车及广告领域(如高档车辆贴膜保护和装饰、广告招贴等),展现出其多功能的特性。

综上所述,法拉利膜材以其高强度、耐用性、透光性、美观性、轻质灵活性以及环保可回收性等优点,在建筑、汽车及广告等多个领域发挥着重要作用。具体型号的选择应根据实际需求和应用场景进行综合考虑。
[url=http://www.mjgou.com/forum-17-1.html][size=91883][color=Red]法拉利膜材中国代理商 - 膜结构网[/color][/size][/url]
C++ AcDbObjectId::asOldId方法代碼示例

该用户从未签到

主题

0

回帖

2

积分

新手上路

积分
2
发表于 2024-8-6 10:42:43 | 显示全部楼层
丹氟斯膜材 PTFE膜材详细介绍
[b]一、丹氟斯膜材概述[/b]
丹氟斯膜材作为一种高品质的建筑材料,在市场上享有较高的声誉。其中,PTFE(聚四氟乙烯)膜材是丹氟斯品牌下的一种重要产品。PTFE膜材因其独特的性能和广泛的应用领域而备受关注。
[b]二、PTFE膜材的基本信息[/b]
1. 材质组成
PTFE膜材是一种由聚四氟乙烯(PTFE)树脂制成的合成材料,也被称为聚四氟乙烯。这种膜材是在超细玻璃纤维织物上涂上聚四氟乙烯树脂而成的,具有优良的物理和化学性能。
2. 外观与颜色
PTFE膜材的外观通常为白色或略带黄色,表面光滑,具有纤维状结构。其膜面颜色为乳白、半透明,具有较高的光线反射率(70~80%)和一定的透光率(10~50%)。
[b]三、PTFE膜材的性能特点[/b]
1. 高强度
PTFE膜材的最大特点是强度高,即使厚度较薄,其拉伸强度也能达到较高水平,甚至可与钢材相媲美。这使得PTFE膜材在承受结构荷载方面表现出色。
2. 耐高温与耐腐蚀
PTFE膜材具有出色的耐高温和耐腐蚀性能。其布粘涂料可以在260摄氏度连续使用,高使用温度可达290至320摄氏度。同时,它还能有效抵抗化学腐蚀和紫外线侵蚀,不易老化。
3. 自洁性
PTFE膜材的自洁性非常优异。雨水可以冲刷掉膜材表面的附着物,保持膜材的清洁和美观。这一特性使得PTFE膜材在户外使用时能够显著减少维护成本。
4. 透光性与光学性能
PTFE膜材具有较高的透光率,能够充分利用自然光线,为建筑内部提供良好的照明效果。同时,其独特的光学性能还能防止眩目和紫外线透过,保护内部装饰材料和设备不受损害。
5. 使用寿命长
PTFE膜材的使用寿命非常长,一般可达25年以上。这得益于其优异的耐候性和物理化学性能稳定性。
[b]四、丹氟斯PTFE膜材的应用领域[/b]
丹氟斯PTFE膜材凭借其卓越的性能特点,在多个领域得到了广泛应用。主要包括:
1. 大型公共设施
如体育场馆的屋顶系统、机场大厅、展览中心等。这些场所对建筑材料的要求较高,需要能够承受较大的荷载和恶劣的环境条件。PTFE膜材凭借其高强度、耐高温、耐腐蚀等特性,成为这些场所的理想选择。
2. 环保与能源领域
PTFE膜材的高透光性和自洁性使得它在环保和能源领域也有广泛应用。例如,在太阳能光伏板中使用PTFE膜材可以提高光伏板的发电效率并延长使用寿命。
[b]五、总结[/b]
丹氟斯PTFE膜材作为一种高品质的建筑材料,以其独特的性能和广泛的应用领域赢得了市场的认可。随着科技的不断进步和人们对建筑材料性能要求的不断提高,PTFE膜材将在更多领域展现出其独特的魅力和价值。

 

 

 

 

C++ AcDbObjectId::asOldId方法代碼示例
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-1 11:39 , Processed in 0.193205 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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