VALUEMAPLABELRENDERER  サンプル

適用: CONFIG   REQUEST   RESPONSE  
サーバ: Image   Feature  
親要素: GROUPRENDERER   LAYER   LAYERDEF   LAYERINFO   SCALEDEPENDENTRENDERER  

<VALUEMAPLABELRENDERER 属性の概要

     labelfield ="文字列"
     lookupfield ="文字列"
     featureweight ="no_weight | med_weight | high_weight"  [no_weight]
     howmanylabels ="one_label_per_name | one_label_per_shape | one_label_per_part"  [one_label_per_name]
     labelbufferratio ="倍精度実数"  [0.0]
     labelpriorities ="0,0,0,0,0,0,0,0 - 8,8,8,8,8,8,8,8 | LE_PlaceOnTopHorizontal"  [2,2,1,4,5,3,2,4]
     labelweight ="no_weight | med_weight | high_weight"  [high_ weight]
     linelabelposition ="下記の属性の概要を参照"  [placeabove]
     rotationalangles ="文字列"
>

     (m) <EXACT... />  [または]
     (m) <RANGE... />  [または]
     <OTHER... />

</VALUEMAPLABELRENDERER >
太字:必須の属性もしくは子要素
(m):複数回使用できる子要素


概要


制限


注意


属性の概要

属性 使い方 トップに戻る
featureweight フィーチャの重要性の優先順位を付けます。フィーチャのウェイトは、ラベルを付けられたフィーチャがラベル配置アルゴリズムでどれだけ重要かを決定します。"no_weight"が指定された場合、そのフィーチャは重要ではなく、フィーチャに重ねてラベルを付けることができます。"high_weight"が指定された場合、そのフィーチャの重要性は高く、フィーチャに重ねてラベルを付けることはできません。フィーチャに重要性を与えることにより、ラベル付加の問題が複雑になり、さらに処理時間も増加します。
howmanylabels フィーチャにラベルをどれだけ付けるかを決定します。
  • "One_label_per_part"は、マルチパート フィーチャの場合、フィーチャのすべてのパートにラベルを付けます。例えば、ハワイ州はいくつかの島で成り立っていますが、1つのポリゴン フィーチャとしてまとめられます。各々の島はラベルが付けられます。
  • "One_label_per_name"は、フィーチャの名前ごとに1つのラベルを付けます。複数のフィーチャが同じ名前を共有する場合、1つのラベルだけが表示されます。例えば、"Residential"という名前のポリゴンが複数ある場合、1つの"Residential"ポリゴンにだけラベルが付けられます。
  • "One_label_per_shape"は、複数のセグメントがある場合でも、フィーチャごとに1つのラベルを付けます。例えば、ハワイを構成する島々のグループは1つだけラベルが付けられます。同じ名前を持つフィーチャが他にある場合、それらにもラベルが付けられます。
labelbufferratio ラベル周囲のバッファを設定するために使用されます。これが設定されている場合、バッファ範囲内に他のラベルは重なりません。比率はバッファの幅をラベル矩形の高さあるいは幅(より小さいどちらか)で割った値です。比率"0.0"はバッファ無しを意味します。比率"1.0"はバッファがラベルのサイズの2倍であることを意味します(ラベルの幅がバッファの幅と等しい)。負の比率はバッファをラベルより小さくします。これはラベルの重なりを許すのに使用することができます。
labelfield フィーチャにラベルを付けるための文字列を含んでいるフィールドです。そのフィールドはレイヤの属性テーブル、あるいは結合テーブルのフィールドです。フィールド名がすべて大文字の場合は一般的にパフォーマンスは向上します。DBFのテーブル名を結合させた場合やマップ設定ファイルのフィールド名で制限つきのArcSDE名が使用された場合はそのファイルはArcIMS AuthorやArcExplorer 9では読み込めません。
  • 結合テーブルを持たないシェープファイルでは、フィールドは短い形式を使用して参照できます。
    labelfield="AREA"
  • 結合テーブルを持つシェープファイルでは、結合テーブル名がフィールド名の前に含まれている必要があります。
    labelfield="JOINEDTABLE.AREA"
  • 結合テーブルを持たないArcSDEレイヤでは、フィールドは短い形式を使用して参照できます。
    labelfield="AREA"
    完全な形式の名前も使用することができます。
    labelfield="ARCSDENAME.TABLE.AREA"
  • 結合テーブルを持つArcSDEレイヤでは、結合フィールドは完全な形式を使用して参照される必要があります。
    labelfield="ARCSDENAME.TABLE.AREA"
ラベルは2つ以上のフィールドを連結したデータを含めることができます。各フィールド名は半角スペースで区切られます。
  • 結合テーブルを持たないシェープファイルを使用する場合。フィールド名には短い形式を使用できます。
    labelfield="CITY STATE_NAME"
  • 結合テーブルを持つシェープファイルを使用する場合。結合テーブル名がフィールド名の前に含まれている必要があります。
    labelfield="JOINEDTABLE.CITY JOINEDTABLE.STATE_NAME"
  • 結合テーブルを持たないArcSDEレイヤを使用する場合。短い形式を使用できます。
    labelfield="CITY STATE_NAME"
    完全な形式の名前も使用することができます。
    labelfield="ARCSDENAME.TABLE.CITY ARCSDENAME.JOINEDTABLE.STATE_NAME"
  • 結合テーブルを持つArcSDEレイヤを使用する場合。完全な形式が使用される必要があります。
    labelfield="ARCSDENAME.TABLE.CITY ARCSDENAME.JOINEDTABLE.STATE_NAME"
labelpriorities ポイント周辺のどこにラベルを配置するかを決定するために使用されます。属性はポイント周辺の8つの位置について、それぞれ異なるウェイトを受け取ります。それぞれの位置は以下に示されるような位置に対応します:

1 2 3
8 X 4
7 6 5

それぞれの位置について、ユーザは重要度の優先順位を0以上の値で付けることができます。0はラベルがその位置に配置されてはならないことを示します。1はラベルが配置可能な位置であることを意味し、数値が高くなるほど、その位置の優先順位は低くなることを表します。例えば、"1,0,1,0,0,0,0,0"はラベルを付ける際に1番目と3番目のラベル位置だけが考慮されることを意味します。別の例で、"1,2,3,0,1,0,0,0"は1番目と5番目の位置にラベルを付けることを試み、ラベルが付けられない場合は2番目の位置にラベルを置くことを試み、ラベルが置けない場合は3番目の位置に置くことを試み、これが不可能な場合はラベルを付けないことを意味します。

<VALUEMAPLABELRENDERER lookupfield="TYPE" labelfield="NAME" labelpriorities="1,2,3,0,1,0,0,0">

イメージ サービスを使用する場合の別のオプションは、ポイント周辺ではなく、ポイント上にラベルを配置することです。これを行うためにはラベルの優先度に"LE_PlaceOnTopHorizontal"を使用して下さい。

<VALUEMAPLABELRENDERER lookupfield="TYPE" labelfield="NAME" labelpriorities="LE_PlaceOnTopHorizontal">
labelweight ラベルの重要度の優先順位を付けるために使用されます。ラベルがより重要であることから、ラベルのウェイトは通常"high_weight"に設定されています。ラベルがフィーチャほど重要でない場合、この属性を低く設定することができます。
linelabelposition ラベルをライン上のどこに配置するかを決定します。次のオプションが利用可能です:
  • placeabove - ラインの上部に配置します。
  • placebelow - ラインの下部に配置します。
  • placeontop - ライン上に配置します。
  • placeleft - ラインの左側に配置します。(ラベルはラインに続き、ラインに垂直ではありません)
  • placeright - ラインの右側に配置します。(ラベルはラインに続き、ラインに垂直ではありません)
  • placeabovebelow - ラインの上部または下部に配置します。
  • placeleftright - ラインの左側または右側に配置します。
  • placeinline - ライン上のどこかに配置します。
  • placeparallel - ラインと平行に配置します。
  • placeontophorizontal - ライン上、かつ常に水平に配置します。
  • placeatstartabove - ラインの開始点の上部に配置します。
  • placeatstartontop - ラインの開始点上に配置します。
  • placeatstartbelow - ラインの開始点の下部に配置します。
  • placeatendabove - ラインの終点の上部に配置します。
  • placeatendontop - ラインの終点上に配置します。
  • placeatendbelow - ラインの終点の下部に配置します。
  • placeeitherendabove - ラインの開始点または終点の上部に配置します。
  • placeeitherendontop - ラインの開始点上または終点上に配置します。
  • placeeitherendbelow - ラインの開始点または終点の下部に配置します。
<VALUEMAPLABELRENDERER lookupfield="ADMN_CLASS" labelfield="ROUTE" linelabelposition="placeontop">

lookupfield RANGEの範囲、あるいはEXACTの正確な値を指定するために使用されるフィールドの名前です。そのフィールドはレイヤの属性テーブル、あるいは結合テーブルのフィールドです。DBFのテーブル名を結合させた場合やマップ設定ファイルのフィールド名で制限つきのArcSDE名が使用された場合はそのファイルはArcIMS AuthorやArcExplorer 9では読み込めません。
  • 結合テーブルを持たないシェープファイルでは、フィールドは短い形式を使用して参照できます。
    lookupfield="AREA"
  • 結合テーブルを持つシェープファイルでは、結合テーブル名がフィールド名の前に含まれている必要があります。
    lookupfield="JOINEDTABLE.AREA"
  • 結合テーブルを持たないArcSDEレイヤでは、フィールドは短い形式を使用して参照できます。
    lookupfield="AREA"
    完全な形式の名前も使用することができます。
    lookupfield="ARCSDENAME.TABLE.AREA"
  • 結合テーブルを持つArcSDEレイヤでは、結合フィールドは完全な形式を使用して参照される必要があります。
    lookupfield="ARCSDENAME.TABLE.AREA"
rotationalangles 回転角度はラベルが付けられたポイントと比較して、ラベルを配置することが可能な角度です。デフォルトでは、ラベルは常に水平に配置されます。ラベルを回転するために、8つまでの回転角度のカンマ区切りのリストを与えることが可能で、先頭から末尾の順で優先順位が付けられます。例えば、最初に優先されるのが45度でラベルを配置することで、2番目に優先されるのが30度の場合、回転角度の属性はこのようになるでしょう:

<VALUEMAPLABELRENDERER lookupfield="TYPE" labelfield="NAME" rotationalangles="45,30">

labelprioritiesrotationalanglesより常に優先されます。ラベルが予想通りに回転していない場合、labelpriorities属性が設定されていればそれを削除して下さい。もしくは、すべてのlabelprioritiesを"0"に設定して下さい。

<VALUEMAPLABELRENDERER lookupfield="TYPE" labelfield="NAME" rotationalangles="45,30" >
または
<VALUEMAPLABELRENDERER lookupfield="TYPE" labelfield="NAME" labelpriorities="0,0,0,0,0,0,0,0" rotationalangles="45,30" >
 

サンプル

サンプル 1:EXACTを使用して、ライン レイヤにラベルを付ける場合 トップに戻る
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
  <CONFIG>
    <ENVIRONMENT>
      <LOCALE country="US" language="en" variant="" />
      <UIFONT color="0,0,0" name="Arial" size="12" style="regular" />
      <SCREEN dpi="96" />
    </ENVIRONMENT>
    <MAP>
      <PROPERTIES>
        <ENVELOPE minx="-178.215027" miny="18.924782" maxx="-66.969849" maxy="71.406647" name="Initial_Extent" />
        <MAPUNITS units="decimal_degrees" />
        <FILTERCOORDSYS id="4326" />
        <FEATURECOORDSYS id="4326"/>
      </PROPERTIES>
      <WORKSPACES>
         <SHAPEWORKSPACE name="shp_ws-0" directory="<path to USA ESRIDATA>"/>
      </WORKSPACES>
      <LAYER type="featureclass" name="ROADS" visible="true" id="1">
        <DATASET name="ROADS" type="line" workspace="shp_ws-0" />
        <GROUPRENDERER>
          <VALUEMAPLABELRENDERER lookupfield="ADMN_CLASS" labelfield="ROUTE" linelabelposition="placeontop" howmanylabels="one_label_per_shape">
          <EXACT value="US Highway" label="US Highway">
            <SHIELDSYMBOL font="Arial" fontstyle="regular" fontsize="10" type="usroad" />
          </EXACT>
          <EXACT value="Interstate" label="Interstate">
            <SHIELDSYMBOL antialiasing="true" font="Arial" fontstyle="regular" fontsize="10" type="interstate" />
          </EXACT>
          <OTHER>
            <TEXTSYMBOL font="Arial" fontstyle="regular" fontsize="10" />
          </OTHER>
        </VALUEMAPLABELRENDERER>
        <SIMPLERENDERER>
            <SIMPLELINESYMBOL type="solid" width="2" color="27,127,27" />
          </SIMPLERENDERER>
        </GROUPRENDERER>
      </LAYER>
    </MAP>
  </CONFIG>
</ARCXML>

サンプル 2:RANGEで異なるタイプのテキスト シンボルを使用して、ポイント レイヤにラベルを付ける場合 トップに戻る
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
  <CONFIG>
    <ENVIRONMENT>
      <LOCALE country="US" language="en" variant="" />
      <UIFONT color="0,0,0" name="Arial" size="12" style="regular" />
      <SCREEN dpi="96" />
    </ENVIRONMENT>
    <MAP>
      <PROPERTIES>
        <ENVELOPE minx="-180" miny="-90" maxx="180" maxy="90" name="Initial_Extent" />
         <MAPUNITS units="decimal_degrees" />
        <FILTERCOORDSYS id="4326" />
        <FEATURECOORDSYS id="4326"/>
      </PROPERTIES>
      <WORKSPACES>
         <SHAPEWORKSPACE name="shp_ws-0" directory="<path to WORLD ESRIDATA>"/>
      </WORKSPACES>
      <LAYER type="featureclass" name="cities" visible="true" id="1">
        <DATASET name="cities" type="point" workspace="shp_ws-0" />
        <GROUPRENDERER>
          <VALUEMAPLABELRENDERER lookupfield="POPULATION" labelfield="NAME" labelpriorities="1,0,0,0,0,0,0,0">
          <RANGE lower="0.0" upper="150000.0" label="Smallest">
            <TEXTSYMBOL font="Tahoma" fontstyle="regular" fontsize="10" />
          </RANGE>
          <RANGE lower="150001.0" upper="750000.0" label="Medium">
            <TEXTSYMBOL font="Arial" fontstyle="italic" fontsize="12" glowing="125,125,125" />
          </RANGE>
          <RANGE lower="750001.0" upper="3427180.0" label="Largest">
            <TEXTSYMBOL font="Times New Roman" fontstyle="bolditalic" fontsize="14" glowing="255,255,0" shadow="0,0,0" />
          </RANGE>
          </VALUEMAPLABELRENDERER>
          <SIMPLERENDERER>
            <SIMPLEMARKERSYMBOL color="51,102,51" width="8" />
          </SIMPLERENDERER>
        </GROUPRENDERER>
      </LAYER>
    </MAP>
  </CONFIG>
</ARCXML>