ラベル ウェイトおよびフィーチャ ウェイトは、ラベルとフィーチャに相対的な重要度を割り当てるために使用されます。 このウェイトは、ラベルとフィーチャの間に競合 (オーバーラップ) がある場合にのみ使用します。 マップ上でのラベルの最終的な位置は、ラベルとフィーチャのウェイトに依存します。 さらに、ウェイトを操作する際には、ラベルが一部のフィーチャに重なることを許可すると、テーブル エンジンがラベルの配置に使用できるスペースが増えるので、通常はマップ上に配置されるラベルの数が増えることに注意してください。
フィーチャ ウェイトが設定されたフィーチャは、ラベリングされていない場合でも、常にバリアとしてラベル エンジンに渡されます。 表示されるフィーチャの数を制限する SQL クエリがある場合は、フィーチャのサブセットのみがバリアとして配置エンジンに追加されます。 残りのフィーチャは、バリアとして表示されたり使用されたりしません。
下の画像は、道路にフィーチャ ウェイトを使用する前後のシナリオを示しています。 左の画像は、道路に対するフィーチャ ウェイトが 0 に設定されています。 複数のラベルが道路フィーチャに重なっています。 右の画像は、道路に対するフィーチャ ウェイトが設定されています。 ここで、ラベルは道路のフィーチャに重ならないように、位置が移動しています。 道路のフィーチャに重ならないように配置できない場合は、複数の道路ではなく、1 つの道路のみに重なる位置にラベルが移動します。
Standard Label Engine のウェイト
Standard Label Engine を使用する場合、ラベルには、[低]、[中]、または [高] のウェイトを設定できます。 フィーチャには、[なし]、[低]、[中]、または [高] のウェイトを設定できます。 原則として、同等またはより低いウェイトを持つラベルがフィーチャの上に重なることはありません。 デフォルトで、フィーチャには [高] のラベル ウェイトが設定されています。 一般的に、ラベルが重要であれほど、高いラベル ウェイトを付与する必要があります。 デフォルトでは、ラベル クラスのフィーチャに [なし] のフィーチャ ウェイトが設定され、アノテーション レイヤー、ディメンション レイヤー、およびグラフィックス レイヤーでは、フィーチャに [高] のフィーチャ ウェイトが設定されます。これは、テキストの上にラベルを配置しないようにするためです。 フィーチャのウェイトを増やすと、ラベル エンジンがラベルの配置に要する処理時間も長くなります。 ポイントまたはライン フィーチャに「高」のフィーチャ ウェイトを設定すると、これらのフィーチャの上にラベルが配置されることはなくなります。 ポリゴン フィーチャに「高」のフィーチャ ウェイトを設定すると、これらのフィーチャのアウトライン上にラベルが配置されることはなくなります。
Maplex Label Engine のウェイト
フィーチャ ウェイトは、1 ~ 1000 のスケールでランク付けされます。 フィーチャ ウェイトが 0 のフィーチャはラベルを配置可能なスペースとして扱われ、フィーチャ ウェイトが 1,000 のフィーチャは障害物と見なされ、ラベルを重ねることができません。 Maplex Label Engine では、まず空きスペースにラベルを配置するよう試みます。 また、ラベルを配置可能な空きスペースがなく、フィーチャにラベルを重ねる必要がある場合は、総フィーチャ ウェイトが最も小さい場所が選択されます。
Maplex Label Engine を使用する場合、ポリゴン フィーチャには 2 種類のフィーチャ ウェイトがあります。 内部ウェイトは、他のフィーチャとの比較における、ポリゴンの内部の重要度を指定できます。 境界線ウェイトは、他のフィーチャとの比較における、ポリゴンのエッジの重要度を指定できます。 ポリゴンの内部にはラベルが重なり、そのポリゴンのエッジにはラベルが重ならないようにできます。また、その逆も可能です。
アクティブなマップ内のすべてのラベル クラスが、[ラベル ウェイト ランキング] ダイアログ ボックスに一覧表示されます。 各ラベル クラスとともに、フィーチャ レイヤー名、ダッシュ、およびラベル クラス名が表示されます。 アノテーション レイヤー、ディメンション レイヤー、およびグラフィックス レイヤーも、ラベル配置のバリアとして使用できるため、一覧表示されます。
ラベルの重複を許可
デフォルトでは、ラベルの競合はラベル エンジンによって自動的に解決されるため、ラベルが重なり合うことはありません。 この動作は、レイヤーまたはラベル クラスが [ラベル優先度ランキング] ダイアログの最上位にあり、ラベル ウェイトが [高] に設定されていて、Standard Label Engine を使用している場合は [ラベルの重複を許可] がオンに、Maplex Label Engine を使用している場合は [ラベルを削除しない] がオンになっていることを確認することで変更できます。
次に、ウェイトの一般的な使用方法を示します。
- ポイントまたはライン フィーチャまたはポリゴン アウトラインの特定のレイヤー上に、ラベルがまったく配置されないようにします。 この場合は、フィーチャ ウェイトを [高] または 1,000 に設定します。
- ラベル エンジンにラベルを別の場所に配置させます。 この場合は、フィーチャ ウェイトを [中] に設定します。
- 一部のラベルが一部のフィーチャ上に配置されるのを防ぎます。 これを行うには、一部のフィーチャ ウェイトを増やし、一部のラベル ウェイトを減らします。
注意:
マップに、テキスト以外のグラフィックスを含むアノテーション レイヤーまたはグラフィックス レイヤーがある場合は、レイヤーのフィーチャ ウェイトを [なし] または 0 に設定して、ラベルがこれらのグラフィックスの上に配置されるように指定します。
- [ラベリング] タブの [マップ] グループで、[その他] > [ウェイト] をクリックします。
- 変更するラベルまたはフィーチャ ウェイトをクリックして、ウェイトを変更します。
アノテーション レイヤー、ディメンション レイヤー、またはグラフィックス レイヤーのウェイトには、[グラフィック レイヤー] タブをクリックしてアクセスできます。