IlvMapLabeler インターフェースの使用

動的地図ラベリング・メカニズムのエントリー・ポイントは、IlvMapLabeler インターフェースです。このインターフェースを実装するクラスは、指定された IlvManager. IlvMapLabelerProperty クラスは、IlvMapLabelerIlvManager に付加するために使用される名前付きプロパティーです。この地図ラベラーは、マネージャーにインポートされたすべてのデータ・ソースを扱います。モデル・データは永続化され、地図保存時に保存されます。
地図ラベラーには、以下を呼び出してアクセスできます。
IlvMapLabeler labeler = IlvMapLabelerProperty.GetMapLabeler(manager);
特定のラベラーがプロパティーに対して設定されていない場合、このメソッドは IlvMapDefaultLabeler. このデフォルト・ラベラー・クラスは、自動的に地図レイヤーをラベルに作成して設定し、ビューに付加されているレイヤー構造への変更を受け入れます。これにより、レイヤー順序が変更したときに、ラベリングが更新されるようになります。これには、 IlvMapLayerIlvMap の LABEL_ATTRIBUTE フィールドに応じて、適切なラベルをグラフィック・オブジェクトに対して作成するための内部 IlvMapLabelFactory も含まれています。IlvMapLayer. IlvMapLabelFactory の詳細については、「IlvMapLabelFactory インターフェース」を参照してください。
地図上の任意の地図レイヤーにラベルを追加するには、以下の手順に従います。
  1. ラベリングするレイヤーを定義します。
    IlvMapLayer layerToLabel;
    
  2. デフォルトの IlvMapDefaultLabeler を作成して、これをマネージャーに設定します。
    IlvMapLabeler labeler =
      IlvMapLabelerProperty.GetMapLabeler(manager);
    
  3. このラベラーはビューと対話するため、どのビュー内でラベルを表示するのかを示さなくてはなりません。
  4. グラフィック・オブジェクトのどの属性がラベルとして表示されるかを指定するために、地図レイヤーにラベル属性を設定します (読み込んだファイル形式で利用可能な属性を確認します)。
  5. 地図レイヤーをラベラーと共にラベルに登録します。
  6. 最後に、ラベリング・スレッドに、すべてのラベリング済みレイヤーのためにラベルを計算するように通知します。