From 833f49eb356be3720e5bc96a06cb670edcec2e42 Mon Sep 17 00:00:00 2001 From: Hannes Janetzek Date: Tue, 21 Jan 2014 19:35:30 +0100 Subject: [PATCH] refactor: theme...RenderInstruction -> theme.styles.RenderStyle --- .../layers/tile/vector/VectorTileLoader.java | 20 +++---- vtm/src/org/oscim/layers/PathLayer.java | 2 +- .../layers/tile/example/TestTileLayer.java | 2 +- .../layers/tile/vector/VectorTileLoader.java | 32 +++++----- .../layers/tile/vector/labeling/Debug.java | 2 +- .../tile/vector/labeling/WayDecorator.java | 2 +- vtm/src/org/oscim/renderer/GridRenderer.java | 4 +- .../renderer/elements/ElementLayers.java | 2 +- .../oscim/renderer/elements/LineLayer.java | 2 +- .../oscim/renderer/elements/LineTexLayer.java | 2 +- .../oscim/renderer/elements/PolygonLayer.java | 2 +- .../org/oscim/renderer/elements/TextItem.java | 2 +- .../oscim/renderer/test/AtlasRenderLayer.java | 4 +- vtm/src/org/oscim/theme/DebugTheme.java | 4 +- vtm/src/org/oscim/theme/IRenderTheme.java | 18 +++--- vtm/src/org/oscim/theme/RenderTheme.java | 60 +++++++++---------- .../org/oscim/theme/RenderThemeHandler.java | 20 +++---- vtm/src/org/oscim/theme/rule/Rule.java | 24 ++++---- .../{renderinstruction => styles}/Area.java | 4 +- .../AreaLevel.java | 4 +- .../{renderinstruction => styles}/Circle.java | 4 +- .../Extrusion.java | 4 +- .../{renderinstruction => styles}/Line.java | 4 +- .../LineSymbol.java | 4 +- .../RenderStyle.java} | 4 +- .../{renderinstruction => styles}/Symbol.java | 4 +- .../{renderinstruction => styles}/Text.java | 4 +- 27 files changed, 120 insertions(+), 120 deletions(-) rename vtm/src/org/oscim/theme/{renderinstruction => styles}/Area.java (95%) rename vtm/src/org/oscim/theme/{renderinstruction => styles}/AreaLevel.java (92%) rename vtm/src/org/oscim/theme/{renderinstruction => styles}/Circle.java (94%) rename vtm/src/org/oscim/theme/{renderinstruction => styles}/Extrusion.java (95%) rename vtm/src/org/oscim/theme/{renderinstruction => styles}/Line.java (96%) rename vtm/src/org/oscim/theme/{renderinstruction => styles}/LineSymbol.java (93%) rename vtm/src/org/oscim/theme/{renderinstruction/RenderInstruction.java => styles/RenderStyle.java} (95%) rename vtm/src/org/oscim/theme/{renderinstruction => styles}/Symbol.java (93%) rename vtm/src/org/oscim/theme/{renderinstruction => styles}/Text.java (97%) diff --git a/vtm-gdx-html/src/org/oscim/gdx/emu/org/oscim/layers/tile/vector/VectorTileLoader.java b/vtm-gdx-html/src/org/oscim/gdx/emu/org/oscim/layers/tile/vector/VectorTileLoader.java index 807d71ee..5fddf68f 100644 --- a/vtm-gdx-html/src/org/oscim/gdx/emu/org/oscim/layers/tile/vector/VectorTileLoader.java +++ b/vtm-gdx-html/src/org/oscim/gdx/emu/org/oscim/layers/tile/vector/VectorTileLoader.java @@ -31,14 +31,14 @@ import org.oscim.renderer.elements.PolygonLayer; import org.oscim.renderer.elements.SymbolItem; import org.oscim.renderer.elements.TextItem; import org.oscim.theme.IRenderTheme; -import org.oscim.theme.renderinstruction.Area; -import org.oscim.theme.renderinstruction.Circle; -import org.oscim.theme.renderinstruction.Extrusion; -import org.oscim.theme.renderinstruction.Line; -import org.oscim.theme.renderinstruction.LineSymbol; -import org.oscim.theme.renderinstruction.RenderInstruction; -import org.oscim.theme.renderinstruction.Symbol; -import org.oscim.theme.renderinstruction.Text; +import org.oscim.theme.styles.Area; +import org.oscim.theme.styles.Circle; +import org.oscim.theme.styles.Extrusion; +import org.oscim.theme.styles.Line; +import org.oscim.theme.styles.LineSymbol; +import org.oscim.theme.styles.RenderStyle; +import org.oscim.theme.styles.Symbol; +import org.oscim.theme.styles.Text; import org.oscim.tiling.MapTile; import org.oscim.tiling.TileLoader; import org.oscim.tiling.TileManager; @@ -243,7 +243,7 @@ public class VectorTileLoader extends TileLoader implements IRenderTheme.Callbac // renderWay(ri); //} - private void renderWay(RenderInstruction[] ri) { + private void renderWay(RenderStyle[] ri) { if (ri == null) return; @@ -251,7 +251,7 @@ public class VectorTileLoader extends TileLoader implements IRenderTheme.Callbac ri[i].renderWay(this); } - private void renderNode(RenderInstruction[] ri) { + private void renderNode(RenderStyle[] ri) { if (ri == null) return; diff --git a/vtm/src/org/oscim/layers/PathLayer.java b/vtm/src/org/oscim/layers/PathLayer.java index 60747b78..cf5f99f7 100644 --- a/vtm/src/org/oscim/layers/PathLayer.java +++ b/vtm/src/org/oscim/layers/PathLayer.java @@ -31,7 +31,7 @@ import org.oscim.map.Map; import org.oscim.renderer.ElementRenderer; import org.oscim.renderer.MapRenderer.Matrices; import org.oscim.renderer.elements.LineLayer; -import org.oscim.theme.renderinstruction.Line; +import org.oscim.theme.styles.Line; import org.oscim.utils.FastMath; import org.oscim.utils.LineClipper; diff --git a/vtm/src/org/oscim/layers/tile/example/TestTileLayer.java b/vtm/src/org/oscim/layers/tile/example/TestTileLayer.java index c10ef155..a45c862c 100644 --- a/vtm/src/org/oscim/layers/tile/example/TestTileLayer.java +++ b/vtm/src/org/oscim/layers/tile/example/TestTileLayer.java @@ -25,7 +25,7 @@ import org.oscim.layers.tile.example.TestTileLayer.TestTileLoader; import org.oscim.map.Map; import org.oscim.renderer.elements.ElementLayers; import org.oscim.renderer.elements.LineLayer; -import org.oscim.theme.renderinstruction.Line; +import org.oscim.theme.styles.Line; import org.oscim.tiling.MapTile; import org.oscim.tiling.TileLoader; import org.oscim.tiling.TileManager; diff --git a/vtm/src/org/oscim/layers/tile/vector/VectorTileLoader.java b/vtm/src/org/oscim/layers/tile/vector/VectorTileLoader.java index fd9ad614..287ad552 100644 --- a/vtm/src/org/oscim/layers/tile/vector/VectorTileLoader.java +++ b/vtm/src/org/oscim/layers/tile/vector/VectorTileLoader.java @@ -35,14 +35,14 @@ import org.oscim.renderer.elements.PolygonLayer; import org.oscim.renderer.elements.SymbolItem; import org.oscim.renderer.elements.TextItem; import org.oscim.theme.IRenderTheme; -import org.oscim.theme.renderinstruction.Area; -import org.oscim.theme.renderinstruction.Circle; -import org.oscim.theme.renderinstruction.Extrusion; -import org.oscim.theme.renderinstruction.Line; -import org.oscim.theme.renderinstruction.LineSymbol; -import org.oscim.theme.renderinstruction.RenderInstruction; -import org.oscim.theme.renderinstruction.Symbol; -import org.oscim.theme.renderinstruction.Text; +import org.oscim.theme.styles.Area; +import org.oscim.theme.styles.Circle; +import org.oscim.theme.styles.Extrusion; +import org.oscim.theme.styles.Line; +import org.oscim.theme.styles.LineSymbol; +import org.oscim.theme.styles.RenderStyle; +import org.oscim.theme.styles.Symbol; +import org.oscim.theme.styles.Text; import org.oscim.tiling.MapTile; import org.oscim.tiling.TileLoader; import org.oscim.tiling.TileManager; @@ -253,20 +253,20 @@ public class VectorTileLoader extends TileLoader implements IRenderTheme.Callbac // renderWay(ri); //} - private void renderWay(RenderInstruction[] ri) { - if (ri == null) + private void renderWay(RenderStyle[] style) { + if (style == null) return; - for (int i = 0, n = ri.length; i < n; i++) - ri[i].renderWay(this); + for (int i = 0, n = style.length; i < n; i++) + style[i].renderWay(this); } - private void renderNode(RenderInstruction[] ri) { - if (ri == null) + private void renderNode(RenderStyle[] style) { + if (style == null) return; - for (int i = 0, n = ri.length; i < n; i++) - ri[i].renderNode(this); + for (int i = 0, n = style.length; i < n; i++) + style[i].renderNode(this); } private void clearState() { diff --git a/vtm/src/org/oscim/layers/tile/vector/labeling/Debug.java b/vtm/src/org/oscim/layers/tile/vector/labeling/Debug.java index 500e9e36..165db5f3 100644 --- a/vtm/src/org/oscim/layers/tile/vector/labeling/Debug.java +++ b/vtm/src/org/oscim/layers/tile/vector/labeling/Debug.java @@ -20,7 +20,7 @@ import org.oscim.backend.canvas.Color; import org.oscim.renderer.elements.ElementLayers; import org.oscim.renderer.elements.LineLayer; import org.oscim.renderer.elements.TextItem; -import org.oscim.theme.renderinstruction.Line; +import org.oscim.theme.styles.Line; class Debug { diff --git a/vtm/src/org/oscim/layers/tile/vector/labeling/WayDecorator.java b/vtm/src/org/oscim/layers/tile/vector/labeling/WayDecorator.java index b5811874..a3248b2a 100644 --- a/vtm/src/org/oscim/layers/tile/vector/labeling/WayDecorator.java +++ b/vtm/src/org/oscim/layers/tile/vector/labeling/WayDecorator.java @@ -19,7 +19,7 @@ package org.oscim.layers.tile.vector.labeling; import org.oscim.core.Tile; import org.oscim.renderer.elements.TextItem; -import org.oscim.theme.renderinstruction.Text; +import org.oscim.theme.styles.Text; import org.oscim.tiling.MapTile; import org.oscim.utils.GeometryUtils; import org.oscim.utils.LineClipper; diff --git a/vtm/src/org/oscim/renderer/GridRenderer.java b/vtm/src/org/oscim/renderer/GridRenderer.java index b80c4952..7d3adb1f 100644 --- a/vtm/src/org/oscim/renderer/GridRenderer.java +++ b/vtm/src/org/oscim/renderer/GridRenderer.java @@ -25,8 +25,8 @@ import org.oscim.renderer.MapRenderer.Matrices; import org.oscim.renderer.elements.LineLayer; import org.oscim.renderer.elements.TextItem; import org.oscim.renderer.elements.TextLayer; -import org.oscim.theme.renderinstruction.Line; -import org.oscim.theme.renderinstruction.Text; +import org.oscim.theme.styles.Line; +import org.oscim.theme.styles.Text; public class GridRenderer extends ElementRenderer { // private final static String TILE_FORMAT = "%d/%d/%d"; diff --git a/vtm/src/org/oscim/renderer/elements/ElementLayers.java b/vtm/src/org/oscim/renderer/elements/ElementLayers.java index 8b7f868f..3a0f4e05 100644 --- a/vtm/src/org/oscim/renderer/elements/ElementLayers.java +++ b/vtm/src/org/oscim/renderer/elements/ElementLayers.java @@ -20,7 +20,7 @@ import java.nio.ShortBuffer; import org.oscim.backend.GL20; import org.oscim.renderer.BufferObject; -import org.oscim.theme.renderinstruction.Line; +import org.oscim.theme.styles.Line; import org.oscim.utils.pool.Inlist; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/vtm/src/org/oscim/renderer/elements/LineLayer.java b/vtm/src/org/oscim/renderer/elements/LineLayer.java index 6fd7549c..8ad45d0e 100644 --- a/vtm/src/org/oscim/renderer/elements/LineLayer.java +++ b/vtm/src/org/oscim/renderer/elements/LineLayer.java @@ -28,7 +28,7 @@ import org.oscim.renderer.GLState; import org.oscim.renderer.GLUtils; import org.oscim.renderer.MapRenderer; import org.oscim.renderer.MapRenderer.Matrices; -import org.oscim.theme.renderinstruction.Line; +import org.oscim.theme.styles.Line; import org.oscim.utils.FastMath; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/vtm/src/org/oscim/renderer/elements/LineTexLayer.java b/vtm/src/org/oscim/renderer/elements/LineTexLayer.java index 6019f637..8130439e 100644 --- a/vtm/src/org/oscim/renderer/elements/LineTexLayer.java +++ b/vtm/src/org/oscim/renderer/elements/LineTexLayer.java @@ -27,7 +27,7 @@ import org.oscim.renderer.GLState; import org.oscim.renderer.GLUtils; import org.oscim.renderer.MapRenderer; import org.oscim.renderer.MapRenderer.Matrices; -import org.oscim.theme.renderinstruction.Line; +import org.oscim.theme.styles.Line; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/vtm/src/org/oscim/renderer/elements/PolygonLayer.java b/vtm/src/org/oscim/renderer/elements/PolygonLayer.java index a137b2a4..ec5103c4 100644 --- a/vtm/src/org/oscim/renderer/elements/PolygonLayer.java +++ b/vtm/src/org/oscim/renderer/elements/PolygonLayer.java @@ -31,7 +31,7 @@ import org.oscim.renderer.GLState; import org.oscim.renderer.GLUtils; import org.oscim.renderer.MapRenderer; import org.oscim.renderer.MapRenderer.Matrices; -import org.oscim.theme.renderinstruction.Area; +import org.oscim.theme.styles.Area; import org.oscim.utils.FastMath; import org.oscim.utils.Interpolation; import org.slf4j.Logger; diff --git a/vtm/src/org/oscim/renderer/elements/TextItem.java b/vtm/src/org/oscim/renderer/elements/TextItem.java index 1a905f8e..c6e5a479 100644 --- a/vtm/src/org/oscim/renderer/elements/TextItem.java +++ b/vtm/src/org/oscim/renderer/elements/TextItem.java @@ -16,7 +16,7 @@ */ package org.oscim.renderer.elements; -import org.oscim.theme.renderinstruction.Text; +import org.oscim.theme.styles.Text; import org.oscim.utils.pool.Inlist; import org.oscim.utils.pool.SyncPool; diff --git a/vtm/src/org/oscim/renderer/test/AtlasRenderLayer.java b/vtm/src/org/oscim/renderer/test/AtlasRenderLayer.java index 9cdc153f..e2a375aa 100644 --- a/vtm/src/org/oscim/renderer/test/AtlasRenderLayer.java +++ b/vtm/src/org/oscim/renderer/test/AtlasRenderLayer.java @@ -29,8 +29,8 @@ import org.oscim.renderer.atlas.TextureAtlas.Slot; import org.oscim.renderer.elements.LineLayer; import org.oscim.renderer.elements.TextItem; import org.oscim.renderer.elements.TextLayer; -import org.oscim.theme.renderinstruction.Line; -import org.oscim.theme.renderinstruction.Text; +import org.oscim.theme.styles.Line; +import org.oscim.theme.styles.Text; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/vtm/src/org/oscim/theme/DebugTheme.java b/vtm/src/org/oscim/theme/DebugTheme.java index ced7ca31..5e9178c6 100644 --- a/vtm/src/org/oscim/theme/DebugTheme.java +++ b/vtm/src/org/oscim/theme/DebugTheme.java @@ -2,12 +2,12 @@ package org.oscim.theme; import org.oscim.core.GeometryBuffer.GeometryType; import org.oscim.core.TagSet; -import org.oscim.theme.renderinstruction.RenderInstruction; +import org.oscim.theme.styles.RenderStyle; public class DebugTheme implements IRenderTheme { @Override - public RenderInstruction[] matchElement(GeometryType type, TagSet tags, int zoomLevel) { + public RenderStyle[] matchElement(GeometryType type, TagSet tags, int zoomLevel) { return null; } diff --git a/vtm/src/org/oscim/theme/IRenderTheme.java b/vtm/src/org/oscim/theme/IRenderTheme.java index 854afc80..c7dc8d85 100644 --- a/vtm/src/org/oscim/theme/IRenderTheme.java +++ b/vtm/src/org/oscim/theme/IRenderTheme.java @@ -19,14 +19,14 @@ package org.oscim.theme; import org.oscim.core.GeometryBuffer.GeometryType; import org.oscim.core.TagSet; -import org.oscim.theme.renderinstruction.Area; -import org.oscim.theme.renderinstruction.Circle; -import org.oscim.theme.renderinstruction.Extrusion; -import org.oscim.theme.renderinstruction.Line; -import org.oscim.theme.renderinstruction.LineSymbol; -import org.oscim.theme.renderinstruction.RenderInstruction; -import org.oscim.theme.renderinstruction.Symbol; -import org.oscim.theme.renderinstruction.Text; +import org.oscim.theme.styles.Area; +import org.oscim.theme.styles.Circle; +import org.oscim.theme.styles.Extrusion; +import org.oscim.theme.styles.Line; +import org.oscim.theme.styles.LineSymbol; +import org.oscim.theme.styles.RenderStyle; +import org.oscim.theme.styles.Symbol; +import org.oscim.theme.styles.Text; public interface IRenderTheme { @@ -37,7 +37,7 @@ public interface IRenderTheme { * the zoom level at which the way should be matched. * @return matching render instructions */ - public abstract RenderInstruction[] matchElement(GeometryType type, TagSet tags, int zoomLevel); + public abstract RenderStyle[] matchElement(GeometryType type, TagSet tags, int zoomLevel); /** * Must be called when this RenderTheme gets destroyed to clean up and free diff --git a/vtm/src/org/oscim/theme/RenderTheme.java b/vtm/src/org/oscim/theme/RenderTheme.java index e7448ae4..fec4ab9d 100644 --- a/vtm/src/org/oscim/theme/RenderTheme.java +++ b/vtm/src/org/oscim/theme/RenderTheme.java @@ -23,9 +23,9 @@ import java.util.List; import org.oscim.core.GeometryBuffer.GeometryType; import org.oscim.core.TagSet; -import org.oscim.theme.renderinstruction.RenderInstruction; import org.oscim.theme.rule.Element; import org.oscim.theme.rule.Rule; +import org.oscim.theme.styles.RenderStyle; import org.oscim.utils.LRUCache; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -44,52 +44,52 @@ public class RenderTheme implements IRenderTheme { private int mLevels; private Rule[] mRules; - class ElementCache { + class RenderStyleCache { final int matchType; - final LRUCache cache; + final LRUCache cache; final MatchingCacheKey cacheKey; /* temporary matching instructions list */ - final ArrayList instructionList; + final ArrayList instructionList; - RenderInstructionItem prevItem; + RenderStyleItem prevItem; - public ElementCache(int type) { - cache = new LRUCache(MATCHING_CACHE_SIZE); - instructionList = new ArrayList(4); + public RenderStyleCache(int type) { + cache = new LRUCache(MATCHING_CACHE_SIZE); + instructionList = new ArrayList(4); cacheKey = new MatchingCacheKey(); matchType = type; } - RenderInstructionItem getRenderInstructions() { + RenderStyleItem getRenderInstructions() { return cache.get(cacheKey); } } - class RenderInstructionItem { - RenderInstructionItem next; + class RenderStyleItem { + RenderStyleItem next; int zoom; - RenderInstruction[] list; + RenderStyle[] list; MatchingCacheKey key; } - private final ElementCache[] mElementCache; + private final RenderStyleCache[] mStyleCache; public RenderTheme(int mapBackground, float baseStrokeWidth, float baseTextSize) { mMapBackground = mapBackground; mBaseTextSize = baseTextSize; - mElementCache = new ElementCache[3]; - mElementCache[0] = new ElementCache(Element.NODE); - mElementCache[1] = new ElementCache(Element.LINE); - mElementCache[2] = new ElementCache(Element.POLY); + mStyleCache = new RenderStyleCache[3]; + mStyleCache[0] = new RenderStyleCache(Element.NODE); + mStyleCache[1] = new RenderStyleCache(Element.LINE); + mStyleCache[2] = new RenderStyleCache(Element.POLY); } @Override public void destroy() { for (int i = 0; i < 3; i++) - mElementCache[i].cache.clear(); + mStyleCache[i].cache.clear(); if (mRules != null) { for (int i = 0, n = mRules.length; i < n; i++) @@ -108,13 +108,13 @@ public class RenderTheme implements IRenderTheme { } @Override - public RenderInstruction[] matchElement(GeometryType geometryType, TagSet tags, int zoomLevel) { + public RenderStyle[] matchElement(GeometryType geometryType, TagSet tags, int zoomLevel) { // list of renderinsctruction items in cache - RenderInstructionItem ris = null; + RenderStyleItem ris = null; // the item matching tags and zoomlevel - RenderInstructionItem ri = null; + RenderStyleItem ri = null; int type = geometryType.nativeInt; if (type < 1 || type > 3) { @@ -122,7 +122,7 @@ public class RenderTheme implements IRenderTheme { return null; } - ElementCache cache = mElementCache[type - 1]; + RenderStyleCache cache = mStyleCache[type - 1]; // NOTE: maximum zoom level supported is 32 int zoomMask = 1 << zoomLevel; @@ -154,7 +154,7 @@ public class RenderTheme implements IRenderTheme { // cache miss //log.debug(missCnt++ + " / " + hitCnt + " Cache Miss"); - List matches = cache.instructionList; + List matches = cache.instructionList; matches.clear(); for (Rule rule : mRules) @@ -163,7 +163,7 @@ public class RenderTheme implements IRenderTheme { int size = matches.size(); if (size > 1) { for (int i = 0; i < size - 1; i++) { - RenderInstruction r = matches.get(i); + RenderStyle r = matches.get(i); for (int j = i + 1; j < size; j++) { if (matches.get(j) == r) { log.debug("fix duplicate instruction! " @@ -193,8 +193,8 @@ public class RenderTheme implements IRenderTheme { continue; int i = 0; - for (RenderInstruction r : ri.list) { - if (r != matches.get(i)) + for (RenderStyle style : ri.list) { + if (style != matches.get(i)) break; i++; } @@ -208,17 +208,17 @@ public class RenderTheme implements IRenderTheme { // this zoom level to the existing RenderInstructionItem. ri.zoom |= zoomMask; - //log.debug( // zoomLevel + " same instructions " + size + " " + //log.debug(zoomLevel + " same instructions " + size + " " // + Arrays.deepToString(tags)); } else { - //log.debug( // zoomLevel + " new instructions " + size + " " + //log.debug(zoomLevel + " new instructions " + size + " " // + Arrays.deepToString(tags)); - ri = new RenderInstructionItem(); + ri = new RenderStyleItem(); ri.zoom = zoomMask; if (size > 0) { - ri.list = new RenderInstruction[size]; + ri.list = new RenderStyle[size]; matches.toArray(ri.list); } diff --git a/vtm/src/org/oscim/theme/RenderThemeHandler.java b/vtm/src/org/oscim/theme/RenderThemeHandler.java index b4718307..f37ae653 100644 --- a/vtm/src/org/oscim/theme/RenderThemeHandler.java +++ b/vtm/src/org/oscim/theme/RenderThemeHandler.java @@ -37,15 +37,15 @@ import org.oscim.renderer.atlas.TextureAtlas.Rect; import org.oscim.renderer.atlas.TextureRegion; import org.oscim.renderer.elements.TextureItem; import org.oscim.theme.IRenderTheme.ThemeException; -import org.oscim.theme.renderinstruction.Area; -import org.oscim.theme.renderinstruction.Circle; -import org.oscim.theme.renderinstruction.Extrusion; -import org.oscim.theme.renderinstruction.Line; -import org.oscim.theme.renderinstruction.LineSymbol; -import org.oscim.theme.renderinstruction.RenderInstruction; -import org.oscim.theme.renderinstruction.Symbol; -import org.oscim.theme.renderinstruction.Text; import org.oscim.theme.rule.Rule; +import org.oscim.theme.styles.Area; +import org.oscim.theme.styles.Circle; +import org.oscim.theme.styles.Extrusion; +import org.oscim.theme.styles.Line; +import org.oscim.theme.styles.LineSymbol; +import org.oscim.theme.styles.RenderStyle; +import org.oscim.theme.styles.Symbol; +import org.oscim.theme.styles.Text; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.xml.sax.Attributes; @@ -130,8 +130,8 @@ public class RenderThemeHandler extends DefaultHandler { private Stack mElementStack = new Stack(); private Stack mRuleStack = new Stack(); - private HashMap mStyles = - new HashMap(10); + private HashMap mStyles = + new HashMap(10); private TextureAtlas mTextureAtlas; diff --git a/vtm/src/org/oscim/theme/rule/Rule.java b/vtm/src/org/oscim/theme/rule/Rule.java index 1ad33b48..ade5d6bc 100644 --- a/vtm/src/org/oscim/theme/rule/Rule.java +++ b/vtm/src/org/oscim/theme/rule/Rule.java @@ -27,7 +27,7 @@ import java.util.Stack; import org.oscim.core.Tag; import org.oscim.theme.IRenderTheme.ThemeException; import org.oscim.theme.RenderThemeHandler; -import org.oscim.theme.renderinstruction.RenderInstruction; +import org.oscim.theme.styles.RenderStyle; import org.xml.sax.Attributes; public abstract class Rule { @@ -189,14 +189,14 @@ public abstract class Rule { } private Rule[] mSubRules; - private RenderInstruction[] mRenderInstructions; + private RenderStyle[] mRenderInstructions; final int mZoom; final int mElement; final boolean mMatchFirst; static class Builder { - ArrayList renderInstructions = new ArrayList(4); + ArrayList renderInstructions = new ArrayList(4); ArrayList subRules = new ArrayList(4); public void clear() { @@ -216,7 +216,7 @@ public abstract class Rule { mMatchFirst = matchFirst; } - public void addRenderingInstruction(RenderInstruction renderInstruction) { + public void addRenderingInstruction(RenderStyle renderInstruction) { builder.renderInstructions.add(renderInstruction); } @@ -227,7 +227,7 @@ public abstract class Rule { abstract boolean matchesTags(Tag[] tags); public boolean matchElement(int type, Tag[] tags, int zoomLevel, - List matchingList) { + List matchingList) { if (((mElement & type) != 0) && ((mZoom & zoomLevel) != 0) && (matchesTags(tags))) { @@ -243,8 +243,8 @@ public abstract class Rule { if (!mMatchFirst || matched) { // add instructions for this rule - for (RenderInstruction ri : mRenderInstructions) - matchingList.add(ri); + for (RenderStyle style : mRenderInstructions) + matchingList.add(style); } // this rule did match @@ -259,7 +259,7 @@ public abstract class Rule { MATCHERS_CACHE_KEY.clear(); MATCHERS_CACHE_VALUE.clear(); - mRenderInstructions = new RenderInstruction[builder.renderInstructions.size()]; + mRenderInstructions = new RenderStyle[builder.renderInstructions.size()]; builder.renderInstructions.toArray(mRenderInstructions); mSubRules = new Rule[builder.subRules.size()]; @@ -273,16 +273,16 @@ public abstract class Rule { } public void onDestroy() { - for (RenderInstruction ri : mRenderInstructions) - ri.destroy(); + for (RenderStyle style : mRenderInstructions) + style.destroy(); for (Rule subRule : mSubRules) subRule.onDestroy(); } public void scaleTextSize(float scaleFactor) { - for (RenderInstruction ri : mRenderInstructions) - ri.scaleTextSize(scaleFactor); + for (RenderStyle style : mRenderInstructions) + style.scaleTextSize(scaleFactor); for (Rule subRule : mSubRules) subRule.scaleTextSize(scaleFactor); } diff --git a/vtm/src/org/oscim/theme/renderinstruction/Area.java b/vtm/src/org/oscim/theme/styles/Area.java similarity index 95% rename from vtm/src/org/oscim/theme/renderinstruction/Area.java rename to vtm/src/org/oscim/theme/styles/Area.java index 29b7d443..aaaa704c 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/Area.java +++ b/vtm/src/org/oscim/theme/styles/Area.java @@ -15,7 +15,7 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.backend.canvas.Color; import org.oscim.renderer.elements.TextureItem; @@ -24,7 +24,7 @@ import org.oscim.theme.IRenderTheme.Callback; /** * Represents a closed polygon on the map. */ -public final class Area extends RenderInstruction { +public final class Area extends RenderStyle { public Area(int fill) { this(0, fill); diff --git a/vtm/src/org/oscim/theme/renderinstruction/AreaLevel.java b/vtm/src/org/oscim/theme/styles/AreaLevel.java similarity index 92% rename from vtm/src/org/oscim/theme/renderinstruction/AreaLevel.java rename to vtm/src/org/oscim/theme/styles/AreaLevel.java index 5e4f0e63..31ab5809 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/AreaLevel.java +++ b/vtm/src/org/oscim/theme/styles/AreaLevel.java @@ -14,11 +14,11 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.theme.IRenderTheme.Callback; -public class AreaLevel extends RenderInstruction { +public class AreaLevel extends RenderStyle { private final Area area; private final int level; diff --git a/vtm/src/org/oscim/theme/renderinstruction/Circle.java b/vtm/src/org/oscim/theme/styles/Circle.java similarity index 94% rename from vtm/src/org/oscim/theme/renderinstruction/Circle.java rename to vtm/src/org/oscim/theme/styles/Circle.java index 9d9de6b2..c8129219 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/Circle.java +++ b/vtm/src/org/oscim/theme/styles/Circle.java @@ -15,14 +15,14 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.theme.IRenderTheme.Callback; /** * Represents a round area on the map. */ -public final class Circle extends RenderInstruction { +public final class Circle extends RenderStyle { public final int level; diff --git a/vtm/src/org/oscim/theme/renderinstruction/Extrusion.java b/vtm/src/org/oscim/theme/styles/Extrusion.java similarity index 95% rename from vtm/src/org/oscim/theme/renderinstruction/Extrusion.java rename to vtm/src/org/oscim/theme/styles/Extrusion.java index 27e9c0d2..a4827347 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/Extrusion.java +++ b/vtm/src/org/oscim/theme/styles/Extrusion.java @@ -14,12 +14,12 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.backend.canvas.Color; import org.oscim.theme.IRenderTheme.Callback; -public class Extrusion extends RenderInstruction { +public class Extrusion extends RenderStyle { public Extrusion(int level, int colorSides, int colorTop, int colorLine, int defaultHeight) { diff --git a/vtm/src/org/oscim/theme/renderinstruction/Line.java b/vtm/src/org/oscim/theme/styles/Line.java similarity index 96% rename from vtm/src/org/oscim/theme/renderinstruction/Line.java rename to vtm/src/org/oscim/theme/styles/Line.java index 818a19e0..5f2646f8 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/Line.java +++ b/vtm/src/org/oscim/theme/styles/Line.java @@ -15,7 +15,7 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.backend.canvas.Paint.Cap; import org.oscim.theme.IRenderTheme.Callback; @@ -23,7 +23,7 @@ import org.oscim.theme.IRenderTheme.Callback; /** * Represents a polyline on the map. */ -public final class Line extends RenderInstruction { +public final class Line extends RenderStyle { // static float[] parseFloatArray(String dashString) { // String[] dashEntries = SPLIT_PATTERN.split(dashString); diff --git a/vtm/src/org/oscim/theme/renderinstruction/LineSymbol.java b/vtm/src/org/oscim/theme/styles/LineSymbol.java similarity index 93% rename from vtm/src/org/oscim/theme/renderinstruction/LineSymbol.java rename to vtm/src/org/oscim/theme/styles/LineSymbol.java index 9be650fc..2c042740 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/LineSymbol.java +++ b/vtm/src/org/oscim/theme/styles/LineSymbol.java @@ -15,14 +15,14 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.theme.IRenderTheme.Callback; /** * Represents an icon along a polyline on the map. */ -public final class LineSymbol extends RenderInstruction { +public final class LineSymbol extends RenderStyle { public final boolean alignCenter; // public final Bitmap bitmap; diff --git a/vtm/src/org/oscim/theme/renderinstruction/RenderInstruction.java b/vtm/src/org/oscim/theme/styles/RenderStyle.java similarity index 95% rename from vtm/src/org/oscim/theme/renderinstruction/RenderInstruction.java rename to vtm/src/org/oscim/theme/styles/RenderStyle.java index b146c490..ad0e7134 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/RenderInstruction.java +++ b/vtm/src/org/oscim/theme/styles/RenderStyle.java @@ -15,14 +15,14 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.theme.IRenderTheme.Callback; /** * A RenderInstruction is a basic graphical primitive to draw a map. */ -public abstract class RenderInstruction { +public abstract class RenderStyle { /** * Destroys this RenderInstruction and cleans up all its internal resources. */ diff --git a/vtm/src/org/oscim/theme/renderinstruction/Symbol.java b/vtm/src/org/oscim/theme/styles/Symbol.java similarity index 93% rename from vtm/src/org/oscim/theme/renderinstruction/Symbol.java rename to vtm/src/org/oscim/theme/styles/Symbol.java index 862096ad..f9e79215 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/Symbol.java +++ b/vtm/src/org/oscim/theme/styles/Symbol.java @@ -15,7 +15,7 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.renderer.atlas.TextureRegion; import org.oscim.theme.IRenderTheme.Callback; @@ -23,7 +23,7 @@ import org.oscim.theme.IRenderTheme.Callback; /** * Represents an icon on the map. */ -public final class Symbol extends RenderInstruction { +public final class Symbol extends RenderStyle { public final TextureRegion texture; diff --git a/vtm/src/org/oscim/theme/renderinstruction/Text.java b/vtm/src/org/oscim/theme/styles/Text.java similarity index 97% rename from vtm/src/org/oscim/theme/renderinstruction/Text.java rename to vtm/src/org/oscim/theme/styles/Text.java index 20361281..063b5c4c 100644 --- a/vtm/src/org/oscim/theme/renderinstruction/Text.java +++ b/vtm/src/org/oscim/theme/styles/Text.java @@ -15,7 +15,7 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.theme.renderinstruction; +package org.oscim.theme.styles; import org.oscim.backend.CanvasAdapter; import org.oscim.backend.canvas.Paint; @@ -28,7 +28,7 @@ import org.oscim.theme.IRenderTheme.Callback; /** * Represents a text along a polyline on the map. */ -public final class Text extends RenderInstruction { +public final class Text extends RenderStyle { public final String style;