CAA中WorkingSupport相关...

最近开发中涉及到了WorkingSupport,工作支持面…(开发版本R18),通过各种方式,并未找到相关接口,则去寻找相关大神,大神回复:CATIGSMWorkingSupport….曙光来到,心头一喜…可帮助文档中并无此接口,最后了解到,此接口在R22版本中才出现在帮助文档中。无奈…
最后,死马当活马医…我找到R22帮助文档,直接拿来使用,竟然成功了…

一下代码纯属测试,杂乱无章,待以后整理…

HRESULT hr = S_OK;
    //---------------------------------------------//
    //  1 - Retrieve Specification container       //
    //---------------------------------------------//
    CATFrmEditor *pEditor = CATFrmEditor::GetCurrentEditor();

    CATPathElement path = pEditor->GetUIActiveObject ( );

    CATISpecObject *piSpecOnActive = NULL;
    hr = path.Search (IID_CATISpecObject, (void **) &piSpecOnActive );
    if (FAILED(hr)||(NULL == piSpecOnActive)) {
        cout<<"failed to get interface CATISpecObject from active object"<<endl;
    }

    // GetFeatContainer returns a smart pointer, we must store the result in a SP
    // Otherwise, we will loose the reference on the returned object
    CATIContainer_var spSpecCont = piSpecOnActive->GetFeatContainer();
    piSpecOnActive->Release();piSpecOnActive=NULL;

    CATIPrtContainer_var spPrtCont(spSpecCont);
    CATIPrtPart_var spPart = spPrtCont->GetPart();

    CATIGSMWorkingSupportFactory *piWorkingSupport = NULL;

    hr = spSpecCont->QueryInterface (IID_CATIGSMWorkingSupportFactory, (void **) &piWorkingSupport );



    CATListValCATISpecObject_var spListRefPlanes = spPart->GetReferencePlanes();

    // defines the xy plane as the first sketch plane
    CATISpecObject_var spSketchPlane = spListRefPlanes[1];


    CATIGSMWorkingSupport::GridType Type = CATIGSMWorkingSupport::GSMCartesianGrid;

    CATIGSMWorkingSupport_var spWorkingSupport = piWorkingSupport->CreateWorkingSupport(spSketchPlane, Type);   

    CATIDescendants_var spDesc(spPart);

    CATISpecObject_var spObject(spCartesianGrid);
    spDesc ->Append(spObject);
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值