Commit a707fb93 authored by Matthias Betz's avatar Matthias Betz
Browse files

Renaming error classes

parent e6b83505
Pipeline #1255 passed with stage
in 1 minute and 49 seconds
...@@ -21,33 +21,32 @@ package de.hft.stuttgart.citydoctor2.check; ...@@ -21,33 +21,32 @@ package de.hft.stuttgart.citydoctor2.check;
import de.hft.stuttgart.citydoctor2.check.error.AllPolygonsWrongOrientationError; import de.hft.stuttgart.citydoctor2.check.error.AllPolygonsWrongOrientationError;
import de.hft.stuttgart.citydoctor2.check.error.ConsecutivePointSameError; import de.hft.stuttgart.citydoctor2.check.error.ConsecutivePointSameError;
import de.hft.stuttgart.citydoctor2.check.error.DependenciesNotMetError; import de.hft.stuttgart.citydoctor2.check.error.DependenciesNotMetError;
import de.hft.stuttgart.citydoctor2.check.error.NonPlanarPolygonDistancePlaneError;
import de.hft.stuttgart.citydoctor2.check.error.DuplicatePointError;
import de.hft.stuttgart.citydoctor2.check.error.EdgeIntersectionError;
import de.hft.stuttgart.citydoctor2.check.error.HoleOutsideError;
import de.hft.stuttgart.citydoctor2.check.error.InteriorDisconnectedError;
import de.hft.stuttgart.citydoctor2.check.error.ManifoldEdgeError;
import de.hft.stuttgart.citydoctor2.check.error.MultipleConnectedComponentsError; import de.hft.stuttgart.citydoctor2.check.error.MultipleConnectedComponentsError;
import de.hft.stuttgart.citydoctor2.check.error.NestedRingError; import de.hft.stuttgart.citydoctor2.check.error.NestedRingError;
import de.hft.stuttgart.citydoctor2.check.error.NonManifoldEdgeError;
import de.hft.stuttgart.citydoctor2.check.error.NonManifoldVertexError; import de.hft.stuttgart.citydoctor2.check.error.NonManifoldVertexError;
import de.hft.stuttgart.citydoctor2.check.error.NormalDeviationError; import de.hft.stuttgart.citydoctor2.check.error.NonPlanarPolygonDistancePlaneError;
import de.hft.stuttgart.citydoctor2.check.error.NonPlanarPolygonNormalsDeviation;
import de.hft.stuttgart.citydoctor2.check.error.NotCeilingError; import de.hft.stuttgart.citydoctor2.check.error.NotCeilingError;
import de.hft.stuttgart.citydoctor2.check.error.NotFloorError; import de.hft.stuttgart.citydoctor2.check.error.NotFloorError;
import de.hft.stuttgart.citydoctor2.check.error.NotGroundError; import de.hft.stuttgart.citydoctor2.check.error.NotGroundError;
import de.hft.stuttgart.citydoctor2.check.error.NotWallError; import de.hft.stuttgart.citydoctor2.check.error.NotWallError;
import de.hft.stuttgart.citydoctor2.check.error.NullAreaError; import de.hft.stuttgart.citydoctor2.check.error.NullAreaError;
import de.hft.stuttgart.citydoctor2.check.error.PointTouchesEdgeError; import de.hft.stuttgart.citydoctor2.check.error.PointTouchesEdgeError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonHoleOutsideError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonInteriorDisconnectedError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonIntersectingRingsError; import de.hft.stuttgart.citydoctor2.check.error.PolygonIntersectingRingsError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonSameOrientationError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonWrongOrientationError; import de.hft.stuttgart.citydoctor2.check.error.PolygonWrongOrientationError;
import de.hft.stuttgart.citydoctor2.check.error.RingDuplicatePointError;
import de.hft.stuttgart.citydoctor2.check.error.RingEdgeIntersectionError;
import de.hft.stuttgart.citydoctor2.check.error.RingNotClosedError; import de.hft.stuttgart.citydoctor2.check.error.RingNotClosedError;
import de.hft.stuttgart.citydoctor2.check.error.RingSelfIntError; import de.hft.stuttgart.citydoctor2.check.error.RingTooFewPointsError;
import de.hft.stuttgart.citydoctor2.check.error.SameOrientationError;
import de.hft.stuttgart.citydoctor2.check.error.SchematronError; import de.hft.stuttgart.citydoctor2.check.error.SchematronError;
import de.hft.stuttgart.citydoctor2.check.error.SolidNotClosedError; import de.hft.stuttgart.citydoctor2.check.error.SolidNotClosedError;
import de.hft.stuttgart.citydoctor2.check.error.SolidSelfIntError; import de.hft.stuttgart.citydoctor2.check.error.SolidSelfIntError;
import de.hft.stuttgart.citydoctor2.check.error.SurfaceUnfragmentedError; import de.hft.stuttgart.citydoctor2.check.error.SurfaceUnfragmentedError;
import de.hft.stuttgart.citydoctor2.check.error.TinyEdgeError; import de.hft.stuttgart.citydoctor2.check.error.TinyEdgeError;
import de.hft.stuttgart.citydoctor2.check.error.TooFewPointsError;
import de.hft.stuttgart.citydoctor2.check.error.TooFewPolygonsError; import de.hft.stuttgart.citydoctor2.check.error.TooFewPolygonsError;
import de.hft.stuttgart.citydoctor2.check.error.UnknownCheckError; import de.hft.stuttgart.citydoctor2.check.error.UnknownCheckError;
...@@ -60,9 +59,9 @@ import de.hft.stuttgart.citydoctor2.check.error.UnknownCheckError; ...@@ -60,9 +59,9 @@ import de.hft.stuttgart.citydoctor2.check.error.UnknownCheckError;
*/ */
public interface ErrorVisitor { public interface ErrorVisitor {
public void visit(HoleOutsideError err); public void visit(PolygonHoleOutsideError err);
public void visit(ManifoldEdgeError err); public void visit(NonManifoldEdgeError err);
public void visit(MultipleConnectedComponentsError err); public void visit(MultipleConnectedComponentsError err);
...@@ -72,7 +71,7 @@ public interface ErrorVisitor { ...@@ -72,7 +71,7 @@ public interface ErrorVisitor {
public void visit(PolygonWrongOrientationError err); public void visit(PolygonWrongOrientationError err);
public void visit(SameOrientationError err); public void visit(PolygonSameOrientationError err);
public void visit(SolidNotClosedError err); public void visit(SolidNotClosedError err);
...@@ -84,17 +83,15 @@ public interface ErrorVisitor { ...@@ -84,17 +83,15 @@ public interface ErrorVisitor {
public void visit(ConsecutivePointSameError err); public void visit(ConsecutivePointSameError err);
public void visit(RingSelfIntError err);
public void visit(AllPolygonsWrongOrientationError err); public void visit(AllPolygonsWrongOrientationError err);
public void visit(InteriorDisconnectedError err); public void visit(PolygonInteriorDisconnectedError err);
public void visit(NullAreaError err); public void visit(NullAreaError err);
public void visit(TooFewPointsError err); public void visit(RingTooFewPointsError err);
public void visit(NormalDeviationError err); public void visit(NonPlanarPolygonNormalsDeviation err);
public void visit(NonPlanarPolygonDistancePlaneError err); public void visit(NonPlanarPolygonDistancePlaneError err);
...@@ -104,9 +101,9 @@ public interface ErrorVisitor { ...@@ -104,9 +101,9 @@ public interface ErrorVisitor {
public void visit(TooFewPolygonsError err); public void visit(TooFewPolygonsError err);
public void visit(DuplicatePointError err); public void visit(RingDuplicatePointError err);
public void visit(EdgeIntersectionError err); public void visit(RingEdgeIntersectionError err);
public void visit(PointTouchesEdgeError err); public void visit(PointTouchesEdgeError err);
......
...@@ -21,33 +21,32 @@ package de.hft.stuttgart.citydoctor2.check; ...@@ -21,33 +21,32 @@ package de.hft.stuttgart.citydoctor2.check;
import de.hft.stuttgart.citydoctor2.check.error.AllPolygonsWrongOrientationError; import de.hft.stuttgart.citydoctor2.check.error.AllPolygonsWrongOrientationError;
import de.hft.stuttgart.citydoctor2.check.error.ConsecutivePointSameError; import de.hft.stuttgart.citydoctor2.check.error.ConsecutivePointSameError;
import de.hft.stuttgart.citydoctor2.check.error.DependenciesNotMetError; import de.hft.stuttgart.citydoctor2.check.error.DependenciesNotMetError;
import de.hft.stuttgart.citydoctor2.check.error.NonPlanarPolygonDistancePlaneError;
import de.hft.stuttgart.citydoctor2.check.error.DuplicatePointError;
import de.hft.stuttgart.citydoctor2.check.error.EdgeIntersectionError;
import de.hft.stuttgart.citydoctor2.check.error.HoleOutsideError;
import de.hft.stuttgart.citydoctor2.check.error.InteriorDisconnectedError;
import de.hft.stuttgart.citydoctor2.check.error.ManifoldEdgeError;
import de.hft.stuttgart.citydoctor2.check.error.MultipleConnectedComponentsError; import de.hft.stuttgart.citydoctor2.check.error.MultipleConnectedComponentsError;
import de.hft.stuttgart.citydoctor2.check.error.NestedRingError; import de.hft.stuttgart.citydoctor2.check.error.NestedRingError;
import de.hft.stuttgart.citydoctor2.check.error.NonManifoldEdgeError;
import de.hft.stuttgart.citydoctor2.check.error.NonManifoldVertexError; import de.hft.stuttgart.citydoctor2.check.error.NonManifoldVertexError;
import de.hft.stuttgart.citydoctor2.check.error.NormalDeviationError; import de.hft.stuttgart.citydoctor2.check.error.NonPlanarPolygonDistancePlaneError;
import de.hft.stuttgart.citydoctor2.check.error.NonPlanarPolygonNormalsDeviation;
import de.hft.stuttgart.citydoctor2.check.error.NotCeilingError; import de.hft.stuttgart.citydoctor2.check.error.NotCeilingError;
import de.hft.stuttgart.citydoctor2.check.error.NotFloorError; import de.hft.stuttgart.citydoctor2.check.error.NotFloorError;
import de.hft.stuttgart.citydoctor2.check.error.NotGroundError; import de.hft.stuttgart.citydoctor2.check.error.NotGroundError;
import de.hft.stuttgart.citydoctor2.check.error.NotWallError; import de.hft.stuttgart.citydoctor2.check.error.NotWallError;
import de.hft.stuttgart.citydoctor2.check.error.NullAreaError; import de.hft.stuttgart.citydoctor2.check.error.NullAreaError;
import de.hft.stuttgart.citydoctor2.check.error.PointTouchesEdgeError; import de.hft.stuttgart.citydoctor2.check.error.PointTouchesEdgeError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonHoleOutsideError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonInteriorDisconnectedError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonIntersectingRingsError; import de.hft.stuttgart.citydoctor2.check.error.PolygonIntersectingRingsError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonSameOrientationError;
import de.hft.stuttgart.citydoctor2.check.error.PolygonWrongOrientationError; import de.hft.stuttgart.citydoctor2.check.error.PolygonWrongOrientationError;
import de.hft.stuttgart.citydoctor2.check.error.RingDuplicatePointError;
import de.hft.stuttgart.citydoctor2.check.error.RingEdgeIntersectionError;
import de.hft.stuttgart.citydoctor2.check.error.RingNotClosedError; import de.hft.stuttgart.citydoctor2.check.error.RingNotClosedError;
import de.hft.stuttgart.citydoctor2.check.error.RingSelfIntError; import de.hft.stuttgart.citydoctor2.check.error.RingTooFewPointsError;
import de.hft.stuttgart.citydoctor2.check.error.SameOrientationError;
import de.hft.stuttgart.citydoctor2.check.error.SchematronError; import de.hft.stuttgart.citydoctor2.check.error.SchematronError;
import de.hft.stuttgart.citydoctor2.check.error.SolidNotClosedError; import de.hft.stuttgart.citydoctor2.check.error.SolidNotClosedError;
import de.hft.stuttgart.citydoctor2.check.error.SolidSelfIntError; import de.hft.stuttgart.citydoctor2.check.error.SolidSelfIntError;
import de.hft.stuttgart.citydoctor2.check.error.SurfaceUnfragmentedError; import de.hft.stuttgart.citydoctor2.check.error.SurfaceUnfragmentedError;
import de.hft.stuttgart.citydoctor2.check.error.TinyEdgeError; import de.hft.stuttgart.citydoctor2.check.error.TinyEdgeError;
import de.hft.stuttgart.citydoctor2.check.error.TooFewPointsError;
import de.hft.stuttgart.citydoctor2.check.error.TooFewPolygonsError; import de.hft.stuttgart.citydoctor2.check.error.TooFewPolygonsError;
import de.hft.stuttgart.citydoctor2.check.error.UnknownCheckError; import de.hft.stuttgart.citydoctor2.check.error.UnknownCheckError;
...@@ -69,11 +68,11 @@ public interface HealingMethod { ...@@ -69,11 +68,11 @@ public interface HealingMethod {
return false; return false;
} }
default boolean visit(EdgeIntersectionError edgeIntersectionError, ModificationListener l) { default boolean visit(RingEdgeIntersectionError edgeIntersectionError, ModificationListener l) {
return false; return false;
} }
default boolean visit(DuplicatePointError duplicatePointError, ModificationListener l) { default boolean visit(RingDuplicatePointError duplicatePointError, ModificationListener l) {
return false; return false;
} }
...@@ -93,15 +92,15 @@ public interface HealingMethod { ...@@ -93,15 +92,15 @@ public interface HealingMethod {
return false; return false;
} }
default boolean visit(HoleOutsideError err, ModificationListener l) { default boolean visit(PolygonHoleOutsideError err, ModificationListener l) {
return false; return false;
} }
default boolean visit(InteriorDisconnectedError err, ModificationListener l) { default boolean visit(PolygonInteriorDisconnectedError err, ModificationListener l) {
return false; return false;
} }
default boolean visit(ManifoldEdgeError err, ModificationListener l) { default boolean visit(NonManifoldEdgeError err, ModificationListener l) {
return false; return false;
} }
...@@ -117,7 +116,7 @@ public interface HealingMethod { ...@@ -117,7 +116,7 @@ public interface HealingMethod {
return false; return false;
} }
default boolean visit(NormalDeviationError err, ModificationListener l) { default boolean visit(NonPlanarPolygonNormalsDeviation err, ModificationListener l) {
return false; return false;
} }
...@@ -137,11 +136,7 @@ public interface HealingMethod { ...@@ -137,11 +136,7 @@ public interface HealingMethod {
return false; return false;
} }
default boolean visit(RingSelfIntError err, ModificationListener l) { default boolean visit(PolygonSameOrientationError err, ModificationListener l) {
return false;
}
default boolean visit(SameOrientationError err, ModificationListener l) {
return false; return false;
} }
...@@ -153,7 +148,7 @@ public interface HealingMethod { ...@@ -153,7 +148,7 @@ public interface HealingMethod {
return false; return false;
} }
default boolean visit(TooFewPointsError err, ModificationListener l) { default boolean visit(RingTooFewPointsError err, ModificationListener l) {
return false; return false;
} }
......
...@@ -36,14 +36,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Geometry; ...@@ -36,14 +36,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Geometry;
* @author Matthias Betz * @author Matthias Betz
* *
*/ */
public class ManifoldEdgeError extends CheckError { public class NonManifoldEdgeError extends CheckError {
private static final long serialVersionUID = -6742948557014332402L; private static final long serialVersionUID = -6742948557014332402L;
private List<Edge> edges; private List<Edge> edges;
private Geometry geom; private Geometry geom;
public ManifoldEdgeError(Geometry geom, List<Edge> edges) { public NonManifoldEdgeError(Geometry geom, List<Edge> edges) {
super(ErrorId.GE_S_NON_MANIFOLD_EDGE, ErrorType.ERROR, geom); super(ErrorId.GE_S_NON_MANIFOLD_EDGE, ErrorType.ERROR, geom);
this.edges = edges; this.edges = edges;
this.geom = geom; this.geom = geom;
......
...@@ -34,14 +34,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -34,14 +34,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
* @author Matthias Betz * @author Matthias Betz
* *
*/ */
public class NormalDeviationError extends CheckError { public class NonPlanarPolygonNormalsDeviation extends CheckError {
private static final long serialVersionUID = 69073161885265794L; private static final long serialVersionUID = 69073161885265794L;
private Polygon p; private Polygon p;
private double deviation; private double deviation;
public NormalDeviationError(Polygon p, double deviation) { public NonPlanarPolygonNormalsDeviation(Polygon p, double deviation) {
super(ErrorId.GE_P_NON_PLANAR_POLYGON_NORMALS_DEVIATION, ErrorType.ERROR, p); super(ErrorId.GE_P_NON_PLANAR_POLYGON_NORMALS_DEVIATION, ErrorType.ERROR, p);
this.p = p; this.p = p;
this.deviation = deviation; this.deviation = deviation;
......
...@@ -37,14 +37,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -37,14 +37,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
* @author Matthias Betz * @author Matthias Betz
* *
*/ */
public class HoleOutsideError extends CheckError { public class PolygonHoleOutsideError extends CheckError {
private static final long serialVersionUID = -4522153084655775231L; private static final long serialVersionUID = -4522153084655775231L;
private List<LinearRing> holesOutside; private List<LinearRing> holesOutside;
private Polygon p; private Polygon p;
public HoleOutsideError(Polygon p, List<LinearRing> holesOutside) { public PolygonHoleOutsideError(Polygon p, List<LinearRing> holesOutside) {
super(ErrorId.GE_P_HOLE_OUTSIDE, ErrorType.ERROR, p); super(ErrorId.GE_P_HOLE_OUTSIDE, ErrorType.ERROR, p);
this.p = p; this.p = p;
this.holesOutside = holesOutside; this.holesOutside = holesOutside;
......
...@@ -37,14 +37,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -37,14 +37,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
* @author Matthias Betz * @author Matthias Betz
* *
*/ */
public class InteriorDisconnectedError extends CheckError { public class PolygonInteriorDisconnectedError extends CheckError {
private static final long serialVersionUID = 511849016699842395L; private static final long serialVersionUID = 511849016699842395L;
private Polygon p; private Polygon p;
private List<LinearRing> connectedRings; private List<LinearRing> connectedRings;
public InteriorDisconnectedError(Polygon p, List<LinearRing> connectedRings) { public PolygonInteriorDisconnectedError(Polygon p, List<LinearRing> connectedRings) {
super(ErrorId.GE_P_INTERIOR_DISCONNECTED, ErrorType.ERROR, p); super(ErrorId.GE_P_INTERIOR_DISCONNECTED, ErrorType.ERROR, p);
this.p = p; this.p = p;
this.connectedRings = connectedRings; this.connectedRings = connectedRings;
......
...@@ -35,14 +35,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -35,14 +35,14 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
* @author Matthias Betz * @author Matthias Betz
* *
*/ */
public class SameOrientationError extends CheckError { public class PolygonSameOrientationError extends CheckError {
private static final long serialVersionUID = -6192337889977667459L; private static final long serialVersionUID = -6192337889977667459L;
private Polygon p; private Polygon p;
private LinearRing innerRing; private LinearRing innerRing;
public SameOrientationError(Polygon p, LinearRing inner) { public PolygonSameOrientationError(Polygon p, LinearRing inner) {
super(ErrorId.GE_P_ORIENTATION_RINGS_SAME, ErrorType.ERROR, p); super(ErrorId.GE_P_ORIENTATION_RINGS_SAME, ErrorType.ERROR, p);
this.p = p; this.p = p;
this.innerRing = inner; this.innerRing = inner;
......
...@@ -35,7 +35,7 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex; ...@@ -35,7 +35,7 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex;
* @author Matthias Betz * @author Matthias Betz
* *
*/ */
public class DuplicatePointError extends CheckError { public class RingDuplicatePointError extends CheckError {
private static final long serialVersionUID = 7208982075173209953L; private static final long serialVersionUID = 7208982075173209953L;
...@@ -43,7 +43,7 @@ public class DuplicatePointError extends CheckError { ...@@ -43,7 +43,7 @@ public class DuplicatePointError extends CheckError {
private Vertex v1; private Vertex v1;
private Vertex v2; private Vertex v2;
public DuplicatePointError(LinearRing r, Vertex v1, Vertex v2) { public RingDuplicatePointError(LinearRing r, Vertex v1, Vertex v2) {
super(ErrorId.GE_R_SELF_INTERSECTION, ErrorType.ERROR, r); super(ErrorId.GE_R_SELF_INTERSECTION, ErrorType.ERROR, r);
this.r = r; this.r = r;
this.v1 = v1; this.v1 = v1;
......
...@@ -36,7 +36,7 @@ import de.hft.stuttgart.citydoctor2.math.Vector3d; ...@@ -36,7 +36,7 @@ import de.hft.stuttgart.citydoctor2.math.Vector3d;
* @author Matthias Betz * @author Matthias Betz
* *
*/ */
public class EdgeIntersectionError extends CheckError { public class RingEdgeIntersectionError extends CheckError {
private static final long serialVersionUID = 4923311259469198172L; private static final long serialVersionUID = 4923311259469198172L;
...@@ -45,7 +45,7 @@ public class EdgeIntersectionError extends CheckError { ...@@ -45,7 +45,7 @@ public class EdgeIntersectionError extends CheckError {
private Vector3d intersection; private Vector3d intersection;
private LinearRing lr; private LinearRing lr;
public EdgeIntersectionError(LinearRing lr, Edge e1, Edge e2, Vector3d intersection) { public RingEdgeIntersectionError(LinearRing lr, Edge e1, Edge e2, Vector3d intersection) {
super(ErrorId.GE_R_SELF_INTERSECTION, ErrorType.ERROR, lr); super(ErrorId.GE_R_SELF_INTERSECTION, ErrorType.ERROR, lr);
if (e1 == null || e2 == null || lr == null || intersection == null) { if (e1 == null || e2 == null || lr == null || intersection == null) {
throw new IllegalArgumentException("Parameters may not be null"); throw new IllegalArgumentException("Parameters may not be null");
......
/*-
* Copyright 2020 Beuth Hochschule für Technik Berlin, Hochschule für Technik Stuttgart
*
* This file is part of CityDoctor2.
*
* CityDoctor2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* CityDoctor2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with CityDoctor2. If not, see <https://www.gnu.org/licenses/>.
*/
package de.hft.stuttgart.citydoctor2.check.error;
import java.util.Set;
import de.hft.stuttgart.citydoctor2.check.CheckError;
import de.hft.stuttgart.citydoctor2.check.ErrorId;
import de.hft.stuttgart.citydoctor2.check.ErrorReport;
import de.hft.stuttgart.citydoctor2.check.ErrorType;
import de.hft.stuttgart.citydoctor2.check.ErrorVisitor;
import de.hft.stuttgart.citydoctor2.check.HealingMethod;
import de.hft.stuttgart.citydoctor2.check.ModificationListener;
import de.hft.stuttgart.citydoctor2.datastructure.Edge;
import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
/**
* If two edges of the same linear ring are intersecting with each other, this
* error is created.
*
* @author Matthias Betz
*
*/
public class RingSelfIntError extends CheckError {
private static final long serialVersionUID = 8007952264635395514L;
private LinearRing lr;
private Set<Edge> edges;
public RingSelfIntError(LinearRing lr, Set<Edge> intersectingEdges) {
super(ErrorId.GE_R_SELF_INTERSECTION, ErrorType.ERROR, lr);
this.lr = lr;
edges = intersectingEdges;
}
public LinearRing getRing() {
return lr;
}
public Set<Edge> getEdges() {
return edges;
}
@Override