annotate backend/src/main/java/org/dive4elements/river/model/CrossSectionPoint.java @ 6229:3fea9701d58d

Fix gauge determination. If we look upstream ( a > b ) we still have to compare the start value of our range against the gauge and not the end value. The start value is always the relevant value as we handle the direction by checking this against A or B of the gauge. Also: I will never compare doubles with == again. I will never compare doubles with == again. I will never compare doubles with == again. I will never compare doubles with == again. I will never compare doubles with == again.
author Andre Heinecke <aheinecke@intevation.de>
date Thu, 06 Jun 2013 18:23:17 +0200
parents 4c3ccf2b0304
children
rev   line source
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
6 * documentation coming with Dive4Elements River for details.
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
9 package org.dive4elements.river.model;
1194
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
10
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
11 import java.io.Serializable;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
12
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
13 import javax.persistence.Entity;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
14 import javax.persistence.Id;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
15 import javax.persistence.Table;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
16 import javax.persistence.GeneratedValue;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
17 import javax.persistence.Column;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
18 import javax.persistence.SequenceGenerator;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
19 import javax.persistence.GenerationType;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
20 import javax.persistence.OneToOne;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
21 import javax.persistence.JoinColumn;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
22
4710
0ad7141c7dcc Documentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2860
diff changeset
23 /** Mapped Point of a cross section line. */
1194
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24 @Entity
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25 @Table(name = "cross_section_points")
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26 public class CrossSectionPoint
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
27 implements Serializable
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
28 {
1203
3c01bef43a98 Querprofile: Added a table to map the points to a given km.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1195
diff changeset
29 private Integer id;
3c01bef43a98 Querprofile: Added a table to map the points to a given km.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1195
diff changeset
30 private CrossSectionLine crossSectionLine;
3c01bef43a98 Querprofile: Added a table to map the points to a given km.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1195
diff changeset
31 private Integer colPos;
2860
2f874d14ac68 Use Doubles to store meassure points of profiles.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
32 private Double x;
2f874d14ac68 Use Doubles to store meassure points of profiles.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
33 private Double y;
1194
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
34
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
35 public CrossSectionPoint() {
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
36 }
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
37
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
38 public CrossSectionPoint(
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
39 CrossSectionLine crossSectionLine,
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
40 Integer colPos,
2860
2f874d14ac68 Use Doubles to store meassure points of profiles.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
41 Double x,
2f874d14ac68 Use Doubles to store meassure points of profiles.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
42 Double y
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
43 ) {
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
44 this.crossSectionLine = crossSectionLine;
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
45 this.colPos = colPos;
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
46 this.x = x;
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
47 this.y = y;
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
48 }
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1203
diff changeset
49
1194
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
50 @Id
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
51 @SequenceGenerator(
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
52 name = "SEQUENCE_CROSS_SECTION_POINTS_ID_SEQ",
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
53 sequenceName = "CROSS_SECTION_POINTS_ID_SEQ",
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
54 allocationSize = 1)
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
55 @GeneratedValue(
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
56 strategy = GenerationType.SEQUENCE,
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
57 generator = "SEQUENCE_CROSS_SECTION_POINTS_ID_SEQ")
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
58 @Column(name = "id")
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
59 public Integer getId() {
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
60 return id;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
61 }
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
62
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
63 public void setId(Integer id) {
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
64 this.id = id;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
65 }
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
66
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
67 @OneToOne
1203
3c01bef43a98 Querprofile: Added a table to map the points to a given km.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1195
diff changeset
68 @JoinColumn(name = "cross_section_line_id")
3c01bef43a98 Querprofile: Added a table to map the points to a given km.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1195
diff changeset
69 public CrossSectionLine getCrossSectionLine() {
3c01bef43a98 Querprofile: Added a table to map the points to a given km.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1195
diff changeset
70 return crossSectionLine;
1194
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
71 }
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
72
1203
3c01bef43a98 Querprofile: Added a table to map the points to a given km.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1195
diff changeset
73 public void setCrossSectionLine(CrossSectionLine crossSectionLine) {
3c01bef43a98 Querprofile: Added a table to map the points to a given km.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1195
diff changeset
74 this.crossSectionLine = crossSectionLine;
1194
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
75 }
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
76
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
77 @Column(name = "col_pos")
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
78 public Integer getColPos() {
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
79 return colPos;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
80 }
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
81
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
82 public void setColPos(Integer colPos) {
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
83 this.colPos = colPos;
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
84 }
1195
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
85
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
86 @Column(name = "x")
2860
2f874d14ac68 Use Doubles to store meassure points of profiles.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
87 public Double getX() {
1195
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
88 return x;
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
89 }
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
90
2860
2f874d14ac68 Use Doubles to store meassure points of profiles.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
91 public void setX(Double x) {
1195
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
92 this.x = x;
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
93 }
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
94
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
95 @Column(name = "y")
2860
2f874d14ac68 Use Doubles to store meassure points of profiles.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
96 public Double getY() {
1195
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
97 return y;
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
98 }
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
99
2860
2f874d14ac68 Use Doubles to store meassure points of profiles.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
100 public void setY(Double y) {
1195
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
101 this.y = y;
2b4de678e29a Removed braindead points3d table
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1194
diff changeset
102 }
1194
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
103 }
491892931761 Added Hibernate models for cross-sections and their points.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
104 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org