Class TLcdS52SLDGXYLayerFactory

java.lang.Object
com.luciad.format.s52.gxy.TLcdS52SLDGXYLayerFactory
All Implemented Interfaces:
ILcdSLDGXYLayerFactory

@LcdService(service=ILcdSLDGXYLayerFactory.class, priority=20000) public class TLcdS52SLDGXYLayerFactory extends Object implements ILcdSLDGXYLayerFactory

ILcdSLDGXYLayerFactory implementation which can create layers for S-57 models using a given SLD style. This layer factory can only be used for SLD styles that use a TLcdS52SLDSymbolizer. Otherwise, no layer is created. Both AML and ENC models are supported. The returned layer is an ILcdGXYEditableLabelsLayer.

Since:
2017.0
  • Constructor Details

    • TLcdS52SLDGXYLayerFactory

      public TLcdS52SLDGXYLayerFactory()
  • Method Details

    • createGXYLayer

      public ILcdGXYLayer createGXYLayer(ILcdModel aModel, List<TLcdSLDFeatureTypeStyle> aStyles)
      Description copied from interface: ILcdSLDGXYLayerFactory
      Creates an ILcdGXYLayer for representing the given ILcdModel on an ILcdGXYView, according to the given TLcdSLDFeatureTypeStyle's.
      Specified by:
      createGXYLayer in interface ILcdSLDGXYLayerFactory
      Parameters:
      aModel - the model that needs to be visualized in an ILcdGXYView
      aStyles - the SLD feature type style(s) defining how the model should be visually represented on the view
      Returns:
      a layer representing the given model, or null if a layer cannot be created (e.g. because this layer factory doesn't support the given model).
    • setAntiAliasing

      public void setAntiAliasing(boolean aAntiAliasing)

      Indicates whether the S-52 symbologies used by this layer factory should use anti-aliasing or not. Anti-aliasing currently only affects icons, not lines. Anti-aliasing results in smoother icons but may be slightly slower in rendering.

      Changing this setting will only affect layers which are created after this setting has been changed. Layers which have been created earlier remain unaffected.

      Parameters:
      aAntiAliasing - true when anti-aliasing should be turned on
    • isAntiAliasing

      public boolean isAntiAliasing()

      Indicates whether the S-52 symbologies used by this layer factory use anti-aliasing or not. Anti-aliasing currently only affects icons, not lines. Anti-aliasing results in smoother icons but may be slightly slower in rendering.

      Returns:
      true when anti-aliasing is turned on; false otherwise
    • setScaleFactor

      public void setScaleFactor(double aScaleFactor)
      Sets the scale factor for the S-52 symbols rendered by this layer factory, in pixels per millimeter. This setting affects the size of the rendered symbols: higher values yield larger symbols. The scale factor corresponds to a screen resolution. The default value is 3, which corresponds to a commodity screen resolution.
      Parameters:
      aScaleFactor - a scale factor, in pixels per millimeter
    • getScaleFactor

      public double getScaleFactor()
      Gets the scale factor for the S-52 symbols rendered by this layer factory, in pixels per millimeter. The scale factor corresponds to a screen resolution. The default value is 3, which corresponds to a commodity screen resolution.
      Returns:
      the scale factor