QWER
カタマリの王様!?
オフライン
投稿: 164
SolidWorks2011 SP5 x64
|
|
APIの活用方法
« 投稿日: 2011/10/15 - 01:36:53 » |
|
みなさんの職場ではSolidWorksAPI(DocumentManager,PDMなどの関連APIを含む)をどのように活用されているのでしょうか?
現在SolidWorksAPIを勉強中なのですが、様々な活用方法・応用方法を知り、今後、開発の参考にさせて頂きたいと思います。
よろしくお願い致します。
(ちなみに私の職場では、 “開かれているDrawドキュメントの、特定のユーザー定義プロパティの評価値を取得し「ファイル名+評価値.PDF」というファイル名で指定のフォルダにPDF形式で保存する” といったマクロを使用しております。)
|
|
|
|
Makoron
カタマリの王様!?
オフライン
投稿: 1277
SW2011SP5.0
|
|
Re:APIの活用方法
« 返信 #1 投稿日: 2011/10/17 - 09:33:31 » |
|
QWERさん、おはようございます。 Makoronです。
私の場合、大きく分けて2種類のカスタマイズプログラムを作成しています。
1つ目は、設計者がより簡単にSolidWorksを使えるようにするもの。 たとえば、 ・表面粗さ記号や幾何公差記号のよく使う物を簡単に張り付けられるもの。 ・面や部品の色付けをサポートするもの。 ・図面の表題欄や訂正欄の入力をサポートするもの。 ・いろいろな向きの投影方向を表示させるもの。 ・DXFやPDFなどのファイル変換を簡単に実行できるもの。 ・SolidWorksのファイルを検索するもの。 などです。 SolidWorksは機能が豊富ですが、そのために選択動作が多くなってしまったりします。 また、よく使う機能はより簡単に利用したいと思います。 特に、SolidWorks導入時には、「操作に時間がかかる」「操作がわかりにくい」など、 設計者の苦労が多く、それらを少しでも簡単にできるようにカスタマイズを行ってきました。
2つ目は、SolidWorksの運用・管理を手助けするもの。 たとえば、 ・承認された図面に承認印を張り付けるもの。 ・SolidWorksファイルの検索用DBを作成するもの。 ・SolidWorksのSPインストールの自動化。 ・作成したカスタマイズプログラムの自動配布。 など、私の管理業務に対しての効率化の為に作成しています。
簡単な表現でしか書きませんでしたが、参考になれば幸いです。
ちなみに、ダウンロードページにある「投影方向設定ツール」「モデル色変更ツール」 は、社内で使っているものと同じですので、どういった活用をしているかの雰囲気はわかっていただけると思います。 (ダウンロードページにSwRefDB.lzhがありますが、現在はこれの改良版を利用しています。)
|
|
|
|
QWER
カタマリの王様!?
オフライン
投稿: 164
SolidWorks2011 SP5 x64
|
|
Re:APIの活用方法
« 返信 #2 投稿日: 2011/10/17 - 22:23:07 » |
|
Makaronさん、レス有難うございます。
様々なツールを開発されているようで、まずその開発力が羨ましい限りです。
さっそく「投影方向設定ツール」と「モデル色変更ツール」をダウンロードさせて頂きました。 「投影方向設定ツール」は便利ですね! まずは、SolidWorksを使う中で不便に感じることをピックアップしてみることが大切なのですね。
実は、私もVB.netで開発しているので、Makaronさんが公開してくださったソースコード付きのプログラムには大変お世話になっております。 色々なテクニックが詰まっているので、とても参考になります。
この場を借りて、公開してくださったことに感謝申し上げます。
また、便利なツールが出来たら公開してください! 私も、何か公開出来るよう、頑張ります!
|
|
|
|
QWER
カタマリの王様!?
オフライン
投稿: 164
SolidWorks2011 SP5 x64
|
|
Re:APIの活用方法
« 返信 #3 投稿日: 2011/10/21 - 00:03:05 » |
|
こんばんは、QWERです。
自己レスになりますが、最近、当方の作成したプログラムについて紹介致します。 当方の使用環境に大きく依存するため、プログラム及びソースコードの公開は控えさせて頂きますが、概要は下記の通りです。
1.EPDMにログイン 2.フォルダの選択 3.フォルダ内のSolidWorksドキュメントのみを取得(リストビューに表示) 4.選択したファイルに対して下記の処理を行う ・ユーザー定義プロパティに"SW-Material","SW-Mass"プロパティを追加 ・全てのコンフィギュレーションにも同プロパティを追加 ・図面テンプレートの変更 ・データカードの入力(フォルダパス,ファイル名等から取得できる項目については自動的に入力) ・自動チェックイン
以上です。
なお、当方の環境は下記の通りです。 ------------------------------ Windows7 64Bit SolidWorks2010 x64 EnterprisePDM 2011 SP3.1 VisualBasic2008 Express Edition ------------------------------
余談ですが、私は開発にあたりモジュールを活用しております。 VB.NETのモジュールについては賛否ありますが、 ・デバックしやすくするため ・他のプログラムを作成する際に、処理を流用するため ・どのAPIを使用しているか分かりやすくするため ・APIの使用方法を記録するため といった理由で、多くの処理をモジュール化しています。
例) ・フォルダのパスを与えると、フォルダ内のSolidWorksドキュメントのみを返すモジュール ・SolidWorksの起動状態を確認するモジュール ・Epdmにファイルをチェックインするモジュール などです。
これらのプログラムを作成するにあたり、仕事のカタマリフォーラムの多くの方にアドバイス頂きました。 この場を借りて、お礼申し上げます。
|
|
|
|
Makoron
カタマリの王様!?
オフライン
投稿: 1277
SW2011SP5.0
|
|
Re:APIの活用方法
« 返信 #4 投稿日: 2011/10/21 - 09:48:06 » |
|
引用:余談ですが、私は開発にあたりモジュールを活用しております。 VB.NETのモジュールについては賛否ありますが、 ・デバックしやすくするため ・他のプログラムを作成する際に、処理を流用するため ・どのAPIを使用しているか分かりやすくするため ・APIの使用方法を記録するため といった理由で、多くの処理をモジュール化しています。 |
私もモジュールを使います。 SolidWorksAPIやEnterprisePDMAPIを使う場合は、 その部分に関するコード一式をモジュールで作成しますね。
|
|
|
|
zarigani
Sr. メンバー
オフライン
投稿: 61
I'm a zarigani
|
|
Re:APIの活用方法
« 返信 #5 投稿日: 2011/10/31 - 20:24:41 » |
|
QWERさん、こんにちわ。初めまして。 zariganiはまだ初心者ですが、zariganiのAPIの活用方法をご紹介します。 zarignaiは現在コンサルタントの真似事をしております。 現在関係しているのは2社ですが、1社はマシニングセンターを使った加工を専門にしております。 もう1社は、レーザー加工機を使った加工を専門にしております。 いずれもSolidWorksを使っております。 いずれの工作機械で加工するにしても、いわゆるGコードを作成しなければなりません。 そこで、エクセルマクロで自動的に作成するマクロを作成しています。 もちろんMasterCAMなどの三次元CAMを利用するのもありですが、 高額なツールを使わなくてもエクセルマクロを使えば簡易的ではありますがほとんど処理できます。 らだ、処理内容もオートシェイブを使って簡易的な表示もできますが、 より正確なシミュレーションをするためにはSolidWorks上での表示の方がより説得力が得られます。 この両者を比較する意味でも、APIを活用しております。特に板金は、極めて造形的なものであります。 そこでエクセルで板金形状のエッジの三次元曲線を理論計算し、 それをSolidWorksに読み込んで、ロフトサーフェスを張ったりして 最終形状を実現しております。 いわゆるパラメトリックな設計としています。 三次元データが得られているので、展開データも得られますが、 シートワークスを使うことによって可能性も拡がります。
必要なパラメータを入力するだけで最終形状ができあがるのは信じられないほどのインパクトがありますね。 この程度でコンサルの仕事をしてはいけないのですが
|
|
|
|
QWER
カタマリの王様!?
オフライン
投稿: 164
SolidWorks2011 SP5 x64
|
|
Re:APIの活用方法
« 返信 #6 投稿日: 2011/11/01 - 23:25:05 » |
|
zariganiさんへ
こんばんは、QWERです。 レス有難うございます。 APIを使ってGコードの生成も可能なのですね! そういったプログラムを自前で用意できれば、コストダウンが図れそうです。
私はまだ「プロパティなどの付加情報を編集」や「図面テンプレートの変更」といった内容でしかAPIを使用していないので、APIを用いて生成したデータ(Gコード)を直接製造に繋げているというzariganiさんの活用状況に興味があります。
>この両者を比較する意味でも、APIを活用しております。 とのことですが、やはりモデルからデータを読み取る「APIを活用したGコードの生成」の方が、精度や説得力は上なのでしょうか? また、活用レベルとしてはzariganiさんがコンサルティングされている企業さんでは、「Gコードを生成する際には100%、zariganiさんが作成したプログラムを用いてコードを生成している」といった状況なのでしょうか?
もし宜しければお聞かせ頂けたらと思います。
|
|
|
|
zarigani
Sr. メンバー
オフライン
投稿: 61
I'm a zarigani
|
|
Re:APIの活用方法
« 返信 #7 投稿日: 2011/11/20 - 08:57:52 » |
|
QWERさん 返事が遅くなって申し訳ありません。 ちょっと表現に誤解があったようですね。 Gコードの自動生成はエクセルマクロで行っております。 鋳物加工のような複雑な形状の加工プログラミングは、 MasterCAMなど、高価なツールを使うことが好ましいと思いますが、 比較的簡単な板金などの形状や、マシニングでも、比較的シンプルな形状ではあるが、 穴開け加工などが多いものなどが多く見受けられます。 加工情報をエクセルのフォームから入力し、Gコードを自動生成します。 その入力が正しいかどうか、SolidWorksで確認するAPIを作っております。 一方、SolidWorksのライセンスは高価なんで、エクセルのオートシェイプで 形状を確認できるようにしています。 本格的なプログラミングもありえますが、エクセルマクロで簡易的でいいですね。 先にも申し上げましたが、現役時代、造形的な板金形状のモデリングが可能かどうかで、 Catiaを始め、いろいろなCADツールの選定をしてきましたが、結局ありませんでした。 しかし、SolidWorksのAPIで一気に解決することができました。 他のツールのAPIは知りませんが、SolidWorksのAPIは凄いですね。
|
|
|
|
QWER
カタマリの王様!?
オフライン
投稿: 164
SolidWorks2011 SP5 x64
|
|
Re:APIの活用方法
« 返信 #8 投稿日: 2011/11/25 - 15:09:57 » |
|
zariganiさんへ
こんにちは、QWERです。 質問への回答ありがとうございました。
引用: 加工情報をエクセルのフォームから入力し、Gコードを自動生成します。 その入力が正しいかどうか、SolidWorksで確認するAPIを作っております。
つまり、“APIでスケッチを描き、加工情報が正しいか確認している” ということでしょうか?
引用: 他のツールのAPIは知りませんが、SolidWorksのAPIは凄いですね。
SolidWorksはAPIを無料で提供している上、ソフトウェア上で行える処理のほとんどを扱えるのは素晴らしいですね!(覚えるのが大変ですが(笑))
|
|
|
|
zarigani
Sr. メンバー
オフライン
投稿: 61
I'm a zarigani
|
|
Re:APIの活用方法
« 返信 #9 投稿日: 2011/11/30 - 16:46:04 » |
|
Qwerさん こんにちは 早速ですが、例えば、角パイプの加工なんかをレーザー加工機で 加工する場合、 通常、どの面のどの位置にどんな穴(丸穴、長丸、角、長角、ねじ穴(下穴)等々)を開けるかを指示しますね。 両端のカットも種々考えられます。 これは、エクセルのフォームを使って、図面に基づいて入力します。 それらを確認するために、ソリッドワークスのAPIを使っています。 ソリッドワークスがない環境では、エクセルのオートシェイプを 使って簡易的に確認することもできますが、ソリッドワークスの方が、 立体的でより正確に確認できます。 確認の結果と、図面を見比べて問題なければ、Gコードを作成します。 円形パターンや、グリッドパターン、あるいは扇形バターンなど、 位置決めをするのに、三角関数が必要な場合でも自動的に位置を 決めることができるので、現場向きですよね
同様の考えを、レーザー加工機だけでなく、他にも展開しようとしております。 もちろん、簡易的な範疇は越えませんが。
|
|
|
|
QWER
カタマリの王様!?
オフライン
投稿: 164
SolidWorks2011 SP5 x64
|
|
Re:APIの活用方法
« 返信 #10 投稿日: 2011/12/08 - 08:43:11 » |
|
zariganiさんへ
QWERです。返信が遅くなり大変申し訳ありません。 レーザー加工にはあまり縁のない業種なもので、的外れな解釈をしていました(^^; スミマセン...///
「図面の情報をエクセルのフォームに入力し、その情報が正しいかを“立体的に”確認するためにAPIを用いている」ということですね?
確かに、立体的に確認できるというのは2次元図面の理解やチェックをする上で効果的ですよね。
かなり実務に関連したAPIの活用をされているようで、尊敬致します。
詳細なレス有難うございました。 また、APIを用いたツール等、作成されましたら紹介して頂けると幸いです。
|
|
|
|