Class RenderTheme

java.lang.Object
org.oscim.theme.RenderTheme
All Implemented Interfaces:
IRenderTheme
Direct Known Subclasses:
AtlasRenderTheme

public class RenderTheme extends Object implements IRenderTheme
  • Constructor Details

    • RenderTheme

      public RenderTheme(int mapBackground, float baseTextSize, Rule[] rules, int levels)
    • RenderTheme

      public RenderTheme(int mapBackground, float baseTextSize, Rule[] rules, int levels, Map<String,String> transformKeyMap, Map<Tag,Tag> transformTagMap)
    • RenderTheme

      public RenderTheme(int mapBackground, float baseTextSize, Rule[] rules, int levels, boolean mapsforgeTheme)
    • RenderTheme

      public RenderTheme(int mapBackground, float baseTextSize, Rule[] rules, int levels, Map<String,String> transformKeyMap, Map<Tag,Tag> transformTagMap, boolean mapsforgeTheme)
  • Method Details

    • dispose

      public void dispose()
      Description copied from interface: IRenderTheme
      Must be called when this RenderTheme gets destroyed to clean up and free resources.
      Specified by:
      dispose in interface IRenderTheme
    • getLevels

      public int getLevels()
      Specified by:
      getLevels in interface IRenderTheme
      Returns:
      the number of distinct drawing levels required by this RenderTheme.
    • getMapBackground

      public int getMapBackground()
      Specified by:
      getMapBackground in interface IRenderTheme
      Returns:
      the map background color of this RenderTheme.
    • isMapsforgeTheme

      public boolean isMapsforgeTheme()
      Description copied from interface: IRenderTheme
      Is Mapsforge or VTM theme.
      Specified by:
      isMapsforgeTheme in interface IRenderTheme
    • matchElement

      public RenderStyle[] matchElement(GeometryBuffer.GeometryType geometryType, TagSet tags, int zoomLevel)
      Description copied from interface: IRenderTheme
      Matches a MapElement with the given parameters against this RenderTheme.
      Specified by:
      matchElement in interface IRenderTheme
      zoomLevel - the zoom level at which the way should be matched.
      Returns:
      matching render instructions
    • scaleTextSize

      public void scaleTextSize(float scaleFactor)
      Description copied from interface: IRenderTheme
      Scales the text size of this RenderTheme by the given factor.
      Specified by:
      scaleTextSize in interface IRenderTheme
      Parameters:
      scaleFactor - the factor by which the text size should be scaled.
    • transformBackwardKey

      public String transformBackwardKey(String key)
      Description copied from interface: IRenderTheme
      Transform internal key to tile source key. e.g. for lazy fetched tag values via tile source key. Use when tile source and internal keys have 1-1 relation.
      Specified by:
      transformBackwardKey in interface IRenderTheme
      Returns:
      the backwards transformed tag key.
    • transformForwardKey

      public String transformForwardKey(String key)
      Description copied from interface: IRenderTheme
      Transform tile source key to internal key.
      Specified by:
      transformForwardKey in interface IRenderTheme
      Returns:
      the forward transformed tag key.
    • transformBackwardTag

      public Tag transformBackwardTag(Tag tag)
      Description copied from interface: IRenderTheme
      Transform internal tag to tile source tag. Use when tile source and internal tags have 1-1 relation.
      Specified by:
      transformBackwardTag in interface IRenderTheme
      Returns:
      the backwards transformed tag.
    • transformForwardTag

      public Tag transformForwardTag(Tag tag)
      Description copied from interface: IRenderTheme
      Transform tile source tag to internal tag.
      Specified by:
      transformForwardTag in interface IRenderTheme
      Returns:
      the forward transformed tag.
    • updateStyles

      public void updateStyles()
      Specified by:
      updateStyles in interface IRenderTheme
    • traverseRules

      public void traverseRules(Rule.RuleVisitor visitor)