[C# SolidWorks API] Simulation スタディを作る

Simulation スタディとは,応力解析や流体解析といったのシミュレーション(Simulation)を行うための枠組みです.外部プログラムからSimulation スタディを作るためには,Simulation APIを利用します.

Simulationスタディを作るために
  1. Simulationに必要なAddInを読み込む
  2.
Simulation APIを使うためのオブジェクトを取得する
  3. スタディを作る

の3点について,見ていきましょう.

1. Simulationに必要なAddInを読み込む

Simulationを行うためには,dll形式で提供されているAddIn(cosworks.dll)を読み込む必要があります.AddInは,次のようにして読む込みます.

  解説  

1行目は,cosworks.dllの場所(パス)を指定しています. 

2行目は,LoadAddInメソッドを使って,AddInを読み込んでいます. 戻り値は,swLoadAddinError_eで,読み込みの状況を表します.  

2. Simulation APIを使うためのオブジェクトを取得する

AddInのなかから,APIを利用するためにICosmosWorks型のオブジェクトを取り出します.

解説

1行目は,Simulation AddInの名前 (SldWorks.Simulation) を指定しています.

2行目は,GetAddinObjectメソッドを使って,指定した名前に対応するオブジェクトを取得しています.複数のAddInが読み込まれている場合でも,名前を指定して目的のAddInのオブジェクトを取得できます.

3行目は,2行目で取得したオブジェクトからICosmosWorks型のオブジェクトを取得しています.取得したオブジェクトをメンバ変数COSMOSWORKSに代入しています.

3. スタディを作る

スタディの名前(name)と解析の種類(type)を指定して,Simulation スタディを作ります.解析の種類は,タイプで確認できます.

解説

1行目は,ActiveDocメソッドでモデルドキュメント(ICWModelDoc型)actDocを取得しています.モデルドキュメントは,アクティブになっている部品あるいはアセンブリドキュメントにアクセスすることができます.

2行目は,ドキュメントからスタディマネジャ(ICWStudyManager型)studyMgrを取得しています.

5行目以降では,スタディマネジャーのCreateNewStudy3メソッドで,スタディを作っています.

   CWStudy CreateNewStudy3(
      System.string name,       // スタディの名前
      System.int type,              // 解析の種類 (swsAnalysisStudyType_eで指定します)
      System.int subOptions,   // オプション(動解析,疲労解析に場合に使用します)
      out System.int errors      // エラーコード (swsStudyError_eでエラー内容を確認できます)
   )

nameに既に存在するスタディ名が指定された場合には,新しいスタディを作ることができませんので注意しましょう.

コード

それでは,コード全体を確認していきましょう.

Simulationスタディ作るために,次の2つのメソッドが定義されています.

1. loadSimulationAddin: AddInを読み込んで,APIを利用するためのオブジェクトを取得する
2. createStudy: 名前と種類を指定してスタディを作る

Mainメソッドでは,立方体モデルのドキュメントに静解析のスタディを作っています.スタディ名は”Static Study”としています.立方体モデルの作成方法については,[C# SolidWorks API] 立方体を造るを参照してください.

実行例

動作を確認しましょう.Simulation AddInの読み込みに少し時間がかかっています.

実行するとウィンドウの左下にStatic Studyが追加されます.

Simulation Study: Static Study

まとめ

Simulationを行うために必要なAddInを読み込む方法を説明しました.

Simulation APIを使って,Simulation スタディを作る方法を説明しました.

立方体モデルのドキュメントに静解析のスタディを作るプログラムを作成しました.

Post Thumbnail by Anastas Tarpanov

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

Thank you for comment!