Skip to content

Commit 08aadc0

Browse files
Merge branch 'release/0.18.1'
2 parents a5385ba + 3504597 commit 08aadc0

File tree

135 files changed

+2505
-377
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

135 files changed

+2505
-377
lines changed

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ plugins {
55

66
ihmc {
77
group = "us.ihmc"
8-
version = "0.18.0"
8+
version = "0.18.1"
99
vcsUrl = "https://github.com/ihmcrobotics/euclid"
1010
openSource = true
1111

src/frame-shape/java/us/ihmc/euclid/referenceFrame/FixedFrameShape3DPose.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
import java.util.List;
55

66
import us.ihmc.euclid.geometry.interfaces.Pose3DReadOnly;
7+
import us.ihmc.euclid.interfaces.Settable;
8+
import us.ihmc.euclid.referenceFrame.interfaces.EuclidFrameGeometry;
79
import us.ihmc.euclid.referenceFrame.interfaces.FixedFramePoint3DBasics;
810
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameRotationMatrixBasics;
911
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameShape3DPoseBasics;
@@ -24,7 +26,7 @@
2426
*
2527
* @author Sylvain Bertrand
2628
*/
27-
public class FixedFrameShape3DPose implements FixedFrameShape3DPoseBasics
29+
public class FixedFrameShape3DPose implements FixedFrameShape3DPoseBasics, Settable<FixedFrameShape3DPose>
2830
{
2931
/** The listeners to be notified when this pose changes. */
3032
private final List<Shape3DChangeListener> changeListeners = new ArrayList<>();
@@ -90,6 +92,13 @@ public FixedFrameShape3DPose(ReferenceFrameHolder referenceFrameHolder, Pose3DRe
9092
set(pose);
9193
}
9294

95+
/** {@inheritDoc} */
96+
@Override
97+
public void set(FixedFrameShape3DPose other)
98+
{
99+
FixedFrameShape3DPoseBasics.super.set(other);
100+
}
101+
93102
/** {@inheritDoc} */
94103
@Override
95104
public ReferenceFrame getReferenceFrame()
@@ -181,7 +190,7 @@ public boolean removeChangeListener(Shape3DChangeListener listener)
181190

182191
/**
183192
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
184-
* {@link #equals(FrameShape3DPoseReadOnly)}, it returns {@code false} otherwise.
193+
* {@link #equals(EuclidFrameGeometry)}, it returns {@code false} otherwise.
185194
* <p>
186195
* If the two poses have different frames, this method returns {@code false}.
187196
* </p>
@@ -194,7 +203,7 @@ public boolean removeChangeListener(Shape3DChangeListener listener)
194203
public boolean equals(Object object)
195204
{
196205
if (object instanceof FrameShape3DPoseReadOnly)
197-
return FixedFrameShape3DPoseBasics.super.equals((FrameShape3DPoseReadOnly) object);
206+
return equals((EuclidFrameGeometry) object);
198207
else
199208
return false;
200209
}

src/frame-shape/java/us/ihmc/euclid/referenceFrame/FrameBox3D.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44
import java.util.List;
55

66
import us.ihmc.euclid.geometry.interfaces.Pose3DReadOnly;
7+
import us.ihmc.euclid.interfaces.Settable;
78
import us.ihmc.euclid.orientation.interfaces.Orientation3DReadOnly;
89
import us.ihmc.euclid.referenceFrame.exceptions.ReferenceFrameMismatchException;
10+
import us.ihmc.euclid.referenceFrame.interfaces.EuclidFrameGeometry;
911
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameShape3DPoseBasics;
1012
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameVector3DBasics;
1113
import us.ihmc.euclid.referenceFrame.interfaces.FrameBox3DBasics;
@@ -34,7 +36,7 @@
3436
*
3537
* @author Sylvain Bertrand
3638
*/
37-
public class FrameBox3D implements FrameBox3DBasics
39+
public class FrameBox3D implements FrameBox3DBasics, Settable<FrameBox3D>
3840
{
3941
private final List<Shape3DChangeListener> changeListeners = new ArrayList<>();
4042
/** The reference frame in which this shape is expressed. */
@@ -384,6 +386,13 @@ public void setIntermediateVariableSupplier(IntermediateVariableSupplier newSupp
384386
supplier = newSupplier;
385387
}
386388

389+
/** {@inheritDoc} */
390+
@Override
391+
public void set(FrameBox3D other)
392+
{
393+
FrameBox3DBasics.super.set(other);
394+
}
395+
387396
/** {@inheritDoc} */
388397
@Override
389398
public FrameBox3D copy()
@@ -453,7 +462,7 @@ public boolean removeChangeListener(Shape3DChangeListener listener)
453462

454463
/**
455464
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
456-
* {@link #equals(FrameBox3DReadOnly)}, it returns {@code false} otherwise.
465+
* {@link #equals(EuclidFrameGeometry)}, it returns {@code false} otherwise.
457466
* <p>
458467
* If the two faces have different frames, this method returns {@code false}.
459468
* </p>
@@ -466,7 +475,7 @@ public boolean removeChangeListener(Shape3DChangeListener listener)
466475
public boolean equals(Object object)
467476
{
468477
if (object instanceof FrameBox3DReadOnly)
469-
return FrameBox3DBasics.super.equals((FrameBox3DReadOnly) object);
478+
return equals((EuclidFrameGeometry) object);
470479
else
471480
return false;
472481
}

src/frame-shape/java/us/ihmc/euclid/referenceFrame/FrameCapsule3D.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package us.ihmc.euclid.referenceFrame;
22

33
import us.ihmc.euclid.Axis3D;
4+
import us.ihmc.euclid.interfaces.Settable;
45
import us.ihmc.euclid.referenceFrame.exceptions.ReferenceFrameMismatchException;
6+
import us.ihmc.euclid.referenceFrame.interfaces.EuclidFrameGeometry;
57
import us.ihmc.euclid.referenceFrame.interfaces.FixedFramePoint3DBasics;
68
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameUnitVector3DBasics;
79
import us.ihmc.euclid.referenceFrame.interfaces.FrameCapsule3DBasics;
@@ -24,7 +26,7 @@
2426
*
2527
* @author Sylvain Bertrand
2628
*/
27-
public class FrameCapsule3D implements FrameCapsule3DBasics
29+
public class FrameCapsule3D implements FrameCapsule3DBasics, Settable<FrameCapsule3D>
2830
{
2931
/** The reference frame in which this shape is expressed. */
3032
private ReferenceFrame referenceFrame;
@@ -136,6 +138,13 @@ public FrameCapsule3D(FrameCapsule3DReadOnly other)
136138
setIncludingFrame(other);
137139
}
138140

141+
/** {@inheritDoc} */
142+
@Override
143+
public void set(FrameCapsule3D other)
144+
{
145+
FrameCapsule3DBasics.super.set(other);
146+
}
147+
139148
/** {@inheritDoc} */
140149
@Override
141150
public void setReferenceFrame(ReferenceFrame referenceFrame)
@@ -227,7 +236,7 @@ public FrameCapsule3D copy()
227236

228237
/**
229238
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
230-
* {@link #equals(FrameCapsule3DReadOnly)}, it returns {@code false} otherwise.
239+
* {@link #equals(EuclidFrameGeometry)}, it returns {@code false} otherwise.
231240
* <p>
232241
* If the two capsules have different frames, this method returns {@code false}.
233242
* </p>
@@ -240,7 +249,7 @@ public FrameCapsule3D copy()
240249
public boolean equals(Object object)
241250
{
242251
if (object instanceof FrameCapsule3DReadOnly)
243-
return FrameCapsule3DBasics.super.equals((FrameCapsule3DReadOnly) object);
252+
return equals((EuclidFrameGeometry) object);
244253
else
245254
return false;
246255
}

src/frame-shape/java/us/ihmc/euclid/referenceFrame/FrameCylinder3D.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package us.ihmc.euclid.referenceFrame;
22

33
import us.ihmc.euclid.Axis3D;
4+
import us.ihmc.euclid.interfaces.Settable;
45
import us.ihmc.euclid.referenceFrame.exceptions.ReferenceFrameMismatchException;
6+
import us.ihmc.euclid.referenceFrame.interfaces.EuclidFrameGeometry;
57
import us.ihmc.euclid.referenceFrame.interfaces.FixedFramePoint3DBasics;
68
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameUnitVector3DBasics;
79
import us.ihmc.euclid.referenceFrame.interfaces.FrameCylinder3DBasics;
@@ -24,7 +26,7 @@
2426
*
2527
* @author Sylvain Bertrand
2628
*/
27-
public class FrameCylinder3D implements FrameCylinder3DBasics
29+
public class FrameCylinder3D implements FrameCylinder3DBasics, Settable<FrameCylinder3D>
2830
{
2931
/** The reference frame in which this shape is expressed. */
3032
private ReferenceFrame referenceFrame;
@@ -136,6 +138,13 @@ public FrameCylinder3D(FrameCylinder3DReadOnly other)
136138
setIncludingFrame(other);
137139
}
138140

141+
/** {@inheritDoc} */
142+
@Override
143+
public void set(FrameCylinder3D other)
144+
{
145+
FrameCylinder3DBasics.super.set(other);
146+
}
147+
139148
/** {@inheritDoc} */
140149
@Override
141150
public void setReferenceFrame(ReferenceFrame referenceFrame)
@@ -227,7 +236,7 @@ public FrameCylinder3D copy()
227236

228237
/**
229238
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
230-
* {@link #equals(FrameCylinder3DReadOnly)}, it returns {@code false} otherwise.
239+
* {@link #equals(EuclidFrameGeometry)}, it returns {@code false} otherwise.
231240
* <p>
232241
* If the two cylinders have different frames, this method returns {@code false}.
233242
* </p>
@@ -240,7 +249,7 @@ public FrameCylinder3D copy()
240249
public boolean equals(Object object)
241250
{
242251
if (object instanceof FrameCylinder3DReadOnly)
243-
return FrameCylinder3DBasics.super.equals((FrameCylinder3DReadOnly) object);
252+
return equals((EuclidFrameGeometry) object);
244253
else
245254
return false;
246255
}

src/frame-shape/java/us/ihmc/euclid/referenceFrame/FrameEllipsoid3D.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package us.ihmc.euclid.referenceFrame;
22

33
import us.ihmc.euclid.geometry.interfaces.Pose3DReadOnly;
4+
import us.ihmc.euclid.interfaces.Settable;
45
import us.ihmc.euclid.orientation.interfaces.Orientation3DReadOnly;
56
import us.ihmc.euclid.referenceFrame.exceptions.ReferenceFrameMismatchException;
7+
import us.ihmc.euclid.referenceFrame.interfaces.EuclidFrameGeometry;
68
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameShape3DPoseBasics;
79
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameVector3DBasics;
810
import us.ihmc.euclid.referenceFrame.interfaces.FrameEllipsoid3DBasics;
@@ -29,7 +31,7 @@
2931
*
3032
* @author Sylvain Bertrand
3133
*/
32-
public class FrameEllipsoid3D implements FrameEllipsoid3DBasics
34+
public class FrameEllipsoid3D implements FrameEllipsoid3DBasics, Settable<FrameEllipsoid3D>
3335
{
3436
/** The reference frame in which this shape is expressed. */
3537
private ReferenceFrame referenceFrame;
@@ -373,6 +375,13 @@ public void setIntermediateVariableSupplier(IntermediateVariableSupplier newSupp
373375
supplier = newSupplier;
374376
}
375377

378+
/** {@inheritDoc} */
379+
@Override
380+
public void set(FrameEllipsoid3D other)
381+
{
382+
FrameEllipsoid3DBasics.super.set(other);
383+
}
384+
376385
/** {@inheritDoc} */
377386
@Override
378387
public FrameEllipsoid3D copy()
@@ -382,7 +391,7 @@ public FrameEllipsoid3D copy()
382391

383392
/**
384393
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
385-
* {@link #equals(FrameEllipsoid3DReadOnly)}, it returns {@code false} otherwise.
394+
* {@link #equals(EuclidFrameGeometry)}, it returns {@code false} otherwise.
386395
* <p>
387396
* If the two ellipsoids have different frames, this method returns {@code false}.
388397
* </p>
@@ -395,7 +404,7 @@ public FrameEllipsoid3D copy()
395404
public boolean equals(Object object)
396405
{
397406
if (object instanceof FrameEllipsoid3DReadOnly)
398-
return FrameEllipsoid3DBasics.super.equals((FrameEllipsoid3DReadOnly) object);
407+
return equals((EuclidFrameGeometry) object);
399408
else
400409
return false;
401410
}

src/frame-shape/java/us/ihmc/euclid/referenceFrame/FramePointShape3D.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package us.ihmc.euclid.referenceFrame;
22

3+
import us.ihmc.euclid.interfaces.Settable;
4+
import us.ihmc.euclid.referenceFrame.interfaces.EuclidFrameGeometry;
35
import us.ihmc.euclid.referenceFrame.interfaces.FramePointShape3DBasics;
46
import us.ihmc.euclid.referenceFrame.interfaces.FramePointShape3DReadOnly;
57
import us.ihmc.euclid.referenceFrame.interfaces.FrameTuple3DReadOnly;
@@ -15,7 +17,7 @@
1517
*
1618
* @author Sylvain Bertrand
1719
*/
18-
public class FramePointShape3D implements FramePointShape3DBasics
20+
public class FramePointShape3D implements FramePointShape3DBasics, Settable<FramePointShape3D>
1921
{
2022
/** The reference frame in which this shape is expressed. */
2123
private ReferenceFrame referenceFrame;
@@ -74,6 +76,13 @@ public FramePointShape3D(FrameTuple3DReadOnly tuple3DReadOnly)
7476
setIncludingFrame(tuple3DReadOnly);
7577
}
7678

79+
/** {@inheritDoc} */
80+
@Override
81+
public void set(FramePointShape3D other)
82+
{
83+
FramePointShape3DBasics.super.set(other);
84+
}
85+
7786
/** {@inheritDoc} */
7887
@Override
7988
public void setReferenceFrame(ReferenceFrame referenceFrame)
@@ -139,7 +148,7 @@ public FramePointShape3D copy()
139148

140149
/**
141150
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
142-
* {@link #equals(FrameTuple3DReadOnly)}, it returns {@code false} otherwise.
151+
* {@link #equals(EuclidFrameGeometry)}, it returns {@code false} otherwise.
143152
* <p>
144153
* If the two point shapes have different frames, this method returns {@code false}.
145154
* </p>
@@ -152,7 +161,7 @@ public FramePointShape3D copy()
152161
public boolean equals(Object object)
153162
{
154163
if (object instanceof FramePointShape3DReadOnly)
155-
return FramePointShape3DBasics.super.equals((FramePointShape3DReadOnly) object);
164+
return equals((EuclidFrameGeometry) object);
156165
else
157166
return false;
158167
}

src/frame-shape/java/us/ihmc/euclid/referenceFrame/FrameRamp3D.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44
import java.util.List;
55

66
import us.ihmc.euclid.geometry.interfaces.Pose3DReadOnly;
7+
import us.ihmc.euclid.interfaces.Settable;
78
import us.ihmc.euclid.orientation.interfaces.Orientation3DReadOnly;
89
import us.ihmc.euclid.referenceFrame.exceptions.ReferenceFrameMismatchException;
10+
import us.ihmc.euclid.referenceFrame.interfaces.EuclidFrameGeometry;
911
import us.ihmc.euclid.referenceFrame.interfaces.FixedFramePoint3DBasics;
1012
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameShape3DPoseBasics;
1113
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameVector3DBasics;
@@ -46,7 +48,7 @@
4648
*
4749
* @author Sylvain Bertrand
4850
*/
49-
public class FrameRamp3D implements FrameRamp3DBasics
51+
public class FrameRamp3D implements FrameRamp3DBasics, Settable<FrameRamp3D>
5052
{
5153
private final List<Shape3DChangeListener> changeListeners = new ArrayList<>();
5254
/** The reference frame in which this shape is expressed. */
@@ -559,6 +561,13 @@ public void setIntermediateVariableSupplier(IntermediateVariableSupplier newSupp
559561
supplier = newSupplier;
560562
}
561563

564+
/** {@inheritDoc} */
565+
@Override
566+
public void set(FrameRamp3D other)
567+
{
568+
FrameRamp3DBasics.super.set(other);
569+
}
570+
562571
/**
563572
* Gets the length of this ramp's slope part.
564573
* <p>
@@ -607,7 +616,7 @@ public FrameRampPolytope3DView asConvexPolytope()
607616

608617
/**
609618
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
610-
* {@link #equals(FrameRamp3DReadOnly)}, it returns {@code false} otherwise.
619+
* {@link #equals(EuclidFrameGeometry)}, it returns {@code false} otherwise.
611620
* <p>
612621
* If the two ramp have different frames, this method returns {@code false}.
613622
* </p>
@@ -620,7 +629,7 @@ public FrameRampPolytope3DView asConvexPolytope()
620629
public boolean equals(Object object)
621630
{
622631
if (object instanceof FrameRamp3DReadOnly)
623-
return FrameRamp3DBasics.super.equals((FrameRamp3DReadOnly) object);
632+
return equals((EuclidFrameGeometry) object);
624633
else
625634
return false;
626635
}
@@ -644,7 +653,6 @@ public int hashCode()
644653
* </pre>
645654
* </p>
646655
*
647-
* @param format the format to use for each number.
648656
* @return the representative {@code String}.
649657
*/
650658
@Override

0 commit comments

Comments
 (0)