程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 基於C#的SolidWorks插件開發(1)--SolidWorks API接口介紹

基於C#的SolidWorks插件開發(1)--SolidWorks API接口介紹

編輯:C#入門知識

這是兩年前畢業時寫的一篇關於SolidWorks插件開發與公司PDM集成的畢業設計,最近閒來無事拿出來整理一下,大神們可以略過。

 

1.1   SolidWorks API接口

正確調用SolidWorks API 是完成SolidWorks二次開發中參數化設計的基礎。調用SolidWorksAPI 是指調用SolidWorks 的事件、方法、屬性、以及相關功能,從而完成零部件實體建模的全過程。

SolidWorks的API接口分為兩種:一種是基於OLE Autonation的IDispatch技術;另一種是基於Windows基礎的COM 。

OLE(Object Linking and Embedding,對象連接與嵌入),簡稱OLE技術。

基於OLE Automation 的IDispatch 技術作為快速開發的手段,一般常用於VB、Delphi 編程語言的接口,通過IDispatch 接口暴露對象的屬性和方法,以便在客戶程序中使用這些屬性並調用它所支持的方法。此種技術只能開發EXE 形式的程序,所開發的CAD 系統不能直接加掛在SolidWorks 系統界面下,無法實現與SolidWorks 系統的集成[12]

COM(Component Object Model ,組件對象模型)[13]技術是SolidWorks API 的基礎,是Microsoft 公司提出的並被大多數公司支持的一種標准協議,它建立了一個軟件模塊同另一個軟件模塊的連接,當這種連接建立之後,兩個模塊之間就可以通過接口來進行通訊。COM接口更為簡潔高效,這種技術可以使用最多的SolidWorks API 函數。

1.2   SolidWorks API對象結構

Solidworks API 通過面向對象思想組織所有的接口對象,如圖3.1所示

Solidworks API對象可以分為以下幾個大類。

(1)      應用程序對象:應用程序對象包括SldWorks、ModelDoc2、PartDoc、AssemblyDoc及DrawingDoc對象。

(2)      配置文件對象:配置文件對象管理零件中不同模塊(零件文檔模式)與裝配體中不同零件(裝配體文檔模式)的狀態。

(3)      事件對象:Solidworks API接口中提供了對事件的支持,當前版本中支持的事件類型有AssemblyDoc事件、DrawingDoc事件、FeatMgrView事件、ModelView事件、PartDoc事件、SldWorks事件及SWPropertySheet事件。

(4)      注解對象:注解對象管理文檔的注解。

(5)      模型對象:模型對象描述SolidWorks內部數據結構。

(6)      特征對象:特診對象描述SolidWorks應用程序所提供的特征操作,這些特征對象與SolidWorks 軟件本身提供的特征操作相對應。

(7)      草圖對象:草圖對象包括管理所有的草圖元素,如圓弧、長方形、樣條曲線等。

1.3   SolidWorks API對象簡介

(1)      SldWorks對象:SldWorks對象是所有其他對象的父類,提供了直接或間接訪問其他所有SolidWorks API接口的方法,在二次開發中訪問其他接口都要通過它。SldWor ks對象是二次開發中最重要的一個對象,通過它才能建立二次開發插件與SolidWorks 應用程序之間的連接。

(2)      ModelDoc對象:ModelDoc對象是SldWorks對象的子對象,同時也是所有文檔模型對象(PartDoc對象、AssemblyDoc對象及DrawingDoc對象)的父對象,它封裝了不同文檔模型通用的屬性和方法,包括文檔打來、關閉、打印和保存等。同時,ModelDoc對象提供了直接訪問PartDoc對象、AssemblyDoc對象和DrawingDoc對象的方法。

(3)      PartDoc對象:PartDoc對象提供Part文檔模式下的操作。

(4)      AssemblyDoc對象:AssemblyDoc對象管理裝配體的操作時與裝配相關的,如導入零部件、添加/取消裝配關系、隱藏/現實零部件等。

(5)      DrawingDoc對象:DrawingDoc對象管理工程圖文檔的操作,如創建、刪除、對其視圖等。

(6)      SelectionMgr對象:SelectionMgr對象是選擇管理對象,用於管理用戶的選擇操作,通過它可以獲得指向當前用戶在SolidWorks中選擇的元素。                        

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved