SolidWorks API  使い方 入門

ソリッドワークス
メール

株式会社 サンエツ

SolidWorks APIの基本操作編
簡単なアプリケーションを作成してみよう。
簡単なアプリケーション

コードの作成からショートカットアイコンの作成まで。今回の作成方法を元に皆さんは 使い易いオリジナリティなアプリケーションを作ってください。

  1. コードの作成
  2. コードの編集とクラスの作成
  3. アイコンをソリッドワークスのツールバーに表示するところまでです。

作成するプログラムの内容

下の画像のようなFormを表示して「ヌメリックアップダウン」コントロールで 検査表の行数を決めてボタンをクリックすると図面に検査表が表示される といった簡単なものです。
作成された検査表の画像です。
  1. 「新規」で図面テンプレートを開きます。
  2. 「マクロの記録」をクリックします。
  3. 「テーブル」の「カスタムテーブル」を選択します。
  4. 「テーブルサイズ」に適当な数字を表示します。
  5. 「OK」してテーブルを図面の任意の場所に設置します。
  6. 「マクロの停止」をクリックするとマクロの保存ダイアログが表示されます。
  7. 拡張子を「vbproj」になるように「ファイルの種類」から 「SW VSTA VB Macro (*.vbproj)」を選択します。
  8. 名前を「inspection」として任意のフォルダーに保存します。
  9. 「Class SolidWorksMacro」が表示されます。

生成されたコードの全文です。
Imports  SolidWorks.Interop.sldworks
Imports  SolidWorks.Interop.swconst
Imports  System.Runtime.InteropServices
Imports System
Partial Class  SolidWorksMacro 
   
Public Sub  main() 
       
Dim swDoc  As  ModelDoc2 =  Nothing 
       Dim 
swPart As  PartDoc =  Nothing 
       Dim 
swDrawing As  DrawingDoc =  Nothing 
       Dim 
swAssembly As  AssemblyDoc =  Nothing 
       Dim 
boolstatus  As Boolean  False 
       Dim 
longstatus  As Integer  = 0 
       
Dim longwarnings  As Integer = 0 
       swDoc = 
CType (swApp.ActiveDoc, ModelDoc2) 
       
Dim  myTable As  TableAnnotation =  Nothing 
       
swDrawing = CType (swDoc, DrawingDoc) 
       myTable = 
CType (swDrawing.InsertTableAnnotation(-0.05, -0.007, 1, 5, 5), TableAnnotation) 
       
If  (Not  (myTable) Is Nothing Then 
           
myTable.BorderLineWeight = 0 
           myTable.GridLineWeight = 0 
       
End If 
   End Sub 
   
'''  
   ''' The SldWorks swApp variable is pre-assigned for you. 
   ''' 
 
   
Public swApp  As SldWorks
End Class
下記のコードは必要がありませんので削除します。

Dim swPart As PartDoc = Nothing

Dim swAssembly As AssemblyDoc = Nothing

Dim longstatus As Integer = 0

Dim longwarnings As Integer = 0

コードの内容です。
  1. 「Dim swDrawing As DrawingDoc = Nothing」は図面操作のオブジェクトの作成です。
  2. 「Dim myTable As TableAnnotation = Nothing」はカスタムテーブルの入れ物の作成です。
  3. 「InsertTableAnnotation」はテーブルの定義をします。 引数は(原点からの距離X,原点からの距離Y,アンカーの位置,行数,コラム数)となります。 今回はこの引数を利用します。
  4. 「If (Not (myTable) Is Nothing) Then」はお馴染のコードですね。 「myTable」が無い場合ではないときです。
  5. このIf分の中でテーブルの形式などを記入します。
今回は「全て保存」をクリックして画面を閉じます。 次のページはFormを追加して編集します。
基本操作編INDEXに戻る場合はコチラ↓
LINEで送る
株式会社 サンエツ
〒252-113 神奈川県綾瀬市小園883-1
TEL :0467-76-7228
FAX :0467-77-3448
E-mail :info@sanetu.main.jp
URL : http://sanetu.main.jp