MicroStation PowerDraftマクロの使い方 その7

MicroStation PowerDraftマクロの7回目です。

今回はセル要素の作成方法をご紹介します。

セル要素を作成する関数は3つあります。

CreateCellElement1 (Name, Elements, Origin [, IsPointCell])

Name: String型 要素テンプレートを指定します
Elements: Element() 型 Element オブジェクトの配列
 セルを作成後はこれらの要素を参照することはできません
Origin: Point3d型 セルを配置する場所
IsPointCell: Matrix3d型
 セルを点セルとして配置するかどうかを指定します

 

CreateCellElement2 (CellName, Origin, Scale, TrueScale,   Rotation)

CellName: String型
 アタッチされたセルライブラリ内のセルの名前
Origin: Point3d 型 セルを配置する場所
Scale: Point3d 型
 配置する前にこのCellElementに適用するスケールファクター
Rotation: Matrix3d型
 要素の回転 回転はスケールファクターの前に適用されます
 回転無しの場合にはMatrix3dIdentityを指定します
TrueScale: Boolean型
 MicroStation はデザインファイルとセルライブラリの
 異なる作業単位間で変換するために自動的にスケールするか
 どうかを示します。Scale 引数によって示されたように
 スケールする前に実行します

 

CreateCellElement3 (CellName, Origin, TrueScale)

CellName: String型 セルの名前
Origin: Point3d型 セルを配置する場所
TrueScale: Boolean型
 MicroStation はデザインファイルとセルライブラリの
 異なる作業単位間で変換するために自動的にスケールするか
 どうかを示します。Scale 引数によって示されたように
 スケールする前に実行します

関数は3つありますがアタッチしたセルライブラリファイル

を用いてセルを配置することが多いので

CreateCellElement3を使用することが多いです。

では関数を使ってセル要素を作成してみましょう。

既存のセルライブラリファイルから[BOKUSOUCHI]というセルを
座標(10, 10, 0)に配置します。

コードは下記のようになります。

Dim eleCell As CellElement
Dim strCellName As String
Dim p3dOrigin As Point3d

strCellName = "BOKUSOUCHI"

p3dOrigin = Point3dFromXYZ(10, 10, 0)

Set eleCell = CreateCellElement3(strCellName, p3dOrigin, True)

Call ActiveModelReference.AddElement(eleCell)

上記のコードを実行すると下図に示すようにデザイン上にセル要素が表示されます。

 

cell

 

以上でセル要素の生成方法について紹介を終わります。

次回は要素のレイヤの変更方法についてご紹介します。

コメントを残す

メールアドレスが公開されることはありません。