﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-力为的技术博客-随笔分类-9.OpenCASCADE</title><link>http://www.cppblog.com/mythma/category/3593.html</link><description>C++QQ群：320523969，320523982</description><language>zh-cn</language><lastBuildDate>Fri, 20 Dec 2013 08:47:56 GMT</lastBuildDate><pubDate>Fri, 20 Dec 2013 08:47:56 GMT</pubDate><ttl>60</ttl><item><title>一个OpenCASCADE的MFC控件</title><link>http://www.cppblog.com/mythma/archive/2013/12/19/opencascade-control-for-mfc.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Thu, 19 Dec 2013 02:04:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2013/12/19/opencascade-control-for-mfc.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/204888.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2013/12/19/opencascade-control-for-mfc.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/204888.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/204888.html</trackback:ping><description><![CDATA[有时候需要在对话框上显示OpenCASCADE的模型，现基于CStatic封装了一个简单的控件:<br />COpenCascadeCtrl<br /><br />代码如下：<br /><div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><br />#pragma&nbsp;once<br /><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;COpenCascadeCtrl</span><span style="color: #008000; "><br /></span><br /><span style="color: #0000FF; ">class</span>&nbsp;COpenCascadeCtrl&nbsp;:&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;CStatic<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;DECLARE_DYNAMIC(COpenCascadeCtrl)<br /><br /><span style="color: #0000FF; ">public</span>:<br />&nbsp;&nbsp;&nbsp;&nbsp;COpenCascadeCtrl(Handle_Graphic3d_WNTGraphicDevice&nbsp;theGD);<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">virtual</span>&nbsp;~COpenCascadeCtrl();<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;Handle_AIS_InteractiveContext&nbsp;GetAIC()&nbsp;<span style="color: #0000FF; ">const</span>&nbsp;{<span style="color: #0000FF; ">return</span>&nbsp;mAISContext;}<br />&nbsp;&nbsp;&nbsp;&nbsp;Handle_V3d_View&nbsp;GetView()&nbsp;<span style="color: #0000FF; ">const</span>&nbsp;{&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;mActiveView;&nbsp;}<br /><br /><span style="color: #0000FF; ">protected</span>:<br />&nbsp;&nbsp;&nbsp;&nbsp;DECLARE_MESSAGE_MAP()<br /><span style="color: #0000FF; ">public</span>:<br />&nbsp;&nbsp;&nbsp;&nbsp;afx_msg&nbsp;<span style="color: #0000FF; ">int</span>&nbsp;OnCreate(LPCREATESTRUCT&nbsp;lpCreateStruct);<br />&nbsp;&nbsp;&nbsp;&nbsp;afx_msg&nbsp;<span style="color: #0000FF; ">void</span>&nbsp;OnPaint();<br /><br /><span style="color: #0000FF; ">private</span>:<br />&nbsp;&nbsp;&nbsp;&nbsp;Handle_Graphic3d_WNTGraphicDevice&nbsp;theGraphicDevice;<br />&nbsp;&nbsp;&nbsp;&nbsp;Handle_V3d_View&nbsp;mActiveView;<br />&nbsp;&nbsp;&nbsp;&nbsp;Handle_V3d_Viewer&nbsp;mActiveViewer;<br />&nbsp;&nbsp;&nbsp;&nbsp;Handle_AIS_InteractiveContext&nbsp;mAISContext;<br /><br />};</div><br /><br />实现文件：<br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;OpenCascadeCtrl.cpp&nbsp;:&nbsp;implementation&nbsp;file<br /></span><span style="color: #008000; ">//<br /></span><br />#include&nbsp;"stdafx.h"<br />#include&nbsp;"OpenCascadeCtrl.h"<br /><br /><br /><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;COpenCascadeCtrl</span><span style="color: #008000; "><br /></span><br />IMPLEMENT_DYNAMIC(COpenCascadeCtrl,&nbsp;CStatic)<br /><br />COpenCascadeCtrl::COpenCascadeCtrl(Handle_Graphic3d_WNTGraphicDevice&nbsp;theGD)<br />:&nbsp;theGraphicDevice(theGD)<br />{<br /><br />}<br /><br />COpenCascadeCtrl::~COpenCascadeCtrl()<br />{<br />}<br /><br /><br />BEGIN_MESSAGE_MAP(COpenCascadeCtrl,&nbsp;CStatic)<br />&nbsp;&nbsp;&nbsp;&nbsp;ON_WM_CREATE()<br />&nbsp;&nbsp;&nbsp;&nbsp;ON_WM_PAINT()<br />END_MESSAGE_MAP()<br /><br /><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;COpenCascadeCtrl&nbsp;message&nbsp;handlers</span><span style="color: #008000; "><br /></span><span style="color: #0000FF; ">int</span>&nbsp;COpenCascadeCtrl::OnCreate(LPCREATESTRUCT&nbsp;lpCreateStruct)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;(CStatic::OnCreate(lpCreateStruct)&nbsp;==&nbsp;-1)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;-1;<br /><br /><br />&nbsp;&nbsp;&nbsp;&nbsp;mActiveViewer&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;V3d_Viewer(theGraphicDevice,&nbsp;Standard_ExtString("OpenCascadeCtrl"));<br />&nbsp;&nbsp;&nbsp;&nbsp;mActiveViewer-&gt;SetDefaultLights();<br />&nbsp;&nbsp;&nbsp;&nbsp;mActiveViewer-&gt;SetLightOn();<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;mActiveView&nbsp;=&nbsp;mActiveViewer-&gt;CreateView();<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;Handle(WNT_Window)&nbsp;aWNTWindow&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;WNT_Window(theGraphicDevice,&nbsp;GetSafeHwnd(),&nbsp;Quantity_NOC_GRAY);<br />&nbsp;&nbsp;&nbsp;&nbsp;aWNTWindow-&gt;SetDoubleBuffer(Standard_False);<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;mActiveView-&gt;SetWindow(aWNTWindow);<br /><br /><br />&nbsp;&nbsp;&nbsp;&nbsp;mAISContext&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;AIS_InteractiveContext(mActiveViewer);<br />&nbsp;&nbsp;&nbsp;&nbsp;mAISContext-&gt;SetDisplayMode(AIS_Shaded,&nbsp;<span style="color: #0000FF; ">false</span>);<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;0;<br />}<br /><br /><br /><span style="color: #0000FF; ">void</span>&nbsp;COpenCascadeCtrl::OnPaint()<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;CPaintDC&nbsp;dc(<span style="color: #0000FF; ">this</span>);&nbsp;<span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;device&nbsp;context&nbsp;for&nbsp;painting<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;TODO:&nbsp;Add&nbsp;your&nbsp;message&nbsp;handler&nbsp;code&nbsp;here<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;Do&nbsp;not&nbsp;call&nbsp;CStatic::OnPaint()&nbsp;for&nbsp;painting&nbsp;messages</span><span style="color: #008000; "><br /></span>&nbsp;&nbsp;&nbsp;&nbsp;mActiveView-&gt;Redraw();<br />}</div><br /><br />用的时候，在对话框上加一个Picture控件（IDC_STATIC_LOC），初始化对话框的时候创建<span style="font-size: 13px; background-color: #eeeeee;">COpenCascadeCtrl</span><br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">1</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CRect&nbsp;rect;<br /><span style="color: #008080; ">2</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GetDlgItem(IDC_STATIC_LOC)-&gt;GetWindowRect(&amp;rect);<br /><span style="color: #008080; ">3</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ScreenToClient(&amp;rect);<br /><span style="color: #008080; ">4</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_OpenCascadeCtr-&gt;Create(_T(""),&nbsp;WS_CHILD|WS_VISIBLE,&nbsp;rect,&nbsp;<span style="color: #0000FF; ">this</span>,&nbsp;IDC_STATIC_LOC);</div><br /><br /><a href="http://www.opencascade.net/ask/?/question/26"><span style="font-size: 24pt; color: red;"><strong>代码下载</strong></span></a><img src ="http://www.cppblog.com/mythma/aggbug/204888.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2013-12-19 10:04 <a href="http://www.cppblog.com/mythma/archive/2013/12/19/opencascade-control-for-mfc.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用netgen</title><link>http://www.cppblog.com/mythma/archive/2013/01/23/how-to-use-netgen.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Wed, 23 Jan 2013 09:39:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2013/01/23/how-to-use-netgen.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/197506.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2013/01/23/how-to-use-netgen.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/197506.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/197506.html</trackback:ping><description><![CDATA[有的库会故意为开发者挖坑，比如netgen。<br /><br />链接nglib.lib的时候会出现这样的问题：<br /><span style="color: #555555; font-family: arial, helvetica, clean, sans-serif; font-size: 13px; line-height: 18px; white-space: pre-wrap; background-color: #ffffff;">error LNK2019: unresolved external symbol "public: void __cdecl Ng_Init(void)" (?Ng_Init@QEAAXXZ) referenced in function</span><br /><br />工程中用到了Ng_Init，而在nglib.lib中没有找到。<br /><br />查看下nglib.cpp的实现，发现狗日的这样包含nglib.h的：<br /><div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #0000FF; ">namespace</span>&nbsp;nglib&nbsp;{<br />#include&nbsp;"nglib.h"<br />}</div><br />头文件也不说明一下，这不坑爹吗？<br /><br /><img src ="http://www.cppblog.com/mythma/aggbug/197506.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2013-01-23 17:39 <a href="http://www.cppblog.com/mythma/archive/2013/01/23/how-to-use-netgen.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>我的原创技术随笔大全（2000~2009）</title><link>http://www.cppblog.com/mythma/archive/2010/01/09/105218.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Fri, 08 Jan 2010 17:13:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2010/01/09/105218.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/105218.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2010/01/09/105218.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/105218.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/105218.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:   二十一世纪的第一个十年过去了，回顾了一下这些年写的博客，发现自己也没闲着。但不免也有些遗憾，内容大都是关于知识、经验和技术，而关于思考和idea的却比较少。期待下一个十年吧！<br>    第一篇日志是在2004年发布在CSDN的博客上（记得开始不叫博客），截至到现在累积了不少东西了。为了怀念这过去的十年（2000~2003是个空白期，那段时间国内好像也没博客，网络也不发达，信息也闭塞），特整理了一下，称作我的原创技术随笔大全（2000~2009）&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2010/01/09/105218.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/105218.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2010-01-09 01:13 <a href="http://www.cppblog.com/mythma/archive/2010/01/09/105218.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>因参数出错导致的意外“事故”</title><link>http://www.cppblog.com/mythma/archive/2009/12/27/104188.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Sun, 27 Dec 2009 05:53:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2009/12/27/104188.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/104188.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2009/12/27/104188.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/104188.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/104188.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在构建模型的时候，由于粗心大意，接连几次都把参数搞错了。<br>于是意外产生了以下几副图。&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2009/12/27/104188.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/104188.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2009-12-27 13:53 <a href="http://www.cppblog.com/mythma/archive/2009/12/27/104188.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>OpenCASCADE从入门到精通</title><link>http://www.cppblog.com/mythma/archive/2009/05/26/85770.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Tue, 26 May 2009 02:52:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2009/05/26/85770.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/85770.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2009/05/26/85770.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/85770.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/85770.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: OpenCASCADE资源&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2009/05/26/85770.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/85770.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2009-05-26 10:52 <a href="http://www.cppblog.com/mythma/archive/2009/05/26/85770.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>网格剖分与可视化demo</title><link>http://www.cppblog.com/mythma/archive/2009/04/09/79349.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Thu, 09 Apr 2009 08:39:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2009/04/09/79349.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/79349.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2009/04/09/79349.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/79349.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/79349.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 发图留念&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2009/04/09/79349.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/79349.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2009-04-09 16:39 <a href="http://www.cppblog.com/mythma/archive/2009/04/09/79349.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>3D Modeling&amp;Visualization Group</title><link>http://www.cppblog.com/mythma/archive/2008/11/19/67281.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Wed, 19 Nov 2008 06:32:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2008/11/19/67281.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/67281.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2008/11/19/67281.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/67281.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/67281.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1. Modeling<br>2. 3D Visualization&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2008/11/19/67281.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/67281.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2008-11-19 14:32 <a href="http://www.cppblog.com/mythma/archive/2008/11/19/67281.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>判断拓扑结构的具体类型</title><link>http://www.cppblog.com/mythma/archive/2008/05/29/51527.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Thu, 29 May 2008 14:56:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2008/05/29/51527.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/51527.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2008/05/29/51527.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/51527.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/51527.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 借助拓扑结构与Geometry直接的桥梁BRepAdaptor，可以判断给定TopoDS_Shape的具体类型。&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2008/05/29/51527.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/51527.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2008-05-29 22:56 <a href="http://www.cppblog.com/mythma/archive/2008/05/29/51527.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title> 拓扑结构与TopoDS</title><link>http://www.cppblog.com/mythma/archive/2008/01/24/41774.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Thu, 24 Jan 2008 01:54:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2008/01/24/41774.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/41774.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2008/01/24/41774.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/41774.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/41774.html</trackback:ping><description><![CDATA[<strong>一、拓扑结构</strong> <br><strong><font size=3></font></strong><br><a href="http://www.caxsoft.com/" target=_blank><strong><font color=#2f5fa1><u>参数空间</u></font></strong></a> <br><span id=rlt_1 style="CURSOR: pointer; BORDER-BOTTOM: #fa891b 1px solid" onclick="sendmsg('pw_ajax.php','action=relatetag&amp;tagname=OpenCASCADE',this.id)">OpenCASCADE</span>的拓扑结构是在参数空间描述实体的数据结构——用局部参数空间或受限参数空间描述。 <br>
<h6 class=quote>Quote:</h6>
<blockquote><strong>参数空间（Parametric Space)</strong>：设（X1，&#8230;&#8230;，Xn)为来自总体X的样本，（x1,&#8230;xn）为相应的样本值，&#952;是总体分布的未知参数,&#952;&#8712;&#920;， <br>&#920;表示&#952;的取值范围,称&#920;为参数空间 </blockquote><br><br>能用这样的方法描述的的拓扑结构有：Vertex, Face 和 Shape。其中，Vertex用局部参数空间定义，Face和Shape用受限参数空间定义。 <br><br><strong><a href="http://www.caxsoft.com/" target=_blank><font color=#2f5fa1><u>各种拓扑结构的关系</u></font></a></strong> <br>简单的拓扑结构可以可以组合成复杂拓扑结构： <br>Edge的集合构成Wire，Face的集合构成Shell，Solid的集合构成CompSolid。 <br>各种不同的shape构成Compound <br><br><a href="http://www.caxsoft.com/" target=_blank><strong><font color=#2f5fa1><u>共享数据结构</u></font></strong></a> <br>shape在拓扑结构中是可以共享的，例如两条边的共点，两个面的共边。CASCADE用引用方法处理共享数据结构，当简单的引用不能满足需要的时候，就要用到另外的信息：orientation 和 local coordinate reference ( LCR )。其中， <br>&#215; Orientation 用于指定shape在边界中的引用方法（shape的方向）。 <br>&#215; LCR 允许为一个shape制定一个不同于其定义位置的location。 <br>
<h6 class=quote>Quote:</h6>
<blockquote><a href="http://www.caxsoft.com/bbs/read.php?tid=391"><u><font color=#810081><strong>Orientation:</strong> CASCADE的四类方向</font></u></a> </blockquote><br>
<h6 class=quote>Quote:</h6>
<blockquote><a href="http://www.caxsoft.com/bbs/read.php?tid=390" target=_blank><font color=#2f5fa1><u>Coordinate System of OpenCASCADE </u></font></a></blockquote><br><br><strong><font size=4></font></strong><br><strong><font size=4>二、TopoDS</font></strong> <br><strong><font size=4></font></strong><br><a href="http://bbs.caxsoft.com/" target=_blank><font color=#2f5fa1><u>OpenCASCADE的TopoDS package提供了两大类class</u></font></a> <br><br>&#215; TopoDS_Shape及其子类 <br>&nbsp; &nbsp; 包含orientation和location信息 <br>&#215; TopoDS_TShape及其子类 <br>&nbsp; &nbsp; 在local coordinate system描述shape，没有orientation信息。 <br><br>两者的联系： <br>TopoDS_Shape<strong>引用</strong>了一份TopoDS_TShape，并为TopoDS_TShape增加了orientation和location信息。结合<strong>共享数据结构</strong>部分就可以看出：TopoDS_TShape包含了真正的几何数据，TopoDS_Shape实现了数据共享机制，并没有复杂的数据结构。正因为如此，CASCADE中TopoDS_Shape是以value的方式处理，而TopoDS_TShape以引用的方式处理。 <br><br><a href="http://www.caxsoft.com/" target=_blank><font color=#2f5fa1><u>TopoDS_Shape对象的比较</u></font></a> <br><br>Partner关系：共享相同的TopoDS_TShape <br>Same关系：Partner关系，并且共享相同的local reference <br>Equal关系：Same关系，并且拥有相同的 Orientation，真正的相等。 <br><br><strong><font size=3>参考文献:</font></strong> <br>OpenCASCADE官方文档&nbsp;<br>
<img src ="http://www.cppblog.com/mythma/aggbug/41774.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2008-01-24 09:54 <a href="http://www.cppblog.com/mythma/archive/2008/01/24/41774.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>VTK  Online 教程大全</title><link>http://www.cppblog.com/mythma/archive/2007/10/28/35339.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Sun, 28 Oct 2007 05:25:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2007/10/28/35339.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/35339.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2007/10/28/35339.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/35339.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/35339.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: VTK Online 教程大全&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2007/10/28/35339.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/35339.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2007-10-28 13:25 <a href="http://www.cppblog.com/mythma/archive/2007/10/28/35339.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>未解之谜---Edge到Nurbs曲线的转化</title><link>http://www.cppblog.com/mythma/archive/2007/07/02/27387.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Mon, 02 Jul 2007 13:44:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2007/07/02/27387.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/27387.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2007/07/02/27387.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/27387.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/27387.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 一直对OpenCASACDE不满意的地方就是它的渲染，看起来确实不够专业。<br>前段时间一直想用OpenInventor渲染它的模型拓扑结构TopoDS_Shape，遇到了一个棘手的问题：如何将实体的任意Edge转化成OpenInventor可以识别的Nurbs曲线。<br><br>&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2007/07/02/27387.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/27387.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2007-07-02 21:44 <a href="http://www.cppblog.com/mythma/archive/2007/07/02/27387.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>最新进展</title><link>http://www.cppblog.com/mythma/archive/2007/05/20/24416.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Sat, 19 May 2007 17:31:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2007/05/20/24416.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/24416.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2007/05/20/24416.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/24416.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/24416.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 新增功能：<br><br>通过Property修改实体参数 <br>Extrude tool <br>Workspace <br>下载地址：<br>&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2007/05/20/24416.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/24416.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2007-05-20 01:31 <a href="http://www.cppblog.com/mythma/archive/2007/05/20/24416.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>最简单的OpenCASCADE程序</title><link>http://www.cppblog.com/mythma/archive/2007/02/08/18519.html</link><dc:creator>力为</dc:creator><author>力为</author><pubDate>Thu, 08 Feb 2007 02:05:00 GMT</pubDate><guid>http://www.cppblog.com/mythma/archive/2007/02/08/18519.html</guid><wfw:comment>http://www.cppblog.com/mythma/comments/18519.html</wfw:comment><comments>http://www.cppblog.com/mythma/archive/2007/02/08/18519.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/mythma/comments/commentRss/18519.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/mythma/services/trackbacks/18519.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 第一次接触OpenCASCADE，使用MFC建立的最简单的OpenCASCADE程序。&nbsp;&nbsp;<a href='http://www.cppblog.com/mythma/archive/2007/02/08/18519.html'>阅读全文</a><img src ="http://www.cppblog.com/mythma/aggbug/18519.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/mythma/" target="_blank">力为</a> 2007-02-08 10:05 <a href="http://www.cppblog.com/mythma/archive/2007/02/08/18519.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>