サポート > PC-MAPPING ヒント集 > スクリプト > イベント駆動型スクリプティングD [アクティブレイヤーの入れ替えその1(縮尺制御)]
イベント駆動型スクリプティングD [アクティブレイヤーの入れ替えその1(縮尺制御)]
表示縮尺制御では、レイヤーの表示・非表示だけしかできません。アクティブレイヤーしか実行対象としないような機能(検索、作図等)が行なえるように、縮尺によってアクティブなレイヤーを自動的に変更したいとは思いませんか?
ここでは、プロジェクト内スクリプトを使用し、OnZoomChangedイベントに対して「縮尺によってアクティブなレイヤーを変更する」スクリプトを記述しました。
■ サンプル
サンプル[script17.zip(約73KB)]をダウンロードする
sample_js.pcm:JScriptサンプルプロジェクト
sample_vbs.pcm:VBScriptサンプルプロジェクト

《内容》
レイヤーには「画地」「大字界」が登録されています。
  • 表示縮尺「1/1000」より大きい場合「大字界」レイヤーを
  • 表示縮尺「1/1000」より小さい場合「画地」レイヤーを
アクティブにして表示します。

■ 解説
function OnZoomChanged()
{

}

PC-MAPPINGベクターウィドウ上を縮尺が変更されたときに実行します。
添付されているプロジェクトには以下のように、「スクリプト」へ記述され、「通知するイベント」チェックボックスがONになっています。

■ 実行
  1. 添付されているプロジェクトファイルを開きます。
    現在、表示縮尺は「1/1300」です(ディスプレイのサイズに影響されますので、必ずではありません)。

  2. [画面表示]リボン-[画面表示]-[縮尺設定]を実行し、縮尺1/800で表示します。

  3. すると、「画地」レイヤーがアクティブになり、画地文字列、地目色塗り表示されます。