geoserverスタイル(SLDモード) - 層要素は、異なるスタイル、異なる次元で表示されます

一定規模ディスプレイの需要がある場合は、ポイントの小さな固体ドット、その後、一定規模の円形のimgアイコンを表示するので、それを達成するためにどのようにズームしますか?この使用するMinScaleDenominatorと、MaxScaleDenominator次の3点に注意することは、これらの2つのラベルのラベルを使用:

  1. どちらのラベルが置かれるべきであるRuleラベルの使用を
  2. 二つのタグを単独で用いてもよく、MinScaleDenominatorそれはルールの使用に対応し、この時間スケールよりも大きい値を表し、MaxScaleDenominatorこの値未満では、ルールの使用に対応し、スケールを表す場合
  3. MinScaleDenominatorそして、MaxScaleDenominatorそれは順不同で位置を書いて、同時に使用することができます

今、私たちが言及した要件を達成するために始めている、次のように、完全なコードは次のようになります。

<?xml version="1.0" encoding="ISO-8859-1"?>
<StyledLayerDescriptor version="1.0.0"
  xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd"
  xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc"
  xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <NamedLayer>
    <Name>chargesite</Name>
    <UserStyle>
      <Title>gold square point style</Title>
      <FeatureTypeStyle>
        <Rule>      
          <MinScaleDenominator>400000</MinScaleDenominator>   
          <MaxScaleDenominator>1200000</MaxScaleDenominator>
          <PointSymbolizer>
            <Graphic>
              <Mark>
                <WellKnownName>circle</WellKnownName>
                <Fill>
                  <CssParameter name="fill">#00ff00</CssParameter>
                </Fill>
              </Mark>
              <Size>6</Size>
            </Graphic>
          </PointSymbolizer>
        </Rule>
        <Rule>
          <MaxScaleDenominator>400000</MaxScaleDenominator>
          <PointSymbolizer>
            <Graphic>
              <ExternalGraphic>
                <OnlineResource xlink:type="simple" xlink:href="charge_site.png" />
                <Format>image/png</Format>
              </ExternalGraphic>
              <Size><ogc:Literal>16</ogc:Literal></Size>
            </Graphic>
          </PointSymbolizer>
          <TextSymbolizer>
              <Label>
                  <ogc:PropertyName>stationName</ogc:PropertyName>
              </Label>
              <Font>
                  <CssParameter name="font-family">微软雅黑</CssParameter>
                  <CssParameter name="font-size">13</CssParameter>
                  <CssParameter name="font-style">normal</CssParameter>
                  <CssParameter name="font-weight">bold</CssParameter>
              </Font> 
             <LabelPlacement>          	
                  <PointPlacement>
                      <AnchorPoint>
                          <AnchorPointX>0</AnchorPointX>
                          <AnchorPointY>0</AnchorPointY>
                      </AnchorPoint>
                      <Displacement>
                          <DisplacementX>12</DisplacementX>
                          <DisplacementY>0</DisplacementY>
                      </Displacement>
                  </PointPlacement>
              </LabelPlacement>  
              <Fill>
                  <CssParameter name="fill">#00ff00</CssParameter>
              </Fill>
        	</TextSymbolizer>
        </Rule>

      </FeatureTypeStyle>
    </UserStyle>
  </NamedLayer>
</StyledLayerDescriptor>

効果:
ズーム比が120万より大きい場合、ポイントが表示されていない1:
ここに画像を挿入説明
2の400,000から1,200,000ズーム比、緑色の点:
ここに画像を挿入説明
3、ズーム比が少ない40万未満である場合、指定された画像を表示します。
ここに画像を挿入説明

公開された51元の記事 ウォン称賛13 ビュー20000 +

おすすめ

転載: blog.csdn.net/huzhenv5/article/details/103989088