TeighaShell プログラムには、C#で定義したコマンドレットがいくつかある。DrawingOperation.cs ファイルに定義されている。
多くのコマンドレットはパイプラインで処理を行う。ProcessRecord() メソッドでパイプラインから渡された複数のオブジェクト(データ)を1つずつ処理するコードを書くのが普通だ。
DrawingOperation.cs ファイルに定義したコマンドレットは1個の Database オブジェクトを処理するように設計しているので、EndProcessing() メソッドでパラメータとして受け取ったオブジェクト(データ)を処理するようにしている。
WriteObject()メソッドが重要で、オブジェクト(データ)を次のパイプラインや出力結果に流す働きをしている。
Open-Drawing コマンドレットは、空のデータベースオブジェクトを作成し、ReadDwgFile() メソッドでDWG/DXF/DXBファイルをデータベースに読み込んで、WriteObject() メソッドでデータベースオブジェクトをパイプラインに渡す。
Save-Drawing コマンドレットは、ファイル名、データベース、保存形式、バージョン、DXFファイルの精度をパラメータとして、図面をファイルに保存するためのもの。
上書き保存と、名前を付けて保存で呼び出すメソッドが異なるので、その辺をユーザーに意識させないようにコマンドレットで処理を行うようにした。
参考
Windows PowerShell コマンドレットの記述
2019年7月8日月曜日
登録:
コメントの投稿 (Atom)
ARESのトリニティ(三位一体)
ARESのトリニティ戦略、どこがトリニティなんでしょう。 まずはデスクトップCADが、WindowsにもMacにもLinux版もあるというトリニティ。 デスクトップCADと、モバイルCAD(ARES Touch)と、ブラウザとサーバーCAD(ARES Kudo)のトリニティ。 ...
-
SXFファイル形式は現在4つの拡張子のものが出回っている。 P21 (STEP AP 202) STEP 規格に基づいた正式な SXF ファイル。1個の図形を定義するのに、何行も使うし、英数字それも大文字ばかりの内容を見ると、昔懐かしい FORTRAN や COBOL のソ...
-
PowerShell で INI ファイル編集 PsIni というパッケージを使うとPowerShellでのINIファイル編集が容易になる。 残念なのは、シフトJIS に対応していないこと。 インストールの方法はPowerShell 上で次のように入力する Instal...
-
案外覚えやすい、DXFのグループコード。行ってみよう。 基本 0 データ種類{DXF名) 1 文字データ 2 名前(ブロック名など) 3 コメント、追加の文字データ 5 図形ハンドル 6 線種名 7 スタイル名(文字設定) 8 画層名 9 システム変数名 10 座標値 38 ...
0 件のコメント:
コメントを投稿