//采用代理交互式获取样条
CATPathElement*pPath=_pPathElementAgent->GetValue();int index=pPath->GetSize()-1;CATBaseUnknown *pElement=(*pPath)[index];CATIGeometricalElement_var spGeoEle=NULL_var;if(SUCCEEDED(pElement->QueryInterface(IID_CATIGeometricalElement,(void**)&spGeoEle))){CATBody_var spBdoy=NULL_var;spBdoy=spGeoEle->GetBodyResult();/*CATLISTP(CATCell)oListCell;*/CATLocation local=CATLocationIn3DSpace;CATDomain*pDomain=spBdoy->GetDomain(1,&local);CATCell*pCell=pDomain->GetCell(1);//将曲线转化为NUBRS样条曲线CATGeoFactory*pGeoFac=pCell->GetContainer();CATSoftwareConfiguration *pSoftConfig=new CATSoftwareConfiguration();//释放该指针时采用Release,CATSoftWareConfiguration的析构函数为保护类型,采用delete释放会出错CATTopData TopData(pSoftConfig);CATTopCrvToNurbsCrvOperator*pCrvToNubrsOper=CATCreateTopCrvToNurbsCrvOperator(pGeoFac,&TopData,spBdoy,pCell);if (!pCrvToNubrsOper){cout<<"operator failed"<<endl;return TRUE;}pCrvToNubrsOper->SetMaxDegree(3);pCrvToNubrsOper->SetMaxArcs(3);pCrvToNubrsOper->SetRationalAbility(0);pCrvToNubrsOper->Set3DOutputDimension(TRUE);//默认情况下,创建曲线为PCurve,需要设定支撑面pCrvToNubrsOper->Run();CATBody*pNubrsBody=pCrvToNubrsOper->GetResult();if (!pNubrsBody){cout<<"get nubrs body error"<<endl;return TRUE;}CATLISTP(CATCell)oCellList;pNubrsBody->GetAllCells(oCellList,1);if (oCellList.Size()){CATCurve*pCurve=(CATCurve*)oCellList[1]->GetGeometry();if (!pCurve){cout<<"get pCurve pointer failed"<<endl;return TRUE;}const CATKnotVector *KnotVec=NULL;KnotVec=pCurve->GetKnotVector();cout<<KnotVec->GetDegree()<<endl;}pGeoFac->Remove(pNubrsBody,CATICGMContainer::RemoveDependancies);//pNubrsBody 不需要保留,采用CATIGSMContainer的Remove方法pSoftConfig->Release();delete pCrvToNubrsOper;pCrvToNubrsOper=NULL;}_pNotify=new CATDlgNotify(CATApplicationFrame::GetFrame()->GetMainWindow(),"Warning");_pNotify->SetText("数据提取结束");_pNotify->SetVisibility(CATDlgShow);return TRUE;

样条曲线转换为NUBRS曲线相关推荐

  1. 课堂笔记_ B样条曲线和NUBRS

    为什么学习B样条 Bezier曲线/曲面不支持局部的修改和编辑: Bezier曲线/曲面拼接时,满足几何连续条件是十分困难的. B样条的历史 1946年,Schoenberg提出了一种基于样条的方法来 ...

  2. 咸鱼菌玩3D—样条曲线和贝塞尔曲线

    咸鱼菌玩3D-样条曲线和贝塞尔曲线 多线段 样条曲线 贝塞尔曲线 123D提供了 多段线和 样条曲线两种自由绘制工具,而后者比前者更加灵活自由,能够绘制更复杂的形状. 在设计领域中有一种被称作 贝塞尔 ...

  3. 多项式曲线——搞清楚贝塞尔曲线、B样条曲线、Nurbs曲线的区别

    多项式曲线--搞清楚贝塞尔曲线.B样条曲线.nurbs曲线的区别 贝塞尔曲线 Bezier曲线定义 Bernstein基函数的性质 Bezier曲线的性质 B样条曲线 B样条曲线定义 B样条基函数的性 ...

  4. 计算几何03_三次参数样条曲线与Cardinal曲线

    一.三次参数样条曲线 三次样条曲线的唯一缺点就是缺乏几何不变形.即当型值点发生几何变换时不能保证参数递增.因此提出了以弦长为参数的三次参数样条曲线. 1.1 定义 已知n个型值点Pi(xi, yi), ...

  5. 计算机图形学空间曲线,课程追忆之《计算机图形学》【曲线曲面篇】

    大家好,距离上一篇博文将近一个月,时间过得好快,原本计划周更的,后面推到半月跟,实际到现在是月更,每次在准备写点什么的时候,都会被一些杂乱的事物打扰,哎,重度拖延症.懒癌晚期- 继上次述说了<计 ...

  6. 曲线数学NURBS之B样条曲线

    上一篇博客已经讲到了bezier曲线,本篇接着讲解B样条曲线. B样条曲线是bezier曲线的更一般化,bezier曲线是B样条曲线的特列.相比于Bezier曲线,B样条曲线是分段组成的,每一段参数的 ...

  7. 希尔伯特曲线的绘制c语言,用四叉树和希尔伯特曲线做空间索引

    <用四叉树和希尔伯特曲线做空间索引>由会员分享,可在线阅读,更多相关<用四叉树和希尔伯特曲线做空间索引(11页珍藏版)>请在人人文库网上搜索. 1.超酷算法:用四叉树和希尔伯特 ...

  8. NURBS曲线与曲面

    B样条方法在表示与设计自由型曲线曲面形状时显示了强大的威力,然而 在表示与设计初等曲线曲面时时却遇到了麻烦.因为B样条曲线包括其特例的 Bezier曲线都不能精确表示出抛物线外的二次曲线,B样条曲面包 ...

  9. java nurbs几何库_NURBS曲线与曲面

    B样条方法在表示与设计自由型曲线曲面形状时显示了强大的威力,然而 在表示与设计初等曲线曲面时时却遇到了麻烦.因为B样条曲线包括其特例的 Bezier曲线都不能精确表示出抛物线外的二次曲线,B样条曲面包 ...

  10. 机器人曲线插值拟合算法研究现状简述

    混沌无形 混沌系统是世界本质,无形之中存在规律.机器人智能化发展从线性过渡到混沌,本号将分享机器人全栈技术(感知.规划.控制:软件.机械.硬件等). 38篇原创内容 公众号 [文末提供原文PDF免费下 ...

最新文章

  1. 鸿蒙os电视是安卓,适配鸿蒙OS系统的机型又增加了!和安卓系统相比鸿蒙有哪些特点?...
  2. Python改变生活 | 轻松识别数百个快递单号
  3. 比特币现金价格周分析看点:仍维持在1000美元以上的正面区间
  4. 企业级工作流解决方案(十)--集成Abp和ng-alain--权限系统
  5. Scala数组元素的增加(:+)方法
  6. wxWidgets:wxString概述
  7. C语言程序设计与有限元,C语言与有限元程序设计.pdf
  8. android循环请求数据,android – Camera2 ImageReader冻结重复捕获请求
  9. Linux下vi替换字符命令操作实例
  10. 如何在苹果Mac上右键点击?
  11. 2021-06-27 方法的调用
  12. Atitit 图像处理—图像形态学(膨胀与腐蚀)
  13. 【语音识别】基于matlab GUI MFCC+VQ说话人识别系统【含Matlab源码 1153期】
  14. 韩顺平细说jsp购物车项目--用户登录及验证
  15. Internet Tv Radio Player v5.2
  16. typedef定义结构体数组类型
  17. docker配置加速器的几种方案
  18. android 顶部弹窗,android显示通知,并在任何应用程序顶部弹出
  19. Office快捷键大全之四(Frontpage快捷键)
  20. 冰蝎3 冰蝎2 behinder流量分析 流量解密

热门文章

  1. 数据库理论:计算机数据库技术在信息管理中的应用分析
  2. java格式化日期24小时_Java如何格式化24小时格式的时间?
  3. 智能城市dqn算法交通信号灯调度_强化学习在智能交通灯中的应用
  4. 计算机启动命令提示符,7种方式在Windows 10中打开或启动命令提示符 | MOS86
  5. matlab编辑器风格定制,怎么使用135编辑器编辑出文艺清新的风格排版(附文艺排版素材)?...
  6. 【深度首发】图森未来CEO陈默:我们并非在主机厂上游兜售技术,而是立足下游,做卡车运输业的智能服务商丨Xtecher 封面
  7. 【MATLAB】MATLAB 2017A 软件安装
  8. php匹配车牌号,分享一个非常全的php正则验证车牌格式的函数
  9. 14行代码教你制作自己的有道词典单词本(python)
  10. excel常用的数据处理方法