Render themes: add tessellation option in area style, closes #37
This commit is contained in:
parent
d97511e1e1
commit
9b7d893fd5
@ -98,6 +98,7 @@
|
||||
<xs:attribute name="fade" type="xs:integer" use="optional" default="-1" />
|
||||
<xs:attribute name="blend" type="xs:integer" use="optional" default="-1" />
|
||||
<xs:attribute name="blend-fill" type="tns:color" use="optional" default="#000000" />
|
||||
<xs:attribute name="mesh" type="xs:boolean" use="optional" default="false" />
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="caption">
|
||||
|
@ -285,7 +285,7 @@ public class VectorTileLoader extends TileLoader implements RenderStyle.Callback
|
||||
|
||||
int nLevel = mCurBucket + level;
|
||||
|
||||
if (USE_MESH_POLY) {
|
||||
if (USE_MESH_POLY || area.mesh) {
|
||||
MeshBucket mb = mBuckets.getMeshBucket(nLevel);
|
||||
mb.area = area;
|
||||
mb.addMesh(mElement);
|
||||
|
@ -525,6 +525,9 @@ public class XmlThemeBuilder extends DefaultHandler {
|
||||
else if ("blend-fill".equals(name))
|
||||
b.blendColor(value);
|
||||
|
||||
else if ("mesh".equals(name))
|
||||
b.mesh(Boolean.parseBoolean(value));
|
||||
|
||||
else
|
||||
logUnknownAttribute(elementName, name, value, i);
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright 2014 Hannes Janetzek
|
||||
* Copyright 2016 devemux86
|
||||
*
|
||||
* This file is part of the OpenScienceMap project (http://www.opensciencemap.org).
|
||||
*
|
||||
@ -55,6 +56,9 @@ public class AreaStyle extends RenderStyle {
|
||||
public final int strokeColor;
|
||||
public final float strokeWidth;
|
||||
|
||||
/** Tessellation */
|
||||
public final boolean mesh;
|
||||
|
||||
public AreaStyle(int color) {
|
||||
this(0, color);
|
||||
}
|
||||
@ -69,6 +73,7 @@ public class AreaStyle extends RenderStyle {
|
||||
this.texture = null;
|
||||
this.strokeColor = color;
|
||||
this.strokeWidth = 1;
|
||||
this.mesh = false;
|
||||
}
|
||||
|
||||
public AreaStyle(AreaBuilder<?> b) {
|
||||
@ -79,9 +84,9 @@ public class AreaStyle extends RenderStyle {
|
||||
this.blendScale = b.blendScale;
|
||||
this.color = b.fillColor;
|
||||
this.texture = b.texture;
|
||||
|
||||
this.strokeColor = b.strokeColor;
|
||||
this.strokeWidth = b.strokeWidth;
|
||||
this.mesh = b.mesh;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -136,6 +141,7 @@ public class AreaStyle extends RenderStyle {
|
||||
public int fadeScale;
|
||||
public int blendColor;
|
||||
public int blendScale;
|
||||
public boolean mesh;
|
||||
|
||||
public TextureItem texture;
|
||||
|
||||
@ -155,6 +161,7 @@ public class AreaStyle extends RenderStyle {
|
||||
this.texture = area.texture;
|
||||
this.strokeColor = area.strokeColor;
|
||||
this.strokeWidth = area.strokeWidth;
|
||||
this.mesh = area.mesh;
|
||||
|
||||
return self();
|
||||
}
|
||||
@ -184,6 +191,11 @@ public class AreaStyle extends RenderStyle {
|
||||
return self();
|
||||
}
|
||||
|
||||
public T mesh(boolean mesh) {
|
||||
this.mesh = mesh;
|
||||
return self();
|
||||
}
|
||||
|
||||
public T reset() {
|
||||
fillColor = Color.WHITE;
|
||||
strokeColor = Color.BLACK;
|
||||
@ -193,6 +205,7 @@ public class AreaStyle extends RenderStyle {
|
||||
blendColor = Color.TRANSPARENT;
|
||||
style = null;
|
||||
texture = null;
|
||||
mesh = false;
|
||||
return self();
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user