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] 担当者:和田直美
© Copyright 2024 ExpyDoc