スクリプトによるスナップ属性転記
スナップしたベクターの内部属性フィールドの値を次にスナップしたベクターの内部属性フィールドに転記します。
転記する対象は、同一名称のフィールドタイトルのみです。
- ■ サンプル
- サンプル[script38.zip(約30KB)]をダウンロードする
| sample.pcm | :サンプルプロジェクト |
| Attrtrans.js | :サンプルJScript |
| Attrtrans.vbs | :サンプルVBScript |
- ■ 準備
- JScriptの場合「Attrtrans.js」、VBScriptの場合「Attrtrans.vbs」を記述します。
ここでは、「Attrtrans.js」を例に記述します。
- ダウンロードしたファイルを「C:\sample\script38」へ解凍します。
- ダウンロードしたスクリプトファイル「Attrtrans.js」をユーザーメニューに登録します。
[ワークスペース]-[カスタマイズ]-[ユーザーメニュー]を実行して、[ユーザー定義メニュー1]ダイアログボックスを表示します。
<追加>ボタンをクリックし、[ユーザー定義メニュー2]ダイアログボックスを表示します。
スクリプトを登録して、引数を以下のように設定します。
ここでは、
- 転記元のレイヤータイトル「下水管」
- 転記元のベクター番号「1」(=アーク)
- 転記先のレイヤータイトル「管きょ表記」
- 転記先のベクター番号「4」(=ポイント)
と入力します。
- 種類
- 「スクリプト プロシージャ」を選択します。
- 引数
-
- para1:転記元のレイヤータイトル
- para2:転記元のベクター要素
- 1 = アーク
2 = ノード
3 = ポリゴン
4 = ポイント
- para3:転記先のレイヤータイトル
- para4:転記先のベクター要素
- 1 = アーク
2 = ノード
3 = ポリゴン
4 = ポイント
- ファイル名
- ダウンロードしたスクリプトファイルを登録します。
- ■ 解説
- [ユーザーメニュー]-[属性転記]-[スナップ属性転記]を実行すると、「下水管」レイヤーアーク内部属性「管径」「勾配」「延長」「断面形状」「回転角度」フィールドの値を「管きょ表記」レイヤーポイント内部属性「断面形状」「管径」「勾配」「延長」「回転角度」フィールドへ転記します。
なお、「下水管」レイヤーアーク内部属性「回転角度」フィールドは、計算式「$DegCenterPos180」を使用して、アーク中点での傾き(-180度〜+180度)を取得しています。
「管きょ表記」レイヤーポイント内部属性「断面形状」フィールドは、「断面形状」描画パラメーターを使用してシンボル表記しています。
「管径」「勾配」「延長」フィールドは、画面上に文字を表記しています。
「回転角度」フィールドは、文字の傾きに使用しています。
▼「下水管」レイヤーアーク内部属性
▼「管きょ表記」レイヤーポイント内部属性
- ■ 実行
-
- サンプルプロジェクト「sample.pcm」を開きます。
- [ユーザーメニュー]-[属性転記]-[スナップ属性転記]を実行します。
- 「下水管」レイヤーのアークをマウス左ボタンでスナップします。
スナップしたアークは選択状態になります。
- 「管きょ表記」レイヤーのポイントをマウス左ボタンでスナップします。
スナップしたポイントは選択状態になります。
「下水管」レイヤーアーク内部属性「管径」「勾配」「延長」「断面形状」「回転角度」フィールドの値が「管きょ表記」レイヤーポイント内部属性「断面形状」「管径」「勾配」「延長」「回転角度」フィールドに転記され、「管きょ表記」レイヤーポイントのシンボル、文字、文字角度が変更されます。
- 「属性を転記しました。」メッセージボックスが表示されますので、<OK>ボタンを押します。
- マウス右ボタンで処理を終了します。
|