Skip to content

Commit a5385ba

Browse files
Merge branch 'release/0.18.0'
2 parents 889c78a + e2cc940 commit a5385ba

File tree

402 files changed

+14124
-25262
lines changed

Some content is hidden

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

402 files changed

+14124
-25262
lines changed

README.md

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,6 @@
55

66
## Minutiae
77

8-
### Tested Platforms
9-
We test all of our software on OS X 10.11 El Capitan, Windows 7/8/10, and Ubuntu 16.04, 18.04 LTS Desktop and Server.
10-
11-
### Branches
12-
This repository uses the git-flow branching model. You can find more about git-flow [here](https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow).
13-
14-
### Test and documentation coverage
15-
We have put our best effort into documenting and testing the entire library. Test coverage is above 90%.
16-
178
### Licensing
189
This library is under the license Apache 2.0. Consult the license file for more information.
1910

build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ plugins {
55

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

@@ -46,5 +46,5 @@ testDependencies {
4646
api(ihmc.sourceSetProject("frame-shape"))
4747

4848
api("org.ejml:ejml-ddense:0.39")
49-
api("us.ihmc:ihmc-commons-testing:0.30.5")
49+
api("us.ihmc:ihmc-commons-testing:0.31.0")
5050
}

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

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

66
import us.ihmc.euclid.geometry.interfaces.Pose3DReadOnly;
7-
import us.ihmc.euclid.interfaces.GeometryObject;
8-
import us.ihmc.euclid.referenceFrame.exceptions.ReferenceFrameMismatchException;
97
import us.ihmc.euclid.referenceFrame.interfaces.FixedFramePoint3DBasics;
108
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameRotationMatrixBasics;
119
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameShape3DPoseBasics;
1210
import us.ihmc.euclid.referenceFrame.interfaces.FrameShape3DPoseReadOnly;
1311
import us.ihmc.euclid.referenceFrame.interfaces.FrameVector3DReadOnly;
1412
import us.ihmc.euclid.referenceFrame.interfaces.ReferenceFrameHolder;
1513
import us.ihmc.euclid.referenceFrame.tools.EuclidFrameFactories;
16-
import us.ihmc.euclid.referenceFrame.tools.EuclidFrameShapeIOTools;
1714
import us.ihmc.euclid.shape.primitives.interfaces.Shape3DChangeListener;
15+
import us.ihmc.euclid.tools.EuclidCoreIOTools;
1816
import us.ihmc.euclid.tools.EuclidHashCodeTools;
1917
import us.ihmc.euclid.transform.interfaces.RigidBodyTransformReadOnly;
2018

@@ -26,7 +24,7 @@
2624
*
2725
* @author Sylvain Bertrand
2826
*/
29-
public class FixedFrameShape3DPose implements FixedFrameShape3DPoseBasics, GeometryObject<FixedFrameShape3DPose>
27+
public class FixedFrameShape3DPose implements FixedFrameShape3DPoseBasics
3028
{
3129
/** The listeners to be notified when this pose changes. */
3230
private final List<Shape3DChangeListener> changeListeners = new ArrayList<>();
@@ -92,13 +90,6 @@ public FixedFrameShape3DPose(ReferenceFrameHolder referenceFrameHolder, Pose3DRe
9290
set(pose);
9391
}
9492

95-
/** {@inheritDoc} */
96-
@Override
97-
public void set(FixedFrameShape3DPose other)
98-
{
99-
FixedFrameShape3DPoseBasics.super.set(other);
100-
}
101-
10293
/** {@inheritDoc} */
10394
@Override
10495
public ReferenceFrame getReferenceFrame()
@@ -188,43 +179,6 @@ public boolean removeChangeListener(Shape3DChangeListener listener)
188179
return changeListeners.remove(listener);
189180
}
190181

191-
/**
192-
* Tests on a per-component basis if this shape pose is equal to {@code other} with the tolerance
193-
* {@code epsilon}.
194-
* <p>
195-
* If the two poses have different frames, this method returns {@code false}.
196-
* </p>
197-
*
198-
* @param other the query. Not modified.
199-
* @param epsilon the tolerance to use.
200-
* @return {@code true} if the two shape poses are equal and are expressed in the same reference
201-
* frame, {@code false} otherwise.
202-
*/
203-
@Override
204-
public boolean epsilonEquals(FixedFrameShape3DPose other, double epsilon)
205-
{
206-
return FixedFrameShape3DPoseBasics.super.epsilonEquals(other, epsilon);
207-
}
208-
209-
/**
210-
* Compares {@code this} to {@code other} to determine if the two shape poses are geometrically
211-
* similar.
212-
* <p>
213-
* Two poses are geometrically equal if both their position and orientation are geometrically equal.
214-
* </p>
215-
*
216-
* @param other the shape pose to compare to. Not modified.
217-
* @param epsilon the tolerance of the comparison.
218-
* @return {@code true} if the two shape poses represent the same geometry, {@code false} otherwise.
219-
* @throws ReferenceFrameMismatchException if {@code this} and {@code other} are not expressed in
220-
* the same reference frame.
221-
*/
222-
@Override
223-
public boolean geometricallyEquals(FixedFrameShape3DPose other, double epsilon)
224-
{
225-
return FixedFrameShape3DPoseBasics.super.geometricallyEquals(other, epsilon);
226-
}
227-
228182
/**
229183
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
230184
* {@link #equals(FrameShape3DPoseReadOnly)}, it returns {@code false} otherwise.
@@ -268,6 +222,6 @@ public int hashCode()
268222
@Override
269223
public String toString()
270224
{
271-
return EuclidFrameShapeIOTools.getFrameShape3DPoseString(this);
225+
return toString(EuclidCoreIOTools.DEFAULT_FORMAT);
272226
}
273227
}

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

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

66
import us.ihmc.euclid.geometry.interfaces.Pose3DReadOnly;
7-
import us.ihmc.euclid.interfaces.GeometryObject;
87
import us.ihmc.euclid.orientation.interfaces.Orientation3DReadOnly;
98
import us.ihmc.euclid.referenceFrame.exceptions.ReferenceFrameMismatchException;
109
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameShape3DPoseBasics;
@@ -18,10 +17,10 @@
1817
import us.ihmc.euclid.referenceFrame.interfaces.FrameShape3DPoseReadOnly;
1918
import us.ihmc.euclid.referenceFrame.interfaces.FrameVector3DReadOnly;
2019
import us.ihmc.euclid.referenceFrame.tools.EuclidFrameFactories;
21-
import us.ihmc.euclid.referenceFrame.tools.EuclidFrameShapeIOTools;
2220
import us.ihmc.euclid.shape.primitives.interfaces.Box3DReadOnly;
2321
import us.ihmc.euclid.shape.primitives.interfaces.IntermediateVariableSupplier;
2422
import us.ihmc.euclid.shape.primitives.interfaces.Shape3DChangeListener;
23+
import us.ihmc.euclid.tools.EuclidCoreIOTools;
2524
import us.ihmc.euclid.tools.EuclidHashCodeTools;
2625
import us.ihmc.euclid.transform.interfaces.RigidBodyTransformReadOnly;
2726
import us.ihmc.euclid.tuple3D.interfaces.Point3DReadOnly;
@@ -35,7 +34,7 @@
3534
*
3635
* @author Sylvain Bertrand
3736
*/
38-
public class FrameBox3D implements FrameBox3DBasics, GeometryObject<FrameBox3D>
37+
public class FrameBox3D implements FrameBox3DBasics
3938
{
4039
private final List<Shape3DChangeListener> changeListeners = new ArrayList<>();
4140
/** The reference frame in which this shape is expressed. */
@@ -385,13 +384,6 @@ public void setIntermediateVariableSupplier(IntermediateVariableSupplier newSupp
385384
supplier = newSupplier;
386385
}
387386

388-
/** {@inheritDoc} */
389-
@Override
390-
public void set(FrameBox3D other)
391-
{
392-
FrameBox3DBasics.super.set(other);
393-
}
394-
395387
/** {@inheritDoc} */
396388
@Override
397389
public FrameBox3D copy()
@@ -459,38 +451,6 @@ public boolean removeChangeListener(Shape3DChangeListener listener)
459451
return hasBeenRemoved;
460452
}
461453

462-
/**
463-
* Tests on a per component basis if {@code other} and {@code this} are equal to an {@code epsilon}.
464-
* <p>
465-
* If the two faces have different frames, this method returns {@code false}.
466-
* </p>
467-
*
468-
* @param other the other box to compare against this. Not modified.
469-
* @param epsilon tolerance to use when comparing each component.
470-
* @return {@code true} if the two boxes are equal component-wise and are expressed in the same
471-
* reference frame, {@code false} otherwise.
472-
*/
473-
@Override
474-
public boolean epsilonEquals(FrameBox3D other, double epsilon)
475-
{
476-
return FrameBox3DBasics.super.epsilonEquals(other, epsilon);
477-
}
478-
479-
/**
480-
* Compares {@code this} to {@code other} to determine if the two boxes are geometrically similar.
481-
*
482-
* @param other the box to compare to. Not modified.
483-
* @param epsilon the tolerance of the comparison.
484-
* @return {@code true} if the two boxes represent the same geometry, {@code false} otherwise.
485-
* @throws ReferenceFrameMismatchException if {@code this} and {@code other} are not expressed in
486-
* the same reference frame.
487-
*/
488-
@Override
489-
public boolean geometricallyEquals(FrameBox3D other, double epsilon)
490-
{
491-
return FrameBox3DBasics.super.geometricallyEquals(other, epsilon);
492-
}
493-
494454
/**
495455
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
496456
* {@link #equals(FrameBox3DReadOnly)}, it returns {@code false} otherwise.
@@ -534,6 +494,6 @@ public int hashCode()
534494
@Override
535495
public String toString()
536496
{
537-
return EuclidFrameShapeIOTools.getFrameBox3DString(this);
497+
return toString(EuclidCoreIOTools.DEFAULT_FORMAT);
538498
}
539499
}

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
* This implementation registers listener to its owner such that it is always accurately
4040
* representing its owner even being modified after creation of the polytope view.
4141
* </p>
42-
*
42+
*
4343
* @author Sylvain Bertrand
4444
*/
4545
class FrameBoxPolytope3D implements FrameBoxPolytope3DView

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

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

33
import us.ihmc.euclid.Axis3D;
4-
import us.ihmc.euclid.interfaces.GeometryObject;
54
import us.ihmc.euclid.referenceFrame.exceptions.ReferenceFrameMismatchException;
65
import us.ihmc.euclid.referenceFrame.interfaces.FixedFramePoint3DBasics;
76
import us.ihmc.euclid.referenceFrame.interfaces.FixedFrameUnitVector3DBasics;
@@ -10,8 +9,8 @@
109
import us.ihmc.euclid.referenceFrame.interfaces.FramePoint3DReadOnly;
1110
import us.ihmc.euclid.referenceFrame.interfaces.FrameVector3DReadOnly;
1211
import us.ihmc.euclid.referenceFrame.tools.EuclidFrameFactories;
13-
import us.ihmc.euclid.referenceFrame.tools.EuclidFrameShapeIOTools;
1412
import us.ihmc.euclid.shape.primitives.interfaces.Capsule3DReadOnly;
13+
import us.ihmc.euclid.tools.EuclidCoreIOTools;
1514
import us.ihmc.euclid.tools.EuclidHashCodeTools;
1615
import us.ihmc.euclid.tuple3D.interfaces.Point3DReadOnly;
1716
import us.ihmc.euclid.tuple3D.interfaces.Vector3DReadOnly;
@@ -25,7 +24,7 @@
2524
*
2625
* @author Sylvain Bertrand
2726
*/
28-
public class FrameCapsule3D implements FrameCapsule3DBasics, GeometryObject<FrameCapsule3D>
27+
public class FrameCapsule3D implements FrameCapsule3DBasics
2928
{
3029
/** The reference frame in which this shape is expressed. */
3130
private ReferenceFrame referenceFrame;
@@ -137,13 +136,6 @@ public FrameCapsule3D(FrameCapsule3DReadOnly other)
137136
setIncludingFrame(other);
138137
}
139138

140-
/** {@inheritDoc} */
141-
@Override
142-
public void set(FrameCapsule3D other)
143-
{
144-
FrameCapsule3DBasics.super.set(other);
145-
}
146-
147139
/** {@inheritDoc} */
148140
@Override
149141
public void setReferenceFrame(ReferenceFrame referenceFrame)
@@ -233,39 +225,6 @@ public FrameCapsule3D copy()
233225
return new FrameCapsule3D(this);
234226
}
235227

236-
/**
237-
* Tests on a per component basis if {@code other} and {@code this} are equal to an {@code epsilon}.
238-
* <p>
239-
* If the two capsules have different frames, this method returns {@code false}.
240-
* </p>
241-
*
242-
* @param other the other capsule to compare against this. Not modified.
243-
* @param epsilon tolerance to use when comparing each component.
244-
* @return {@code true} if the two capsules are equal component-wise and are expressed in the same
245-
* reference frame, {@code false} otherwise.
246-
*/
247-
@Override
248-
public boolean epsilonEquals(FrameCapsule3D other, double epsilon)
249-
{
250-
return FrameCapsule3DBasics.super.epsilonEquals(other, epsilon);
251-
}
252-
253-
/**
254-
* Compares {@code this} and {@code other} to determine if the two capsules are geometrically
255-
* similar.
256-
*
257-
* @param other the capsule to compare to. Not modified.
258-
* @param epsilon the tolerance of the comparison.
259-
* @return {@code true} if the capsules represent the same geometry, {@code false} otherwise.
260-
* @throws ReferenceFrameMismatchException if {@code this} and {@code other} are not expressed in
261-
* the same reference frame.
262-
*/
263-
@Override
264-
public boolean geometricallyEquals(FrameCapsule3D other, double epsilon)
265-
{
266-
return FrameCapsule3DBasics.super.geometricallyEquals(other, epsilon);
267-
}
268-
269228
/**
270229
* Tests if the given {@code object}'s class is the same as this, in which case the method returns
271230
* {@link #equals(FrameCapsule3DReadOnly)}, it returns {@code false} otherwise.
@@ -312,6 +271,6 @@ public int hashCode()
312271
@Override
313272
public String toString()
314273
{
315-
return EuclidFrameShapeIOTools.getFrameCapsule3DString(this);
274+
return toString(EuclidCoreIOTools.DEFAULT_FORMAT);
316275
}
317276
}

0 commit comments

Comments
 (0)