wip: StyleBuilder

This commit is contained in:
Hannes Janetzek
2014-10-05 01:15:04 +02:00
parent 1ded32d303
commit 29f19b36ce
23 changed files with 355 additions and 373 deletions

View File

@@ -33,9 +33,9 @@ public class HairLineTest extends GdxMap {
static class Renderer extends BucketRenderer {
boolean init;
LineBuilder l = new LineStyle.LineBuilder()
LineBuilder<?> l = LineStyle.builder()
.color(Color.WHITE)
.width(1.5f)
.strokeWidth(1.5f)
.cap(Cap.ROUND);
HairLineBucket ll = buckets.addHairLineBucket(1, l.build());
@@ -48,7 +48,7 @@ public class HairLineTest extends GdxMap {
//style = new LineStyle(Color.fade(Color.LTGRAY, 0.8f), 1.5f);
LineBucket l2 = buckets.addLineBucket(3, style);
PolygonBucket pl = buckets.addPolygonBucket(4, new AreaStyle.AreaBuilder()
PolygonBucket pl = buckets.addPolygonBucket(4, AreaStyle.builder()
.color(Color.BLUE)
//.outline(Color.CYAN, 1)
.build());

View File

@@ -77,8 +77,8 @@ public class RuleVisitorTest extends GdxMap {
}
static class SaturateLineStyles extends RuleVisitor {
private final LineBuilder lineBuilder = new LineBuilder();
private final AreaBuilder areaBuilder = new AreaBuilder();
private final LineBuilder<?> lineBuilder = LineStyle.builder();
private final AreaBuilder<?> areaBuilder = AreaStyle.builder();
private final double saturation;
private final boolean modifyArea;

View File

@@ -8,9 +8,12 @@ import org.oscim.theme.rule.Rule;
import org.oscim.theme.rule.Rule.Element;
import org.oscim.theme.rule.RuleBuilder;
import org.oscim.theme.rule.RuleBuilder.RuleType;
import org.oscim.theme.styles.AreaStyle;
import org.oscim.theme.styles.AreaStyle.AreaBuilder;
import org.oscim.theme.styles.LineStyle;
import org.oscim.theme.styles.LineStyle.LineBuilder;
import org.oscim.theme.styles.RenderStyle;
import org.oscim.theme.styles.TextStyle;
import org.oscim.theme.styles.TextStyle.TextBuilder;
public class ThemeBuilder {
@@ -82,28 +85,28 @@ public class ThemeBuilder {
};
public static LineBuilder line(int color, float width) {
return new LineBuilder()
public static LineBuilder<?> line(int color, float width) {
return LineStyle.builder()
.color(color)
.width(width);
.strokeWidth(width);
}
public static AreaBuilder area(int color) {
return new AreaBuilder()
public static AreaBuilder<?> area(int color) {
return AreaStyle.builder()
.color(color);
}
public static TextBuilder wayText(float size, int color) {
return new TextBuilder()
.setFontSize(size)
.setColor(color);
public static TextBuilder<?> wayText(float size, int color) {
return TextStyle.builder()
.fontSize(size)
.color(color);
}
public static TextBuilder nodeText(float size, int color) {
return new TextBuilder()
.setFontSize(size)
.setColor(color)
.setCaption(true);
public static TextBuilder<?> nodeText(float size, int color) {
return TextStyle.builder()
.fontSize(size)
.color(color)
.isCaption(true);
}
public static RuleBuilder matchKey(String key) {

View File

@@ -17,7 +17,6 @@ import org.oscim.renderer.bucket.TextBucket;
import org.oscim.renderer.bucket.TextItem;
import org.oscim.theme.styles.LineStyle;
import org.oscim.theme.styles.TextStyle;
import org.oscim.theme.styles.TextStyle.TextBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -42,6 +41,10 @@ public class AtlasTest extends GdxMap {
TextureAtlas mAtlas = TextureAtlas.create(2048, 2048, 1);
TextBucket tl = new TextBucket();
TextStyle t = TextStyle.builder().fontSize(20).color(Color.BLACK).build();
buckets.set(tl);
LineBucket ll = buckets.getLineBucket(0);
ll.line = new LineStyle(Color.BLUE, 3, Cap.BUTT);
ll.scale = 1f;
@@ -54,10 +57,6 @@ public class AtlasTest extends GdxMap {
ll3.line = new LineStyle(Color.GREEN, 3, Cap.BUTT);
ll3.scale = 1f;
TextBucket tl = new TextBucket();
TextStyle t = new TextBuilder().setFontSize(20).setColor(Color.BLACK).build();
buckets.set(tl);
float[] points = new float[10];
for (int i = 0; i < 400; i++) {