Changeset 3836 in josm for trunk/src/org/openstreetmap/josm/data/validation
- Timestamp:
- 2011-01-31T14:18:47+01:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/data/validation/tests/MultipolygonTest.java
r3825 r3836 26 26 import org.openstreetmap.josm.gui.mappaint.ElemStyles; 27 27 import org.openstreetmap.josm.gui.mappaint.MapPaintStyles; 28 import org.openstreetmap.josm.gui.mappaint.StyleCache;29 28 import org.openstreetmap.josm.gui.mappaint.xml.AreaPrototype; 30 29 … … 47 46 private final List<List<Node>> nonClosedWays = new ArrayList<List<Node>>(); 48 47 48 private final double SCALE = 1.0; // arbitrary scale - we could test every possible scale, but this should suffice 49 49 50 public MultipolygonTest() { 50 51 super(tr("Multipolygon"), … … 115 116 public void visit(Way w) { 116 117 if (styles != null && !w.isClosed()) { 117 AreaPrototype e = styles.getAreaProto(w); 118 if (e != null && ! e.closed) { 119 errors.add( new TestError(this, Severity.WARNING, tr("Area style way is not closed"), NOT_CLOSED, w)); 118 for (ElemStyle s : styles.generateStyles(w, SCALE, null, false).a) { 119 if (s instanceof AreaElemStyle) { 120 errors.add( new TestError(this, Severity.WARNING, tr("Area style way is not closed"), NOT_CLOSED, w)); 121 break; 122 } 120 123 } 121 124 } … … 143 146 List<List<Node>> outerWays = joinWays(polygon.getOuterWays()); 144 147 if (styles != null) { 145 StyleCache sc = styles.get(r);146 148 147 149 AreaElemStyle area = null; 148 for (ElemStyle s : s c.getStyles()) {150 for (ElemStyle s : styles.generateStyles(r, SCALE, null, false).a) { 149 151 if (s instanceof AreaElemStyle) { 150 152 area = (AreaElemStyle) s; … … 155 157 if (area == null) { 156 158 errors.add( new TestError(this, Severity.OTHER, tr("No style in multipolygon relation"), 157 NO_STYLE_POLYGON, r));159 NO_STYLE_POLYGON, r)); 158 160 for (Way w : polygon.getOuterWays()) { 159 161 160 for (ElemStyle s : styles.ge tArea(w).getStyles()) {162 for (ElemStyle s : styles.generateStyles(r, SCALE, null, true).a) { 161 163 if (s instanceof AreaElemStyle) { 162 164 area = (AreaElemStyle) s; … … 173 175 for (Way wInner : polygon.getInnerWays()) { 174 176 AreaElemStyle areaInner = null; 175 for (ElemStyle s : styles.ge t(wInner).getStyles()) {177 for (ElemStyle s : styles.generateStyles(wInner, SCALE, null, false).a) { 176 178 if (s instanceof AreaElemStyle) { 177 179 areaInner = (AreaElemStyle) s; … … 185 187 l.add(wInner); 186 188 errors.add( new TestError(this, Severity.WARNING, tr("Style for inner way equals multipolygon"), 187 INNER_STYLE_MISMATCH, l, Collections.singletonList(wInner)));189 INNER_STYLE_MISMATCH, l, Collections.singletonList(wInner))); 188 190 } 189 191 } 190 192 for (Way wOuter : polygon.getOuterWays()) { 191 193 AreaElemStyle areaOuter = null; 192 for (ElemStyle s : styles.ge t(wOuter).getStyles()) {194 for (ElemStyle s : styles.generateStyles(wOuter, SCALE, null, false).a) { 193 195 if (s instanceof AreaElemStyle) { 194 196 areaOuter = (AreaElemStyle) s;
Note:
See TracChangeset
for help on using the changeset viewer.