Skip to content

Commit c22c05e

Browse files
committed
Added point type to geometry classes parameters.
Fixes #368
1 parent a1d14d5 commit c22c05e

File tree

6 files changed

+32
-20
lines changed

6 files changed

+32
-20
lines changed

hipparchus-geometry/src/changes/changes.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,12 @@ If the output is not quite correct, check for invisible trailing spaces!
4949
<title>Hipparchus Geometry Release Notes</title>
5050
</properties>
5151
<release version="4.0" date="TBD" description="TBD">
52+
<action dev="luc" type="fix" issue="issues/368">
53+
Added point type to geometry classes parameters
54+
</action>
55+
<action dev="luc" type="update" issue="issues/314">
56+
Improved robustness of BSP tree operations
57+
</action>
5258
<action dev="vincent" type="update" issue="issues/285">
5359
Migrated tests from JUnit 4 to JUnit 5
5460
</action>

hipparchus-geometry/src/site/design/oneD.puml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
space with (d-1)-dimensional space
3737
end note
3838

39-
interface "Vector<S extends Space>" as Vector_S_ {
39+
interface "Vector<S extends Space, P extends Point<S>>" as Vector_S_ {
4040
+Space getSpace()
4141
+Vector getZero()
4242
+double getNorm()
@@ -54,9 +54,9 @@
5454
Space <-- Vector_S_
5555

5656
package partitioning #DDEBD8 {
57-
interface "Region<S extends Space>" as Region_S_
58-
interface "Hyperplane<S extends Space>" as Hyperplane_S_
59-
interface "SubHyperplane<S extends Space>" as SubHyperplane_S_
57+
interface "Region<S extends Space, P extends Point<S>>" as Region_S_
58+
interface "Hyperplane<S extends Space, P extends Point<S>>" as Hyperplane_S_
59+
interface "SubHyperplane<S extends Space, P extends Point<S>>" as SubHyperplane_S_
6060
}
6161

6262
package euclidean #DDEBD8 {

hipparchus-geometry/src/site/design/partitioning.puml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,22 @@
2828

2929
package partitioning #DDEBD8 {
3030

31-
abstract "AbstractSubHyperplane<S extends Space, T extends Space>" as AbstractSubHyperplane_S_T_
31+
abstract "AbstractSubHyperplane<S extends Space, P extends Point<S>, T extends Space, Q extends Point<T>>" as AbstractSubHyperplane_S_T_
3232
note left
3333
an abstract sub-hyperplane contains
3434
- an hyperplane defined in space S
3535
- a region defined in space T
3636
T being a sub-space of S
3737
end note
3838

39-
interface "Hyperplane<S extends Space>" as Hyperplane_S_ {
39+
interface "Hyperplane<S extends Space, P extends Point<S>>" as Hyperplane_S_ {
4040
+double getOffset(Vector point)
4141
+boolean sameOrientationAs(Hyperplane other)
4242
+SubHyperplane wholeHyperplane()
4343
+Region wholeSpace()
4444
}
4545

46-
interface "SubHyperplane<S extends Space>" as SubHyperplane_S_ {
46+
interface "SubHyperplane<S extends Space, P extends Point<S>>" as SubHyperplane_S_ {
4747
+Hyperplane getHyperplane()
4848
+boolean isEmpty()
4949
+double getSize()
@@ -52,7 +52,7 @@
5252
+SubHyperplane reunite(SubHyperplane other)
5353
}
5454

55-
class "BSPTree<S extends Space>" as BSPTree_S_ {
55+
class "BSPTree<S extends Space, P extends Point<S>>" as BSPTree_S_ {
5656
+boolean insertCut(Hyperplane hyperplane)
5757
+void setAttribute(Object attribute)
5858
+Object getAttribute()
@@ -61,19 +61,19 @@
6161
+BSPTree split(SubHyperplane sub)
6262
}
6363

64-
interface "BSPTreeVisitor<S extends Space>" as BSPTreeVisitor_S_ {
64+
interface "BSPTreeVisitor<S extends Space, P extends Point<S>>" as BSPTreeVisitor_S_ {
6565
+Order visitOrder(BSPTree node)
6666
+void visitInternalNode(BSPTree node)
6767
+void visitLeafNode(BSPTree node)
6868
}
6969

70-
interface "Region<S extends Space>" as Region_S_ {
70+
interface "Region<S extends Space, P extends Point<S>>" as Region_S_ {
7171
+boolean isEmpty()
7272
+boolean contains(Region region)
73-
+Location checkPoint(Vector point)
73+
+Location checkPoint(P point)
7474
+double getBoundarySize()
7575
+double getSize()
76-
+Vector getBarycenter()
76+
+P getBarycenter()
7777
+Side side(Hyperplane hyperplane)
7878
+SubHyperplane intersection(SubHyperplane sub)
7979
}

hipparchus-geometry/src/site/design/threeD.puml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
space with (d-1)-dimensional space
3737
end note
3838

39-
interface "Vector<S extends Space>" as Vector_S_ {
39+
interface "Vector<S extends Space, P extends Point<S>>" as Vector_S_ {
4040
+Space getSpace()
4141
+Vector getZero()
4242
+double getNorm()
@@ -54,9 +54,9 @@
5454
Space <-- Vector_S_
5555

5656
package partitioning #DDEBD8 {
57-
interface "Region<S extends Space>" as Region_S_
58-
interface "Hyperplane<S extends Space>" as Hyperplane_S_
59-
interface "SubHyperplane<S extends Space>" as SubHyperplane_S_
57+
interface "Region<S extends Space, P extends Point<S>>" as Region_S_
58+
interface "Hyperplane<S extends Space, P extends Point<S>>" as Hyperplane_S_
59+
interface "SubHyperplane<S extends Space, P extends Point<S>>" as SubHyperplane_S_
6060
}
6161

6262
package euclidean #DDEBD8 {

hipparchus-geometry/src/site/design/twoD.puml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
space with (d-1)-dimensional space
3737
end note
3838

39-
interface "Vector<S extends Space>" as Vector_S_ {
39+
interface "Vector<S extends Space, P extends Point<S>>" as Vector_S_ {
4040
+Space getSpace()
4141
+Vector getZero()
4242
+double getNorm()
@@ -54,9 +54,9 @@
5454
Space <-- Vector_S_
5555

5656
package partitioning #DDEBD8 {
57-
interface "Region<S extends Space>" as Region_S_
58-
interface "Hyperplane<S extends Space>" as Hyperplane_S_
59-
interface "SubHyperplane<S extends Space>" as SubHyperplane_S_
57+
interface "Region<S extends Space, P extends Point<S>>" as Region_S_
58+
interface "Hyperplane<S extends Space, P extends Point<S>>" as Hyperplane_S_
59+
interface "SubHyperplane<S extends Space, P extends Point<S>>" as SubHyperplane_S_
6060
}
6161

6262
package euclidean #DDEBD8 {

src/changes/changes.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ If the output is not quite correct, check for invisible trailing spaces!
5050
</properties>
5151
<body>
5252
<release version="4.0" date="TBD" description="TBD">
53+
<action dev="luc" type="fix" issue="issues/368">
54+
Added point type to geometry classes parameters
55+
</action>
56+
<action dev="luc" type="update" issue="issues/314">
57+
Improved robustness of BSP tree operations
58+
</action>
5359
<action dev="serrof" type="update" issue="issues/361">
5460
Rename DEFAULT_MAXCHECK as DEFAULT_MAX_CHECK.
5561
</action>

0 commit comments

Comments
 (0)