Commit 81be0b1d authored by Riegel's avatar Riegel
Browse files

Merge branch 'dev_GUI' into 'dev'

Open source release of CityDoctorGUI and other extensions.

See merge request !6
parents 12d96d95 5a4d0a74
Pipeline #10056 passed with stage
in 1 minute and 6 seconds
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
*/ */
package de.hft.stuttgart.citydoctor2.check.error; package de.hft.stuttgart.citydoctor2.check.error;
import java.io.Serial;
import java.util.List; import java.util.List;
import de.hft.stuttgart.citydoctor2.check.CheckError; import de.hft.stuttgart.citydoctor2.check.CheckError;
...@@ -40,10 +41,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -40,10 +41,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class MultipleConnectedComponentsError implements CheckError { public class MultipleConnectedComponentsError implements CheckError {
@Serial
private static final long serialVersionUID = 2152069835068857036L; private static final long serialVersionUID = 2152069835068857036L;
private Geometry geom; private final Geometry geom;
private List<List<Polygon>> components; private final List<List<Polygon>> components;
public MultipleConnectedComponentsError(Geometry geom, List<List<Polygon>> components) { public MultipleConnectedComponentsError(Geometry geom, List<List<Polygon>> components) {
this.geom = geom; this.geom = geom;
......
...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; ...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import java.io.Serial;
/** /**
* If an inner ring is with in the boundaries of another, this error is created. * If an inner ring is with in the boundaries of another, this error is created.
* *
...@@ -37,11 +39,12 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -37,11 +39,12 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class NestedRingError implements CheckError { public class NestedRingError implements CheckError {
@Serial
private static final long serialVersionUID = -3396113374745830193L; private static final long serialVersionUID = -3396113374745830193L;
private Polygon p; private final Polygon p;
private LinearRing innerRing; private final LinearRing innerRing;
private LinearRing withinRing; private final LinearRing withinRing;
public NestedRingError(Polygon p, LinearRing innerRing, LinearRing withinRing) { public NestedRingError(Polygon p, LinearRing innerRing, LinearRing withinRing) {
this.p = p; this.p = p;
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
*/ */
package de.hft.stuttgart.citydoctor2.check.error; package de.hft.stuttgart.citydoctor2.check.error;
import java.io.Serial;
import java.util.List; import java.util.List;
import de.hft.stuttgart.citydoctor2.check.CheckError; import de.hft.stuttgart.citydoctor2.check.CheckError;
...@@ -39,10 +40,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; ...@@ -39,10 +40,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
*/ */
public class NonManifoldEdgeError implements CheckError { public class NonManifoldEdgeError implements CheckError {
@Serial
private static final long serialVersionUID = -6742948557014332402L; private static final long serialVersionUID = -6742948557014332402L;
private List<Edge> edges; private final List<Edge> edges;
private Geometry geom; private final Geometry geom;
public NonManifoldEdgeError(Geometry geom, List<Edge> edges) { public NonManifoldEdgeError(Geometry geom, List<Edge> edges) {
this.edges = edges; this.edges = edges;
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
*/ */
package de.hft.stuttgart.citydoctor2.check.error; package de.hft.stuttgart.citydoctor2.check.error;
import java.io.Serial;
import java.util.List; import java.util.List;
import de.hft.stuttgart.citydoctor2.check.CheckError; import de.hft.stuttgart.citydoctor2.check.CheckError;
...@@ -41,11 +42,12 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex; ...@@ -41,11 +42,12 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex;
*/ */
public class NonManifoldVertexError implements CheckError { public class NonManifoldVertexError implements CheckError {
@Serial
private static final long serialVersionUID = -3915669943428175777L; private static final long serialVersionUID = -3915669943428175777L;
private List<List<Polygon>> components; private final List<List<Polygon>> components;
private Geometry geom; private final Geometry geom;
private Vertex v; private final Vertex v;
public NonManifoldVertexError(Geometry geom, List<List<Polygon>> components, Vertex v) { public NonManifoldVertexError(Geometry geom, List<List<Polygon>> components, Vertex v) {
this.geom = geom; this.geom = geom;
......
...@@ -31,6 +31,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex; ...@@ -31,6 +31,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex;
import de.hft.stuttgart.citydoctor2.math.Plane; import de.hft.stuttgart.citydoctor2.math.Plane;
import de.hft.stuttgart.citydoctor2.utils.Localization; import de.hft.stuttgart.citydoctor2.utils.Localization;
import java.io.Serial;
/** /**
* Error object for planarity errors containing the polygon, the regression * Error object for planarity errors containing the polygon, the regression
* plane and the distance to the plane. * plane and the distance to the plane.
...@@ -40,12 +42,13 @@ import de.hft.stuttgart.citydoctor2.utils.Localization; ...@@ -40,12 +42,13 @@ import de.hft.stuttgart.citydoctor2.utils.Localization;
*/ */
public class NonPlanarPolygonDistancePlaneError implements CheckError { public class NonPlanarPolygonDistancePlaneError implements CheckError {
@Serial
private static final long serialVersionUID = -3504364055236383519L; private static final long serialVersionUID = -3504364055236383519L;
private Polygon p; private final Polygon p;
private double distance; private final double distance;
private Vertex v; private final Vertex v;
private Plane plane; private final Plane plane;
public NonPlanarPolygonDistancePlaneError(Polygon p, double distance, Vertex v, Plane plane) { public NonPlanarPolygonDistancePlaneError(Polygon p, double distance, Vertex v, Plane plane) {
this.p = p; this.p = p;
......
...@@ -28,6 +28,8 @@ import de.hft.stuttgart.citydoctor2.check.ModificationListener; ...@@ -28,6 +28,8 @@ import de.hft.stuttgart.citydoctor2.check.ModificationListener;
import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import java.io.Serial;
/** /**
* When the normal of the triangles created from the triangulation of the * When the normal of the triangles created from the triangulation of the
* polygon have a too large angle between them, this error is created. * polygon have a too large angle between them, this error is created.
...@@ -37,10 +39,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -37,10 +39,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class NonPlanarPolygonNormalsDeviation implements CheckError { public class NonPlanarPolygonNormalsDeviation implements CheckError {
@Serial
private static final long serialVersionUID = 69073161885265794L; private static final long serialVersionUID = 69073161885265794L;
private Polygon p; private final Polygon p;
private double deviation; private final double deviation;
public NonPlanarPolygonNormalsDeviation(Polygon p, double deviation) { public NonPlanarPolygonNormalsDeviation(Polygon p, double deviation) {
this.p = p; this.p = p;
......
...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.BoundarySurface; ...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.BoundarySurface;
import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import java.io.Serial;
/** /**
* If a boundary surface is infact not a ceiling even though it was defined as * If a boundary surface is infact not a ceiling even though it was defined as
* one. * one.
...@@ -38,10 +40,10 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -38,10 +40,10 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class NotCeilingError implements CheckError { public class NotCeilingError implements CheckError {
@Serial
private static final long serialVersionUID = 6725904270389419696L; private static final long serialVersionUID = 6725904270389419696L;
private final BoundarySurface surface;
private BoundarySurface surface; private final Polygon p;
private Polygon p;
public NotCeilingError(BoundarySurface bs, Polygon p) { public NotCeilingError(BoundarySurface bs, Polygon p) {
surface = bs; surface = bs;
......
...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.BoundarySurface; ...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.BoundarySurface;
import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import java.io.Serial;
/** /**
* When a boundary surface is not a floor even though it was defined as one. * When a boundary surface is not a floor even though it was defined as one.
* *
...@@ -37,10 +39,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -37,10 +39,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class NotFloorError implements CheckError { public class NotFloorError implements CheckError {
@Serial
private static final long serialVersionUID = -3193557053834977449L; private static final long serialVersionUID = -3193557053834977449L;
private BoundarySurface surface; private final BoundarySurface surface;
private Polygon p; private final Polygon p;
public NotFloorError(BoundarySurface bs, Polygon p) { public NotFloorError(BoundarySurface bs, Polygon p) {
surface = bs; surface = bs;
......
...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.BoundarySurface; ...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.BoundarySurface;
import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import java.io.Serial;
/** /**
* If a boundary surface is not a ground surface even though it was defined as * If a boundary surface is not a ground surface even though it was defined as
* one. * one.
...@@ -38,10 +40,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -38,10 +40,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class NotGroundError implements CheckError { public class NotGroundError implements CheckError {
@Serial
private static final long serialVersionUID = 8793224454858861221L; private static final long serialVersionUID = 8793224454858861221L;
private BoundarySurface surface; private final BoundarySurface surface;
private Polygon p; private final Polygon p;
public NotGroundError(BoundarySurface bs, Polygon p) { public NotGroundError(BoundarySurface bs, Polygon p) {
surface = bs; surface = bs;
......
...@@ -30,6 +30,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; ...@@ -30,6 +30,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import de.hft.stuttgart.citydoctor2.math.Vector3d; import de.hft.stuttgart.citydoctor2.math.Vector3d;
import java.io.Serial;
/** /**
* if a boundary surface is not a wall even though it was defined as one. * if a boundary surface is not a wall even though it was defined as one.
* *
...@@ -38,11 +40,12 @@ import de.hft.stuttgart.citydoctor2.math.Vector3d; ...@@ -38,11 +40,12 @@ import de.hft.stuttgart.citydoctor2.math.Vector3d;
*/ */
public class NotWallError implements CheckError { public class NotWallError implements CheckError {
@Serial
private static final long serialVersionUID = 406429139625558232L; private static final long serialVersionUID = 406429139625558232L;
private BoundarySurface surface; private final BoundarySurface surface;
private Polygon p; private final Polygon p;
private Vector3d normal; private final Vector3d normal;
public NotWallError(BoundarySurface bs, Polygon p, Vector3d normal) { public NotWallError(BoundarySurface bs, Polygon p, Vector3d normal) {
surface = bs; surface = bs;
......
...@@ -28,6 +28,8 @@ import de.hft.stuttgart.citydoctor2.check.ModificationListener; ...@@ -28,6 +28,8 @@ import de.hft.stuttgart.citydoctor2.check.ModificationListener;
import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
import java.io.Serial;
/** /**
* When a linear ring has a near zero area this error is created. * When a linear ring has a near zero area this error is created.
* *
...@@ -36,9 +38,10 @@ import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; ...@@ -36,9 +38,10 @@ import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
*/ */
public class NullAreaError implements CheckError { public class NullAreaError implements CheckError {
@Serial
private static final long serialVersionUID = 1358910429039553687L; private static final long serialVersionUID = 1358910429039553687L;
private LinearRing lr; private final LinearRing lr;
public NullAreaError(LinearRing lr) { public NullAreaError(LinearRing lr) {
this.lr = lr; this.lr = lr;
......
...@@ -30,6 +30,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; ...@@ -30,6 +30,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
import de.hft.stuttgart.citydoctor2.datastructure.Vertex; import de.hft.stuttgart.citydoctor2.datastructure.Vertex;
import java.io.Serial;
/** /**
* If a point of a linear ring touches an edge of the same ring it is considered * If a point of a linear ring touches an edge of the same ring it is considered
* self intersecting and this error object is created. * self intersecting and this error object is created.
...@@ -39,11 +41,12 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex; ...@@ -39,11 +41,12 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex;
*/ */
public class PointTouchesEdgeError implements CheckError { public class PointTouchesEdgeError implements CheckError {
@Serial
private static final long serialVersionUID = 3277456707271748954L; private static final long serialVersionUID = 3277456707271748954L;
private LinearRing lr; private final LinearRing lr;
private Edge e; private final Edge e;
private Vertex v; private final Vertex v;
public PointTouchesEdgeError(LinearRing lr, Edge e, Vertex v) { public PointTouchesEdgeError(LinearRing lr, Edge e, Vertex v) {
this.lr = lr; this.lr = lr;
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
*/ */
package de.hft.stuttgart.citydoctor2.check.error; package de.hft.stuttgart.citydoctor2.check.error;
import java.io.Serial;
import java.util.List; import java.util.List;
import de.hft.stuttgart.citydoctor2.check.CheckError; import de.hft.stuttgart.citydoctor2.check.CheckError;
...@@ -40,10 +41,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -40,10 +41,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class PolygonHoleOutsideError implements CheckError { public class PolygonHoleOutsideError implements CheckError {
@Serial
private static final long serialVersionUID = -4522153084655775231L; private static final long serialVersionUID = -4522153084655775231L;
private List<LinearRing> holesOutside; private final List<LinearRing> holesOutside;
private Polygon p; private final Polygon p;
public PolygonHoleOutsideError(Polygon p, List<LinearRing> holesOutside) { public PolygonHoleOutsideError(Polygon p, List<LinearRing> holesOutside) {
this.p = p; this.p = p;
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
*/ */
package de.hft.stuttgart.citydoctor2.check.error; package de.hft.stuttgart.citydoctor2.check.error;
import java.io.Serial;
import java.util.List; import java.util.List;
import de.hft.stuttgart.citydoctor2.check.CheckError; import de.hft.stuttgart.citydoctor2.check.CheckError;
...@@ -40,10 +41,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -40,10 +41,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class PolygonInteriorDisconnectedError implements CheckError { public class PolygonInteriorDisconnectedError implements CheckError {
@Serial
private static final long serialVersionUID = 511849016699842395L; private static final long serialVersionUID = 511849016699842395L;
private Polygon p; private final Polygon p;
private List<LinearRing> connectedRings; private final List<LinearRing> connectedRings;
public PolygonInteriorDisconnectedError(Polygon p, List<LinearRing> connectedRings) { public PolygonInteriorDisconnectedError(Polygon p, List<LinearRing> connectedRings) {
this.p = p; this.p = p;
......
...@@ -30,6 +30,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; ...@@ -30,6 +30,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import de.hft.stuttgart.citydoctor2.utils.SerializablePair; import de.hft.stuttgart.citydoctor2.utils.SerializablePair;
import java.io.Serial;
/** /**
* If the exterior ring and interior rings are intersecting each other, it * If the exterior ring and interior rings are intersecting each other, it
* results in a polygon self intersection and this error is created. * results in a polygon self intersection and this error is created.
...@@ -39,10 +41,11 @@ import de.hft.stuttgart.citydoctor2.utils.SerializablePair; ...@@ -39,10 +41,11 @@ import de.hft.stuttgart.citydoctor2.utils.SerializablePair;
*/ */
public class PolygonIntersectingRingsError implements CheckError { public class PolygonIntersectingRingsError implements CheckError {
@Serial
private static final long serialVersionUID = -7043521697085991901L; private static final long serialVersionUID = -7043521697085991901L;
private Polygon p; private final Polygon p;
private SerializablePair<LinearRing, LinearRing> intersectingRings; private final SerializablePair<LinearRing, LinearRing> intersectingRings;
public PolygonIntersectingRingsError(Polygon p, SerializablePair<LinearRing, LinearRing> intersectingRings) { public PolygonIntersectingRingsError(Polygon p, SerializablePair<LinearRing, LinearRing> intersectingRings) {
this.p = p; this.p = p;
......
...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; ...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import java.io.Serial;
/** /**
* If the interior rings have the same orientation as the exterior ring, this * If the interior rings have the same orientation as the exterior ring, this
* error is created. * error is created.
...@@ -38,10 +40,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -38,10 +40,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class PolygonSameOrientationError implements CheckError { public class PolygonSameOrientationError implements CheckError {
@Serial
private static final long serialVersionUID = -6192337889977667459L; private static final long serialVersionUID = -6192337889977667459L;
private Polygon p; private final Polygon p;
private LinearRing innerRing; private final LinearRing innerRing;
public PolygonSameOrientationError(Polygon p, LinearRing inner) { public PolygonSameOrientationError(Polygon p, LinearRing inner) {
this.p = p; this.p = p;
......
...@@ -10,11 +10,14 @@ import de.hft.stuttgart.citydoctor2.check.ModificationListener; ...@@ -10,11 +10,14 @@ import de.hft.stuttgart.citydoctor2.check.ModificationListener;
import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon; import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import java.io.Serial;
public class PolygonWithoutSurfaceError implements CheckError { public class PolygonWithoutSurfaceError implements CheckError {
@Serial
private static final long serialVersionUID = 2676579487514583105L; private static final long serialVersionUID = 2676579487514583105L;
private Polygon p; private final Polygon p;
public PolygonWithoutSurfaceError(Polygon polygon) { public PolygonWithoutSurfaceError(Polygon polygon) {
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
*/ */
package de.hft.stuttgart.citydoctor2.check.error; package de.hft.stuttgart.citydoctor2.check.error;
import java.io.Serial;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
...@@ -44,10 +45,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon; ...@@ -44,10 +45,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
*/ */
public class PolygonWrongOrientationError implements CheckError { public class PolygonWrongOrientationError implements CheckError {
@Serial
private static final long serialVersionUID = -3006643655816847097L; private static final long serialVersionUID = -3006643655816847097L;
private List<Edge> edges; private final List<Edge> edges;
private Geometry g; private final Geometry g;
public PolygonWrongOrientationError(Geometry g, List<Edge> edges) { public PolygonWrongOrientationError(Geometry g, List<Edge> edges) {
this.edges = edges; this.edges = edges;
......
...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; ...@@ -29,6 +29,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
import de.hft.stuttgart.citydoctor2.datastructure.Vertex; import de.hft.stuttgart.citydoctor2.datastructure.Vertex;
import java.io.Serial;
/** /**
* When a point is repeated in a linear ring, but is not consecutive. This * When a point is repeated in a linear ring, but is not consecutive. This
* results in a self intersection of the ring and this error object is created. * results in a self intersection of the ring and this error object is created.
...@@ -38,11 +40,12 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex; ...@@ -38,11 +40,12 @@ import de.hft.stuttgart.citydoctor2.datastructure.Vertex;
*/ */
public class RingDuplicatePointError implements CheckError { public class RingDuplicatePointError implements CheckError {
@Serial
private static final long serialVersionUID = 7208982075173209953L; private static final long serialVersionUID = 7208982075173209953L;
private LinearRing r; private final LinearRing r;
private Vertex v1; private final Vertex v1;
private Vertex v2; private final Vertex v2;
public RingDuplicatePointError(LinearRing r, Vertex v1, Vertex v2) { public RingDuplicatePointError(LinearRing r, Vertex v1, Vertex v2) {
this.r = r; this.r = r;
......
...@@ -30,6 +30,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement; ...@@ -30,6 +30,8 @@ import de.hft.stuttgart.citydoctor2.datastructure.GmlElement;
import de.hft.stuttgart.citydoctor2.datastructure.LinearRing; import de.hft.stuttgart.citydoctor2.datastructure.LinearRing;
import de.hft.stuttgart.citydoctor2.math.Vector3d; import de.hft.stuttgart.citydoctor2.math.Vector3d;
import java.io.Serial;
/** /**
* When two edges of the same linear ring are intersecting with each other this * When two edges of the same linear ring are intersecting with each other this
* error object is created. * error object is created.
...@@ -39,12 +41,13 @@ import de.hft.stuttgart.citydoctor2.math.Vector3d; ...@@ -39,12 +41,13 @@ import de.hft.stuttgart.citydoctor2.math.Vector3d;
*/ */
public class RingEdgeIntersectionError implements CheckError { public class RingEdgeIntersectionError implements CheckError {
@Serial
private static final long serialVersionUID = 4923311259469198172L; private static final long serialVersionUID = 4923311259469198172L;
private Edge e1; private final Edge e1;
private Edge e2; private final Edge e2;
private Vector3d intersection; private final Vector3d intersection;
private LinearRing lr; private final LinearRing lr;
public RingEdgeIntersectionError(LinearRing lr, Edge e1, Edge e2, Vector3d intersection) { public RingEdgeIntersectionError(LinearRing lr, Edge e1, Edge e2, Vector3d intersection) {
if (e1 == null || e2 == null || lr == null || intersection == null) { if (e1 == null || e2 == null || lr == null || intersection == null) {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment