PDF 資料 - ダイナミックシステムリサーチホームページ

PML.netを利用した
機能拡張の可能性
株式会社 ダイナミックシステムリサーチ
PMLとPML.netの比較
<PML>
• 基本的には、PDMS内での機能拡張や利便性の向
上を目的としたカスタマイズ
• 外部環境との連携を
実現するのは難し
かった
• Oracle等の外部環境
へのアクセスが出来
ないから
PMLとPML.netの比較
<PML.net>
• PMLが有しないインター
フェイスが使用できる
• PDMS.netで
DABACON(PDMS-DB)
を参照し、
.net Frameworkで
外部環境を使用できる
• .net Frameworkを利用し
て既存プログラムを利用
できる
• さらなる利便性の向上
• 他システムとの連携
が可能
• 従来もっている資産(プ
ログラム)を再利用でき
る可能性がある
事例1:利便性の向上
通常のDrawlist
TreeViewを利用した
表示非表示
事例2:外部環境との連携
• Oracleデータベースへのデータ抽出
PDMS
他CAD
PML.NET
DABACONから
情報の取得
OracleDBへ書込み
Oracle
DB
物量Prg
解析Prg
事例2:外部環境との連携
• 外部データベースへ格納する事で
PDMS以外のシステムからデータの利
用が可能になる
• 様々な連携や、独自開発システムの利用
等の可能性が広がる
事例3:従来資産の再利用
• 既存プログラムの利用
・3D-CADの夜間バッチプログラムとして、
壁などを貫通する配管・トレイ・ダクトに対応するスリーブを
自動的に発生させるプログラムがあった(C/C++で作成)
躯体との干渉箇所
自動的にスリーブ
を発生
事例3:従来資産の再利用
開発方針の検討
1. PMLで開発
<メリット>
・PDMSに沿った開発が
可能
<デメリット>
・開発工期が長い
・処理の信頼性が低下
2. PML.netを利用し従来Prgを利用
<メリット>
・開発工期の短縮
・信頼性のある処理の利用
が可能
<デメリット>
・従来処理に合わせて
データ変換が必要
事例3:従来資産の再利用
システム構成
PDMS
PMLマクロ
起
動
スリーブ自動計算システム
PML.NET
PML
DLL
PML
メソッド
(PML)
DABAC
ON
呼び出し
PML
Callable
メソッド
(C#)
DLL
呼び出し
PMLから呼ばれ、
・DABACONからのデータロード
・スリーブ自動計算
・PDMS-DBへデータセーブ
の順に処理メソッドを呼び出す。
仲介
メソッド
(C++/
CLI)
呼び出し
C#⇔C++が直接やり
取りできないため、
仲介として関数の
呼び出し、データ
の変換を行う。
処理
メソッド
(C++)
スリーブ自動計算は、
既存のロジックほぼ
そのまま使用
作業上起こった問題点
1.PML.netで実現不可能な機能があった
( 変更されたデータの抽出、
指定範囲内のデータの抽出、保温材の半透明表示など)
→PMLで可能だったので、目的の機能を実装したPML関数を用意し
その関数をC#から呼び出すようにした
2.PML.netで実現可能な機能だったが、処理速度が極端に遅いものがあった
→具体的な例:Branchのメンバ要素の表示非表示を切替える
DrawListPrimitive.Visibilityを使用すると、
それ以降処理速度が遅くなった。
対策:複数の要素の表示非表示を行うPMLを用意しC#から呼び出すようにした
要望
1.PML.netの充実
→PMLでしか実現できない機能をPML.netに組み込んで欲しい
2.PML.netのリファレンスマニュアルの充実
→あまり整備されていないのでクラス・関数リファレンス等を充実させて欲しい
(株)ダイナミックシステムリサーチ
住所:東京都千代田区内神田1-17-6 鹿島ビル4F
電話番号:(03)3291-4331
連絡先:[email protected]
担当者:和田直美