SolidWorks截面草圖曲線約束優化技術(五)
2013-07-18 by:廣州SW培訓中心 來源:仿真在線
SolidWorks截面草圖曲線約束優化技術(五)
2.3 基于SolidWorks平臺的算法實現
SolidWorks軟件通過對象鏈接與嵌套(OLE)或者組件對象模型(COM)為用戶提供了功能強大的二次開發接口(API),其中包含了豐富的功能函數,這些函數提供程序員直接訪問SolidWorks的能力,可以被VB、C/C++等編程語言調用,從而創建出用戶定制的、專業化的SolidWorks應用模塊。因此截面草圖曲線的約束優化算法在SolidWorks平臺下可以較為方便地實現。Visuai C++與SolidWorks有極好的連接性,能夠最大程度地使用SolidWorks API。使用Visual C++作為SolidWorks二次開發的工具,在Visual C++6.0環境下定制自己的菜單和對話框,通過生成動態鏈接庫DLL文件,以插件的形式被SolidWorks加載并調用。具體的約束優化算法則可以在對話框的消息響應函數中編寫。
2.3.1 截面輪廓數據點分段和初始草圖曲線重建
截面輪廓數據點分段與識別技術在逆向工程、計算機視覺以及模式識別等領域中處于十分重要的地位,輪廓分段的精確程度直接影響著計算機后續識別的準確性。對于點云切片得到的截面輪廓數據點,通常采用曲率估算法實現數據點的分段與識別。根據截面輪廓數據點的曲率分布特性提取角點、切點等特征點,然后利用這些特征點進行數據分段,并判斷出每個分段數據的最佳擬合曲線類型,確定相應的目標函數進行分段擬合,最終創建初始草圖曲線。如果通過已有的點云切片數據不能直接獲取草圖曲線,可以使用SolidWorks的草圖設計功能構建,同時需要用戶在曲線間手動添加相應的約束條件。對于直接得到的初始曲線,曲線分段則比較每一個點與所有曲線段之間的距離,若點到某一曲線的距離最近,即可認為該點屬于那段曲線。所示為截面輪廓數據點分段和初始草圖曲線構建的案例分析。所示為經過去噪、平滑等預處理的某凸輪截面輪廓數據點;所示為截面輪廓數據點進行離散曲率分析的結果;所示為數據分段所依據的特征點;所示為凸輪截面輪廓的初始草圖曲線,利用該曲線可以確定數據點列的走勢,并將其輸人到SolidWorks的曲線分析工具中做進一步的調整和修改。
2.3.2 約束優化算法實現
約束優化算法的實現分為以下幾步:
1)讀取點云切片數據點列,并將數據點排序;
2)截面輪廓數據點分段處理,各段擬合得到切始草圖曲線;
3)讀取草圖曲線段間的各種約束關系,并將其解釋成相應的約束表達式;
4)編寫優化算法,實現約束優化。
在編與優化算法程序的過程中、需要用到SolidWorks提供的許多接口函數,如草圖插入函數Skeich Managerrr→InsertSketrh(),草圖曲線獲取函數Sketch Segment→CetCurvr()、草圖曲線約束獲取函數Sketrh Segment→IGetConStraints()和樣條曲線生成函數ModelDoc2→SketchSpline()等。通過這些函數可以從SolidWorks中獲取模型的各種數據參數,為約束優化算法的實現服務。在此基礎土,約束優化算法可以利用Visual C++的編程環境輕松實現。在SolidWorks平臺下加載的截面草圖曲線約束優化對話框,其中第1個按扭選擇草圖平面,第2個按鈕選擇需要擬合的數據點列,并對數據點進行排序、分段處理。第3個按鈕用于用戶定義所選曲線的幾何約束關系。優化因子則是進行L-M迭代求解時主約束與普通約束間的比例囚子。通過調節優化因子的大小可以得到滿足不同誤差要求的優化曲線。
3 案例實現
基于SolidWorks平臺的二次開發,實現基于點云切片數據的截面草圖曲線約束優化重建技術,使得該技術與SolidWorks本身的曲面建模功能相結合,可以靈活地實現復雜外形的模型重建。圖6所示為電吹風機截面優化CAD模型重建的案例。為該電吹風機的原始點云數據,其中包含了68327個數據點,且表面幾何特征不規則,難以采用直接擬合的方法得到精確的曲面模型。因此,首先將原始點云分割為手柄點云和吹風機外殼點云。其次對這兩部分點云分別用1組平行平面切片,共創建29個草圖平面,進而得到截面點云數據,通過對各個草圖上的數據點列單獨進行約束優化擬合,最終得到截面草圖曲線集。是切片得到的截面點云,是截面點云經過約束優化后得到的截面曲線集。簡單列舉了的草圖曲線幾何約束定義的兩種情況,主要是直線和圓弧段間的相切約束關系。是根據截面曲線集蒙皮或者放樣,并且經過SolidWorks編輯得到的曲面模型。是在曲面模型基礎上重建的CAD模型。在CAD模型重建過程中,需耍利用SolidWorks軟件的曲面編輯功能對所得到曲面進行延伸。剪裁、縫合、加厚和切除等操作,自是終完成CAD模型的重建工作。
該實例利用L-M迭代方法進行約束優化求解,從輸出報告中可以看到優化前、后數據點與曲線之間的平均誤差和標準偏差都得到了大大改善,同時各種約束條件的誤差都達到了設定的要求。
相關標簽搜索:SolidWorks截面草圖曲線約束優化技術(五) SolidWorks產品設計 二次開發 SolidWorks培訓課程 SolidWorks設計教程 SolidWorks視頻教程 SolidWorks軟件下載 SolidWorks在建筑室內設計工業設計的應用 SolidWorks基礎知識 SolidWorks代做 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓