[commons-geometry] branch master updated: implementing changes from rc3 feedback
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 5efb17c implementing changes from rc3 feedback 5efb17c is described below commit 5efb17c639ac55cb90e3c99b7fcb99809522e3c6 Author: Matt Juntunen AuthorDate: Mon Aug 16 09:58:47 2021 -0400 implementing changes from rc3 feedback --- .../core/partitioning/bsp/AbstractRegionBSPTree.java | 2 +- .../core/partitioning/bsp/BSPTreeVisitor.java| 4 ++-- .../core/partitioning/bsp/AbstractBSPTreeTest.java | 20 .../geometry/euclidean/internal/EuclideanUtils.java | 11 +++ .../geometry/euclidean/oned/RegionBSPTree1D.java | 2 +- .../commons/geometry/euclidean/oned/Vector1D.java| 2 -- .../euclidean/threed/AbstractConvexPolygon3D.java| 2 +- .../commons/geometry/euclidean/threed/Planes.java| 18 +- .../commons/geometry/euclidean/threed/Vector3D.java | 2 -- .../euclidean/threed/VertexListConvexPolygon3D.java | 6 -- .../euclidean/threed/mesh/SimpleTriangleMesh.java| 6 -- .../threed/rotation/QuaternionRotation.java | 2 +- .../geometry/euclidean/twod/RegionBSPTree2D.java | 4 ++-- .../commons/geometry/euclidean/twod/Vector2D.java| 2 -- .../commons/geometry/io/core/BoundaryIOManager.java | 3 ++- .../geometry/io/core/internal/CharReadBuffer.java| 2 +- .../geometry/io/core/internal/SimpleTextParser.java | 3 +-- .../io/euclidean/threed/SimpleFacetDefinition.java | 7 --- .../threed/obj/AbstractObjPolygonReader.java | 6 +++--- .../geometry/io/euclidean/threed/obj/ObjWriter.java | 6 -- .../io/euclidean/threed/obj/PolygonObjParser.java| 8 +--- .../threed/txt/TextFacetDefinitionWriter.java| 8 +--- .../threed/obj/ObjFacetDefinitionReaderTest.java | 2 +- .../threed/obj/ObjTriangleMeshReaderTest.java| 2 +- .../euclidean/threed/obj/PolygonObjParserTest.java | 2 +- .../commons/geometry/spherical/oned/Point1S.java | 2 -- .../geometry/spherical/twod/GreatCircles.java| 2 +- .../commons/geometry/spherical/twod/Point2S.java | 2 -- pom.xml | 8 .../resources/checkstyle/checkstyle-suppressions.xml | 1 + src/main/resources/checkstyle/checkstyle.xml | 8 src/main/resources/pmd/pmd-ruleset.xml | 4 +++- src/site/xdoc/userguide/index.xml| 4 ++-- 33 files changed, 99 insertions(+), 64 deletions(-) diff --git a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractRegionBSPTree.java b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractRegionBSPTree.java index a39ae2c..93a0800 100644 --- a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractRegionBSPTree.java +++ b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractRegionBSPTree.java @@ -128,7 +128,7 @@ public abstract class AbstractRegionBSPTree< /** {@inheritDoc} */ @Override public double getBoundarySize() { -if (boundarySize < 0.0) { +if (boundarySize < 0) { double sum = 0.0; RegionCutBoundary boundary; diff --git a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/BSPTreeVisitor.java b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/BSPTreeVisitor.java index 7df94e3..d7e46b7 100644 --- a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/BSPTreeVisitor.java +++ b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/BSPTreeVisitor.java @@ -142,7 +142,7 @@ public interface BSPTreeVisitor, N extends BSPTree.Node /** {@inheritDoc} */ @Override public Order visitOrder(final N node) { -if (node.getCutHyperplane().offset(getTarget()) > 0.0) { +if (node.getCutHyperplane().offset(getTarget()) > 0) { return Order.PLUS_NODE_MINUS; } return Order.MINUS_NODE_PLUS; @@ -169,7 +169,7 @@ public interface BSPTreeVisitor, N extends BSPTree.Node /** {@inheritDoc} */ @Override public Order visitOrder(final N node) { -if (node.getCutHyperplane().offset(getTarget()) < 0.0) { +if (node.getCutHyperplane().offset(getTarget()) < 0) { return Order.PLUS_NODE_MINUS; } return Order.MINUS_NODE_PLUS; diff --git a/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractBSPTreeTest.java b/commons-geometry-c
[commons-geometry] branch master updated: updating dist-archive and rat exclusions
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 06e3cc9 updating dist-archive and rat exclusions 06e3cc9 is described below commit 06e3cc979c43a51fb5679e61a85509dcd6c46e15 Author: Matt Juntunen AuthorDate: Sat Aug 14 19:02:35 2021 -0400 updating dist-archive and rat exclusions --- dist-archive/src/assembly/src.xml | 2 ++ pom.xml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/dist-archive/src/assembly/src.xml b/dist-archive/src/assembly/src.xml index 166dc25..1ec5332 100644 --- a/dist-archive/src/assembly/src.xml +++ b/dist-archive/src/assembly/src.xml @@ -31,8 +31,10 @@ limitations under the License. **/.settings/** **/.project/** **/.classpath +**/.travis.yml/** **/.checkstyle **/site-content/** +**/site-content.README **/target/** diff --git a/pom.xml b/pom.xml index 5c27a4e..1347e77 100644 --- a/pom.xml +++ b/pom.xml @@ -329,6 +329,7 @@ some default development tools files (see RAT-126) --> .ekstazi/** **/site-content/** +**/site-content.README **/.classpath **/.project **/.settings/** @@ -372,6 +373,7 @@ some default development tools files (see RAT-126) --> .ekstazi/** **/site-content/** +**/site-content.README **/.classpath **/.project **/.settings/**
[commons-geometry] branch master updated: fixing assembly exclude expression
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 7214601 fixing assembly exclude expression 7214601 is described below commit 721460118e2c822fcb5067582a382fb9accc3669 Author: Matt Juntunen AuthorDate: Sat Aug 14 19:12:03 2021 -0400 fixing assembly exclude expression --- dist-archive/src/assembly/src.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist-archive/src/assembly/src.xml b/dist-archive/src/assembly/src.xml index 1ec5332..27d5d69 100644 --- a/dist-archive/src/assembly/src.xml +++ b/dist-archive/src/assembly/src.xml @@ -31,7 +31,7 @@ limitations under the License. **/.settings/** **/.project/** **/.classpath -**/.travis.yml/** +**/.travis.yml **/.checkstyle **/site-content/** **/site-content.README
svn commit: r49500 - in /dev/commons/geometry: 1.0-RC1/ 1.0-RC2/ 1.0-RC2/binaries/ 1.0-RC2/source/
Author: mattjuntunen Date: Sat Aug 14 18:48:05 2021 New Revision: 49500 Log: Distribution files for Commons Geometry v1.0 (RC2) Added: dev/commons/geometry/1.0-RC2/ dev/commons/geometry/1.0-RC2/CONTRIBUTING.md dev/commons/geometry/1.0-RC2/HEADER.html dev/commons/geometry/1.0-RC2/README.html dev/commons/geometry/1.0-RC2/RELEASE-NOTES.txt dev/commons/geometry/1.0-RC2/binaries/ dev/commons/geometry/1.0-RC2/binaries/HEADER.html dev/commons/geometry/1.0-RC2/binaries/README.html dev/commons/geometry/1.0-RC2/binaries/commons-geometry-1.0-bin.tar.gz (with props) dev/commons/geometry/1.0-RC2/binaries/commons-geometry-1.0-bin.tar.gz.asc dev/commons/geometry/1.0-RC2/binaries/commons-geometry-1.0-bin.tar.gz.sha512 dev/commons/geometry/1.0-RC2/binaries/commons-geometry-1.0-bin.zip (with props) dev/commons/geometry/1.0-RC2/binaries/commons-geometry-1.0-bin.zip.asc dev/commons/geometry/1.0-RC2/binaries/commons-geometry-1.0-bin.zip.sha512 dev/commons/geometry/1.0-RC2/source/ dev/commons/geometry/1.0-RC2/source/HEADER.html dev/commons/geometry/1.0-RC2/source/README.html dev/commons/geometry/1.0-RC2/source/commons-geometry-1.0-src.tar.gz (with props) dev/commons/geometry/1.0-RC2/source/commons-geometry-1.0-src.tar.gz.asc dev/commons/geometry/1.0-RC2/source/commons-geometry-1.0-src.tar.gz.sha512 dev/commons/geometry/1.0-RC2/source/commons-geometry-1.0-src.zip (with props) dev/commons/geometry/1.0-RC2/source/commons-geometry-1.0-src.zip.asc dev/commons/geometry/1.0-RC2/source/commons-geometry-1.0-src.zip.sha512 Removed: dev/commons/geometry/1.0-RC1/ Added: dev/commons/geometry/1.0-RC2/CONTRIBUTING.md == --- dev/commons/geometry/1.0-RC2/CONTRIBUTING.md (added) +++ dev/commons/geometry/1.0-RC2/CONTRIBUTING.md Sat Aug 14 18:48:05 2021 @@ -0,0 +1,115 @@ + + +Contributing to Apache Commons Geometry +== + +You have found a bug or you have an idea for a cool new feature? Contributing code is a great way to give something back to +the open source community. Before you dig right into the code there are a few guidelines that we need contributors to +follow so that we can have a chance of keeping on top of things. + +Getting Started +--- + ++ Make sure you have a [JIRA account](https://issues.apache.org/jira/). ++ Make sure you have a [GitHub account](https://github.com/signup/free). ++ If you're planning to implement a new feature it makes sense to discuss your changes on the [dev list](https://commons.apache.org/mail-lists.html) first. This way you can make sure you're not wasting your time on something that isn't considered to be in Apache Commons Geometry's scope. ++ Submit a [Jira Ticket][jira] for your issue, assuming one does not already exist. + + Clearly describe the issue including steps to reproduce when it is a bug. + + Make sure you fill in the earliest version that you know has the issue. ++ Find the corresponding [repository on GitHub](https://github.com/apache/?query=commons-), +[fork](https://help.github.com/articles/fork-a-repo/) and check out your forked repository. + +Making Changes +-- + ++ Create a _topic branch_ for your isolated work. + * Usually you should base your branch on the `master` or `trunk` branch. + * A good topic branch name can be the JIRA bug id plus a keyword, e.g. `GEOMETRY-123-InputStream`. + * If you have submitted multiple JIRA issues, try to maintain separate branches and pull requests. ++ Make commits of logical units. + * Make sure your commit messages are meaningful and in the proper format. Your commit message should contain the key of the JIRA issue. + * e.g. `GEOMETRY-123: Close input stream earlier` ++ Respect the original code style: + + Only use spaces for indentation. + + Create minimal diffs - disable _On Save_ actions like _Reformat Source Code_ or _Organize Imports_. If you feel the source code should be reformatted create a separate PR for this change first. + + Check for unnecessary whitespace with `git diff` -- check before committing. ++ Make sure you have added the necessary tests for your changes, typically in `src/test/java`. ++ Run all the tests with `mvn clean verify` to assure nothing else was accidentally broken. + +Making Trivial Changes +-- + +The JIRA tickets are used to generate the changelog for the next release. + +For changes of a trivial nature to comments and documentation, it is not always necessary to create a new ticket in JIRA. +In this case, it is appropriate to start the first line of a commit with '(doc)' instead of a ticket number. + + +Submitting Changes +-- + ++ Sign and submit the Apache [Contributor License Agreement][cla] if you haven't already. + * Note that small patches & typical bug fixes do not require a CLA as +clause 5 of the [Apache Lic
[commons-geometry] annotated tag commons-geometry-1.0-rc3 created (now 4ef89ca)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to annotated tag commons-geometry-1.0-rc3 in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. at 4ef89ca (tag) tagging aad4aa0b860097b05ce5bb193f47d42f93083ff5 (commit) replaces commons-geometry-1.0-rc2 by Matt Juntunen on Sat Aug 14 19:13:53 2021 -0400 - Log - commons-geometry-1.0-rc3 -BEGIN PGP SIGNATURE- iQHMBAABCgA2FiEEfdU67+3xw9OStR6+NG9Pzs+3CxoFAmEYTjEYHG1hdHRqdW50 dW5lbkBhcGFjaGUub3JnAAoJEDRvT87Ptwsap/kL/2zSTHw97ydOuOLcbstZzS/6 ZOfACBE787HO3nSwF0dWhlUM/J+wyW/W7bZCTRifyRioPlpF5VwJ3YsnaDLebxb/ ZBZPVfeZ5D1dotcDRluyaLDC/1gmZ9MJRMUEM3GZuOxa+BNBLdylmQF1CoKz3IkX i21pORR8clj6nqnYHqXw8TmfcKFSd6HyS3B3gWX6bt6+0KqFK3Om36LR/eR+79Hh 0FAxJp/sOzrnmf80tTxV/t4MuMY3NHxNoDz1JYmZdhzKqkB4/tkxvsz0h22OmZZH APWKSFyUjwC+2Afx8kMOSOroikP0SyZ+Wzfzrv5GCqCU9m990s9Wc4ZLXg7TiCYC k+BwnVXakSzcG6iaExX3hIPXki4WEFlk+ynRuiIzAu/Hl3fYQzFCoHnJkAim7BVj 0KhwEX/VRp0LxLcYp70D/3hzxZyxJuqEdfKv4rBSXGyPvJ/GpKcuzgGDQdfd0Yas gP+DJ5xDQUXWmZ9QYzYe866dxiRRIpIyD7HxJvveuA== =QEI3 -END PGP SIGNATURE- --- No new revisions were added by this update.
[commons-geometry] branch 1.0-release updated (88f1de8 -> aad4aa0)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. from 88f1de8 preparing 1.0-rc2 add 06e3cc9 updating dist-archive and rat exclusions new 4365918 Merge branch 'master' into 1.0-release add 7214601 fixing assembly exclude expression new 333882e Merge branch 'master' into 1.0-release new aad4aa0 preparing 1.0-rc3 The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: dist-archive/src/assembly/src.xml | 2 ++ pom.xml | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-)
[commons-geometry] 03/03: preparing 1.0-rc3
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit aad4aa0b860097b05ce5bb193f47d42f93083ff5 Author: Matt Juntunen AuthorDate: Sat Aug 14 19:13:23 2021 -0400 preparing 1.0-rc3 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2345531..07d71bf 100644 --- a/pom.xml +++ b/pom.xml @@ -44,7 +44,7 @@ 1.0 (requires Java 8+) -RC2 +RC3 -bin GEOMETRY
[commons-geometry] 01/03: Merge branch 'master' into 1.0-release
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 436591893ae210f44bbc8a9f7d0ed19eea37765c Merge: 88f1de8 06e3cc9 Author: Matt Juntunen AuthorDate: Sat Aug 14 19:03:18 2021 -0400 Merge branch 'master' into 1.0-release dist-archive/src/assembly/src.xml | 2 ++ pom.xml | 2 ++ 2 files changed, 4 insertions(+)
[commons-geometry] 02/03: Merge branch 'master' into 1.0-release
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 333882e6c135644a52e52694576ec8c23ca8e83f Merge: 4365918 7214601 Author: Matt Juntunen AuthorDate: Sat Aug 14 19:12:25 2021 -0400 Merge branch 'master' into 1.0-release dist-archive/src/assembly/src.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
svn commit: r49526 - in /dev/commons/geometry: 1.0-RC3/ 1.0-RC4/ 1.0-RC4/binaries/ 1.0-RC4/source/
Author: mattjuntunen Date: Tue Aug 17 02:12:25 2021 New Revision: 49526 Log: Distribution files for Commons Geometry v1.0 (RC4) Added: dev/commons/geometry/1.0-RC4/ dev/commons/geometry/1.0-RC4/CONTRIBUTING.md dev/commons/geometry/1.0-RC4/HEADER.html dev/commons/geometry/1.0-RC4/README.html dev/commons/geometry/1.0-RC4/RELEASE-NOTES.txt dev/commons/geometry/1.0-RC4/binaries/ dev/commons/geometry/1.0-RC4/binaries/HEADER.html dev/commons/geometry/1.0-RC4/binaries/README.html dev/commons/geometry/1.0-RC4/binaries/commons-geometry-1.0-bin.tar.gz (with props) dev/commons/geometry/1.0-RC4/binaries/commons-geometry-1.0-bin.tar.gz.asc dev/commons/geometry/1.0-RC4/binaries/commons-geometry-1.0-bin.tar.gz.sha512 dev/commons/geometry/1.0-RC4/binaries/commons-geometry-1.0-bin.zip (with props) dev/commons/geometry/1.0-RC4/binaries/commons-geometry-1.0-bin.zip.asc dev/commons/geometry/1.0-RC4/binaries/commons-geometry-1.0-bin.zip.sha512 dev/commons/geometry/1.0-RC4/source/ dev/commons/geometry/1.0-RC4/source/HEADER.html dev/commons/geometry/1.0-RC4/source/README.html dev/commons/geometry/1.0-RC4/source/commons-geometry-1.0-src.tar.gz (with props) dev/commons/geometry/1.0-RC4/source/commons-geometry-1.0-src.tar.gz.asc dev/commons/geometry/1.0-RC4/source/commons-geometry-1.0-src.tar.gz.sha512 dev/commons/geometry/1.0-RC4/source/commons-geometry-1.0-src.zip (with props) dev/commons/geometry/1.0-RC4/source/commons-geometry-1.0-src.zip.asc dev/commons/geometry/1.0-RC4/source/commons-geometry-1.0-src.zip.sha512 Removed: dev/commons/geometry/1.0-RC3/ Added: dev/commons/geometry/1.0-RC4/CONTRIBUTING.md == --- dev/commons/geometry/1.0-RC4/CONTRIBUTING.md (added) +++ dev/commons/geometry/1.0-RC4/CONTRIBUTING.md Tue Aug 17 02:12:25 2021 @@ -0,0 +1,115 @@ + + +Contributing to Apache Commons Geometry +== + +You have found a bug or you have an idea for a cool new feature? Contributing code is a great way to give something back to +the open source community. Before you dig right into the code there are a few guidelines that we need contributors to +follow so that we can have a chance of keeping on top of things. + +Getting Started +--- + ++ Make sure you have a [JIRA account](https://issues.apache.org/jira/). ++ Make sure you have a [GitHub account](https://github.com/signup/free). ++ If you're planning to implement a new feature it makes sense to discuss your changes on the [dev list](https://commons.apache.org/mail-lists.html) first. This way you can make sure you're not wasting your time on something that isn't considered to be in Apache Commons Geometry's scope. ++ Submit a [Jira Ticket][jira] for your issue, assuming one does not already exist. + + Clearly describe the issue including steps to reproduce when it is a bug. + + Make sure you fill in the earliest version that you know has the issue. ++ Find the corresponding [repository on GitHub](https://github.com/apache/?query=commons-), +[fork](https://help.github.com/articles/fork-a-repo/) and check out your forked repository. + +Making Changes +-- + ++ Create a _topic branch_ for your isolated work. + * Usually you should base your branch on the `master` or `trunk` branch. + * A good topic branch name can be the JIRA bug id plus a keyword, e.g. `GEOMETRY-123-InputStream`. + * If you have submitted multiple JIRA issues, try to maintain separate branches and pull requests. ++ Make commits of logical units. + * Make sure your commit messages are meaningful and in the proper format. Your commit message should contain the key of the JIRA issue. + * e.g. `GEOMETRY-123: Close input stream earlier` ++ Respect the original code style: + + Only use spaces for indentation. + + Create minimal diffs - disable _On Save_ actions like _Reformat Source Code_ or _Organize Imports_. If you feel the source code should be reformatted create a separate PR for this change first. + + Check for unnecessary whitespace with `git diff` -- check before committing. ++ Make sure you have added the necessary tests for your changes, typically in `src/test/java`. ++ Run all the tests with `mvn clean verify` to assure nothing else was accidentally broken. + +Making Trivial Changes +-- + +The JIRA tickets are used to generate the changelog for the next release. + +For changes of a trivial nature to comments and documentation, it is not always necessary to create a new ticket in JIRA. +In this case, it is appropriate to start the first line of a commit with '(doc)' instead of a ticket number. + + +Submitting Changes +-- + ++ Sign and submit the Apache [Contributor License Agreement][cla] if you haven't already. + * Note that small patches & typical bug fixes do not require a CLA as +clause 5 of the [Apache Lic
svn commit: r1892482 - /commons/cms-site/trunk/conf/component_releases.properties
Author: mattjuntunen Date: Sat Aug 21 02:16:39 2021 New Revision: 1892482 URL: http://svn.apache.org/viewvc?rev=1892482=rev Log: Commons Geometry v1.0 was released (from RC4) Modified: commons/cms-site/trunk/conf/component_releases.properties Modified: commons/cms-site/trunk/conf/component_releases.properties URL: http://svn.apache.org/viewvc/commons/cms-site/trunk/conf/component_releases.properties?rev=1892482=1892481=1892482=diff == --- commons/cms-site/trunk/conf/component_releases.properties (original) +++ commons/cms-site/trunk/conf/component_releases.properties Sat Aug 21 02:16:39 2021 @@ -36,8 +36,8 @@ fileuploadVersion=1.4 fileuploadReleased=2019-01-16 functorVersion=1.0 functorReleased=2011-??-?? -geometryVersion=1.0-beta1 -geometryReleased=2020-07-19 +geometryVersion=1.0 +geometryReleased=2021-08-21 imagingVersion=1.0-alpha2 imagingReleased=2020-08-01 ioVersion=2.11.0
[commons-geometry] branch 1.0-release updated: adding missing 1.0-beta1 archive javadoc links
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/1.0-release by this push: new 4f8c39b adding missing 1.0-beta1 archive javadoc links 4f8c39b is described below commit 4f8c39bd1c55643a68961c832c804a3b7fd42063 Author: Matt Juntunen AuthorDate: Sat Aug 21 00:11:31 2021 -0400 adding missing 1.0-beta1 archive javadoc links --- commons-geometry-core/src/site/site.xml | 2 ++ commons-geometry-euclidean/src/site/site.xml | 2 ++ commons-geometry-spherical/src/site/site.xml | 2 ++ 3 files changed, 6 insertions(+) diff --git a/commons-geometry-core/src/site/site.xml b/commons-geometry-core/src/site/site.xml index 7adbb0a..c8f03c0 100644 --- a/commons-geometry-core/src/site/site.xml +++ b/commons-geometry-core/src/site/site.xml @@ -30,6 +30,8 @@ href="apidocs/index.html"/> https://commons.apache.org/geometry/commons-geometry-core/javadocs/api-1.0/index.html"/> + https://commons.apache.org/geometry/commons-geometry-core/javadocs/api-1.0-beta1/index.html"/> diff --git a/commons-geometry-euclidean/src/site/site.xml b/commons-geometry-euclidean/src/site/site.xml index 9bac4dd..9ecd73a 100644 --- a/commons-geometry-euclidean/src/site/site.xml +++ b/commons-geometry-euclidean/src/site/site.xml @@ -30,6 +30,8 @@ href="apidocs/index.html"/> https://commons.apache.org/geometry/commons-geometry-euclidean/javadocs/api-1.0/index.html"/> + https://commons.apache.org/geometry/commons-geometry-euclidean/javadocs/api-1.0-beta1/index.html"/> diff --git a/commons-geometry-spherical/src/site/site.xml b/commons-geometry-spherical/src/site/site.xml index 9f8b54f..661ad4b 100644 --- a/commons-geometry-spherical/src/site/site.xml +++ b/commons-geometry-spherical/src/site/site.xml @@ -30,6 +30,8 @@ href="apidocs/index.html"/> https://commons.apache.org/geometry/commons-geometry-spherical/javadocs/api-1.0/index.html"/> + https://commons.apache.org/geometry/commons-geometry-spherical/javadocs/api-1.0-beta1/index.html"/>
[commons-geometry] 08/13: adding missing 1.0-beta1 archive javadoc links
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 9805bcd7a74f85391199b0db3e72fa9beb41f66d Author: Matt Juntunen AuthorDate: Sat Aug 21 00:11:31 2021 -0400 adding missing 1.0-beta1 archive javadoc links --- commons-geometry-core/src/site/site.xml | 6 -- commons-geometry-euclidean/src/site/site.xml | 6 -- commons-geometry-spherical/src/site/site.xml | 6 -- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/commons-geometry-core/src/site/site.xml b/commons-geometry-core/src/site/site.xml index d9d4ce5..c8f03c0 100644 --- a/commons-geometry-core/src/site/site.xml +++ b/commons-geometry-core/src/site/site.xml @@ -28,8 +28,10 @@ - + https://commons.apache.org/geometry/commons-geometry-core/javadocs/api-1.0/index.html"/> + https://commons.apache.org/geometry/commons-geometry-core/javadocs/api-1.0-beta1/index.html"/> diff --git a/commons-geometry-euclidean/src/site/site.xml b/commons-geometry-euclidean/src/site/site.xml index 8915e07..9ecd73a 100644 --- a/commons-geometry-euclidean/src/site/site.xml +++ b/commons-geometry-euclidean/src/site/site.xml @@ -28,8 +28,10 @@ - + https://commons.apache.org/geometry/commons-geometry-euclidean/javadocs/api-1.0/index.html"/> + https://commons.apache.org/geometry/commons-geometry-euclidean/javadocs/api-1.0-beta1/index.html"/> diff --git a/commons-geometry-spherical/src/site/site.xml b/commons-geometry-spherical/src/site/site.xml index 523c589..661ad4b 100644 --- a/commons-geometry-spherical/src/site/site.xml +++ b/commons-geometry-spherical/src/site/site.xml @@ -28,8 +28,10 @@ - + https://commons.apache.org/geometry/commons-geometry-spherical/javadocs/api-1.0/index.html"/> + https://commons.apache.org/geometry/commons-geometry-spherical/javadocs/api-1.0-beta1/index.html"/>
svn commit: r49584 - in /release/commons/geometry: ./ binaries/ source/
Author: mattjuntunen Date: Sat Aug 21 01:41:26 2021 New Revision: 49584 Log: Release Commons Geometry v1.0 (from RC4) Added: release/commons/geometry/binaries/commons-geometry-1.0-bin.tar.gz (with props) release/commons/geometry/binaries/commons-geometry-1.0-bin.tar.gz.asc release/commons/geometry/binaries/commons-geometry-1.0-bin.tar.gz.sha512 release/commons/geometry/binaries/commons-geometry-1.0-bin.zip (with props) release/commons/geometry/binaries/commons-geometry-1.0-bin.zip.asc release/commons/geometry/binaries/commons-geometry-1.0-bin.zip.sha512 release/commons/geometry/source/commons-geometry-1.0-src.tar.gz (with props) release/commons/geometry/source/commons-geometry-1.0-src.tar.gz.asc release/commons/geometry/source/commons-geometry-1.0-src.tar.gz.sha512 release/commons/geometry/source/commons-geometry-1.0-src.zip (with props) release/commons/geometry/source/commons-geometry-1.0-src.zip.asc release/commons/geometry/source/commons-geometry-1.0-src.zip.sha512 Removed: release/commons/geometry/binaries/commons-geometry-1.0-beta1-bin.tar.gz release/commons/geometry/binaries/commons-geometry-1.0-beta1-bin.tar.gz.asc release/commons/geometry/binaries/commons-geometry-1.0-beta1-bin.tar.gz.sha512 release/commons/geometry/binaries/commons-geometry-1.0-beta1-bin.zip release/commons/geometry/binaries/commons-geometry-1.0-beta1-bin.zip.asc release/commons/geometry/binaries/commons-geometry-1.0-beta1-bin.zip.sha512 release/commons/geometry/source/commons-geometry-1.0-beta1-src.tar.gz release/commons/geometry/source/commons-geometry-1.0-beta1-src.tar.gz.asc release/commons/geometry/source/commons-geometry-1.0-beta1-src.tar.gz.sha512 release/commons/geometry/source/commons-geometry-1.0-beta1-src.zip release/commons/geometry/source/commons-geometry-1.0-beta1-src.zip.asc release/commons/geometry/source/commons-geometry-1.0-beta1-src.zip.sha512 Modified: release/commons/geometry/README.html release/commons/geometry/RELEASE-NOTES.txt release/commons/geometry/binaries/README.html release/commons/geometry/source/README.html Modified: release/commons/geometry/README.html == --- release/commons/geometry/README.html (original) +++ release/commons/geometry/README.html Sat Aug 21 01:41:26 2021 @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. --> -Commons-Geometry v1.0-beta1 +Commons-Geometry v1.0 -This is the 1.0-beta1 version of commons-geometry. It is available in both binary and source distributions. +This is the 1.0 version of commons-geometry. It is available in both binary and source distributions. Note: @@ -55,12 +55,12 @@ Always test available signatures, e.g., $ pgpk -a KEYS -$ pgpv commons-geometry-1.0-beta1-bin.tar.gz.asc +$ pgpv commons-geometry-1.0-bin.tar.gz.asc or, $ pgp -ka KEYS -$ pgp commons-geometry-1.0-beta1-bin.tar.gz.asc +$ pgp commons-geometry-1.0-bin.tar.gz.asc or, $ gpg --import KEYS -$ gpg --verify commons-geometry-1.0-beta1-bin.tar.gz.asc +$ gpg --verify commons-geometry-1.0-bin.tar.gz.asc \ No newline at end of file Modified: release/commons/geometry/RELEASE-NOTES.txt == --- release/commons/geometry/RELEASE-NOTES.txt (original) +++ release/commons/geometry/RELEASE-NOTES.txt Sat Aug 21 01:41:26 2021 @@ -1,4 +1,58 @@ + Apache Commons Geometry 1.0 RELEASE NOTES + +The Apache Commons Geometry team is pleased to announce the release of +commons-geometry-parent-1.0 + +The Apache Commons Geometry project provides geometric types and utilities. + +This is the first major release of Apache Commons Geometry. +Apache Commons Geometry 1.0 contains the following library modules: + commons-geometry-core (requires Java 8+) + commons-geometry-euclidean (requires Java 8+) + commons-geometry-spherical (requires Java 8+) + commons-geometry-io-core (requires Java 8+) + commons-geometry-io-euclidean (requires Java 8+) + +Changes in this version include: + +New features: +o GEOMETRY-118: Add coordinate-specific transform methods to AffineTransformMatrixXD classes, +e.g. "applyX", "applyY", "applyZ". +o GEOMETRY-95: Add solid geometry tutorial. +o GEOMETRY-120: Add SimpleTriangleMeshBuilder.addFace(int[]) method as alternative to +addFace(int, int, int). +o GEOMETRY-117: Add shear methods to AffineTransformMatrix2D. Thanks to Christoph Läubrich. +o GEOMETRY-119: Add VectorXD.normalizeOrNull() methods so that callers can detect normalization +failures without needing to catch an exception. +o GEOMETRY-115: Add modules for IO functionality: commons-geometry-io-core, +commons-geometry-io-euclidean. +o GEOMETRY-108: Add BoundaryList interface and implemen
[commons-geometry] annotated tag rel/commons-geometry-1.0 created (now 91ae74d)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to annotated tag rel/commons-geometry-1.0 in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. at 91ae74d (tag) tagging 5326851864f93a486409562628afaaa485b6d99f (commit) replaces commons-geometry-1.0-rc3 by Matt Juntunen on Fri Aug 20 22:25:49 2021 -0400 - Log - RC4 becomes v1.0 official release -BEGIN PGP SIGNATURE- iQHMBAABCgA2FiEEfdU67+3xw9OStR6+NG9Pzs+3CxoFAmEgZC0YHG1hdHRqdW50 dW5lbkBhcGFjaGUub3JnAAoJEDRvT87PtwsaojYMAKm0N5atsQruH0HWau6l4KcQ o/q7ST/h1j6jnHClfezQAoSNp9AMNMx5r3YDz1LJCgTgQj7v/yCJleArvAfiOUW7 O65p/U6sOYP8WrEXLET4vgjejXoiriP78E0DOJi2AAbEtS6R7MlzvHvvIQ9Jbqvw ciiEH8cOulM5/3sbveoF24gnmBk7SwBcxkkY2KCcOwerw5JT/DZPN1NcXMaMtlnE fn3jGJFXYKePfGjVnwVhjGX3qfPrGstlmHnDP9rXTSf3fQe2nuj2k5TeLKEJx4mk BxsMlu6aabd0lncFq/ztGlRiAQGqlfKzyORNZ83ow8xLETwfFkraD/OpoOJkf+mo Je2SPOaTSJM8He4KCep1wpbzNaSWKIhpc7519xwADR0N0jeWOkrUltLI11dIWxGB n9BzqPfs72WGA/sKrqbpaLZgPW8iE+LScqhxw/sUhTEAukB8UXTmCyqncGmUV6N6 SwIJyqhbN1GHOPYQo9ogFtdtfIKe3iY2Q4BcH/UJOQ== =BbGK -END PGP SIGNATURE- --- No new revisions were added by this update.
[commons-geometry] 04/13: preparing 1.0-rc3
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 3a5e75aa2cebfcb8b6473a8c9d85c8d313b8442e Author: Matt Juntunen AuthorDate: Sat Aug 14 19:13:23 2021 -0400 preparing 1.0-rc3 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 16a2278..bac325d 100644 --- a/pom.xml +++ b/pom.xml @@ -44,7 +44,7 @@ 1.0 (requires Java 8+) -RC2 +RC3 -bin GEOMETRY
[commons-geometry] branch master updated (5efb17c -> 9c019ed)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. from 5efb17c implementing changes from rc3 feedback new fb11314 update README versions new 4ec805a preparing RC1 new 95fc9c9 merging release branch changes new 3a5e75a preparing 1.0-rc3 new f0c2329 preparing 1.0-rc4 new 8b2e424 preparing for 1.1-SNAPSHOT development new fbad9ce enabling japicmp new 9805bcd adding missing 1.0-beta1 archive javadoc links new 6923331 adding 1.1 release entry to changes.xml new 5944830 adding release and development documentation new cafbead removing docs from binary distribution new 964bd61 removing unused assembly files new 9c019ed removing .txt extension from LICENSE and NOTICE files The 13 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: commons-geometry-spherical/LICENSE.txt => LICENSE | 0 commons-geometry-spherical/NOTICE.txt => NOTICE| 0 README.md | 4 +- RELEASE-NOTES.txt | 56 +- .../LICENSE.txt => commons-geometry-core/LICENSE | 0 .../NOTICE.txt => commons-geometry-core/NOTICE | 0 commons-geometry-core/README.md| 4 +- commons-geometry-core/pom.xml | 2 +- .../resources/{profile.jacoco => profile.japicmp} | 2 +- commons-geometry-core/src/site/site.xml| 6 +- .../LICENSE| 0 .../NOTICE | 0 commons-geometry-enclosing/README.md | 4 +- commons-geometry-enclosing/pom.xml | 2 +- .../LICENSE| 0 .../NOTICE | 0 commons-geometry-euclidean/README.md | 4 +- commons-geometry-euclidean/pom.xml | 2 +- .../src/site/resources/profile.japicmp | 2 +- commons-geometry-euclidean/src/site/site.xml | 6 +- .../{examples-tutorials/LICENSE.txt => LICENSE}| 0 .../{examples-tutorials/NOTICE.txt => NOTICE} | 0 commons-geometry-examples/README.md| 12 +- .../examples-jmh/{LICENSE.txt => LICENSE} | 0 .../examples-jmh/{NOTICE.txt => NOTICE}| 0 commons-geometry-examples/examples-jmh/README.md | 12 +- commons-geometry-examples/examples-jmh/pom.xml | 2 +- .../{LICENSE.txt => examples-tutorials/LICENSE}| 0 .../{NOTICE.txt => examples-tutorials/NOTICE} | 0 .../examples-tutorials/README.md | 12 +- .../examples-tutorials/pom.xml | 2 +- commons-geometry-examples/pom.xml | 2 +- .../LICENSE.txt => commons-geometry-hull/LICENSE | 0 .../NOTICE.txt => commons-geometry-hull/NOTICE | 0 commons-geometry-hull/README.md| 4 +- commons-geometry-hull/pom.xml | 2 +- .../LICENSE| 0 .../NOTICE.txt => commons-geometry-io-core/NOTICE | 0 commons-geometry-io-core/README.md | 2 +- commons-geometry-io-core/pom.xml | 2 +- .../src/site/resources/profile.jacoco | 0 .../src/site/resources/profile.japicmp | 2 +- .../LICENSE| 0 .../NOTICE | 0 commons-geometry-io-euclidean/README.md| 2 +- commons-geometry-io-euclidean/pom.xml | 2 +- .../src/site/resources/profile.jacoco | 0 .../src/site/resources/profile.japicmp | 2 +- LICENSE.txt => commons-geometry-spherical/LICENSE | 0 NOTICE.txt => commons-geometry-spherical/NOTICE| 0 commons-geometry-spherical/README.md | 4 +- commons-geometry-spherical/pom.xml | 2 +- .../src/site/resources/profile.japicmp | 2 +- commons-geometry-spherical/src/site/site.xml | 6 +- dist-archive/pom.xml | 2 +- dist-archive/src/assembly/bin.xml | 17 +- .../development/development.howto.txt | 19 +- doc/release/copyLongTermJavadoc.sh | 56 ++ doc/release/release-howto.txt | 880 + doc/release/settings-security.xml | 22 + doc/release/settings.xml | 63 ++ pom.xml| 15 +- src/assembly/bin.xml
[commons-geometry] 01/13: update README versions
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit fb11314a98dfa4df2f6d9dfdff6efe06589d9d01 Author: Matt Juntunen AuthorDate: Mon Aug 16 21:18:58 2021 -0400 update README versions --- README.md | 2 +- commons-geometry-core/README.md| 2 +- commons-geometry-euclidean/README.md | 2 +- commons-geometry-examples/README.md| 10 -- commons-geometry-examples/examples-jmh/README.md | 10 -- commons-geometry-examples/examples-tutorials/README.md | 10 -- commons-geometry-spherical/README.md | 2 +- 7 files changed, 4 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index 1b0f6e5..09eb673 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry - 1.0-beta1 + 1.0 ``` diff --git a/commons-geometry-core/README.md b/commons-geometry-core/README.md index 9a2cb46..c9c3edf 100644 --- a/commons-geometry-core/README.md +++ b/commons-geometry-core/README.md @@ -67,7 +67,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry-core - 1.0-beta1 + 1.0 ``` diff --git a/commons-geometry-euclidean/README.md b/commons-geometry-euclidean/README.md index 5576c7e..658cd4f 100644 --- a/commons-geometry-euclidean/README.md +++ b/commons-geometry-euclidean/README.md @@ -67,7 +67,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry-euclidean - 1.0-beta1 + 1.0 ``` diff --git a/commons-geometry-examples/README.md b/commons-geometry-examples/README.md index 858cfb1..42aa5c2 100644 --- a/commons-geometry-examples/README.md +++ b/commons-geometry-examples/README.md @@ -64,16 +64,6 @@ Where can I get the latest release? --- You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-geometry/download_geometry.cgi). -Alternatively you can pull it from the central Maven repositories: - -```xml - - org.apache.commons - commons-geometry-examples - 1.0-beta1 - -``` - Contributing diff --git a/commons-geometry-examples/examples-jmh/README.md b/commons-geometry-examples/examples-jmh/README.md index 4cf7f65..6d57e30 100644 --- a/commons-geometry-examples/examples-jmh/README.md +++ b/commons-geometry-examples/examples-jmh/README.md @@ -62,16 +62,6 @@ Where can I get the latest release? --- You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-geometry/download_geometry.cgi). -Alternatively you can pull it from the central Maven repositories: - -```xml - - org.apache.commons - commons-geometry-examples-jmh - 1.0-beta1 - -``` - Contributing diff --git a/commons-geometry-examples/examples-tutorials/README.md b/commons-geometry-examples/examples-tutorials/README.md index aa08b45..3a9e7cc 100644 --- a/commons-geometry-examples/examples-tutorials/README.md +++ b/commons-geometry-examples/examples-tutorials/README.md @@ -61,16 +61,6 @@ Where can I get the latest release? --- You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-geometry/download_geometry.cgi). -Alternatively you can pull it from the central Maven repositories: - -```xml - - org.apache.commons - commons-geometry-examples-tutorials - 1.0-beta1 - -``` - Contributing diff --git a/commons-geometry-spherical/README.md b/commons-geometry-spherical/README.md index 496fa66..3543917 100644 --- a/commons-geometry-spherical/README.md +++ b/commons-geometry-spherical/README.md @@ -67,7 +67,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry-spherical - 1.0-beta1 + 1.0 ```
[commons-geometry] 03/13: merging release branch changes
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 95fc9c9f2627b6886533a10802baeb51bdab4e24 Author: Matt Juntunen AuthorDate: Sat Aug 14 08:46:14 2021 -0400 merging release branch changes --- pom.xml | 2 +- src/changes/changes.xml | 2 +- src/site/xdoc/release-history.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index f28377b..16a2278 100644 --- a/pom.xml +++ b/pom.xml @@ -44,7 +44,7 @@ 1.0 (requires Java 8+) - +RC2 -bin GEOMETRY diff --git a/src/changes/changes.xml b/src/changes/changes.xml index e1c3805..3705c6e 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -53,7 +53,7 @@ If the output is not quite correct, check for invisible trailing spaces! -release notes for 1.0 + 1.02021-08-218+release notes for 1.0 1.0-beta12020-07-208+release notes for 1.0-beta1
[commons-geometry] 02/13: preparing RC1
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 4ec805a1f85b715a214326f5e12bdf88adbf690e Author: Matt Juntunen AuthorDate: Sun Aug 8 17:17:14 2021 -0400 preparing RC1 --- RELEASE-NOTES.txt | 56 - src/changes/release-notes.vm | 140 + .../resources/release-notes/RELEASE-NOTES-1.0.txt | 78 src/site/xdoc/download_geometry.xml| 26 ++-- src/site/xdoc/release-history.xml | 3 + 5 files changed, 288 insertions(+), 15 deletions(-) diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index 552bda6..ba2e707 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -1,4 +1,58 @@ + Apache Commons Geometry 1.0 RELEASE NOTES + +The Apache Commons Geometry team is pleased to announce the release of +commons-geometry-parent-1.0 + +The Apache Commons Geometry project provides geometric types and utilities. + +This is the first major release of Apache Commons Geometry. +Apache Commons Geometry 1.0 contains the following library modules: + commons-geometry-core (requires Java 8+) + commons-geometry-euclidean (requires Java 8+) + commons-geometry-spherical (requires Java 8+) + commons-geometry-io-core (requires Java 8+) + commons-geometry-io-euclidean (requires Java 8+) + +Changes in this version include: + +New features: +o GEOMETRY-118: Add coordinate-specific transform methods to AffineTransformMatrixXD classes, +e.g. "applyX", "applyY", "applyZ". +o GEOMETRY-95: Add solid geometry tutorial. +o GEOMETRY-120: Add SimpleTriangleMeshBuilder.addFace(int[]) method as alternative to +addFace(int, int, int). +o GEOMETRY-117: Add shear methods to AffineTransformMatrix2D. Thanks to Christoph Läubrich. +o GEOMETRY-119: Add VectorXD.normalizeOrNull() methods so that callers can detect normalization +failures without needing to catch an exception. +o GEOMETRY-115: Add modules for IO functionality: commons-geometry-io-core, +commons-geometry-io-euclidean. +o GEOMETRY-108: Add BoundaryList interface and implementation classes. + +Fixed Bugs: +o GEOMETRY-116: Fix incorrect OSGi headers. Reported by Christoph Läubrich. + +Changes: +o GEOMETRY-138: Do not use checked exceptions in IO modules. +o GEOMETRY-13: Use Norms.EUCLIDEAN from Commons Numbers to compute 3D Euclidean norm values. +o GEOMETRY-126: Replace VectorXD.linearCombination methods with VectorXD.Sum classes. Use +Sum class from Commons Numbers for computing internal linear combinations. +o GEOMETRY-124: Replace DoublePrecisionContext with Precision.DoubleEquivalence from +Commons Numbers. +o GEOMETRY-109: Rename the BoundarySourceXX.from() static factory methods to "of" to better +match the JDK's Stream.of() method. +o GEOMETRY-103: Migrate unit tests to JUnit 5. Thanks to Arturo Bernal. + + +For complete information on Apache Commons Geometry, including instructions on how to submit +bug reports, patches, or suggestions for improvement, see the Apache Commons Geometry +website: + +https://commons.apache.org/proper/commons-geometry/ + + += + Apache Commons Geometry 1.0-beta1 RELEASE NOTES The Apache Commons Geometry team is pleased to announce the release of @@ -22,5 +76,3 @@ For complete information on Apache Commons Geometry, including instructions on h reports, patches, or suggestions for improvement, see the Apache Commons Geometry website: https://commons.apache.org/proper/commons-geometry/ - - diff --git a/src/changes/release-notes.vm b/src/changes/release-notes.vm new file mode 100644 index 000..cc1b18c --- /dev/null +++ b/src/changes/release-notes.vm @@ -0,0 +1,140 @@ +## Licensed to the Apache Software Foundation (ASF) under one +## or more contributor license agreements. See the NOTICE file +## distributed with this work for additional information +## regarding copyright ownership. The ASF licenses this file +## to you under the Apache License, Version 2.0 (the +## "License"); you may not use this file except in compliance +## with the License. You may obtain a copy of the License at +## +## http://www.apache.org/licenses/LICENSE-2.0 +## +## Unless required by applicable law or agreed to in writing, +## software distributed under the License is distributed on an +## "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +## KIND, either express or implied. See the License for the +## specific language governing permissions and limitations +## under the License. + + ${project.name} ${version} RELEASE NOTES + +The ${developmentTeam} is pleased to announce the release of ${finalName} + +$intr
[commons-geometry] 11/13: removing docs from binary distribution
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit cafbeadab8af9282b406ee5a1fad13c09590946e Author: Matt Juntunen AuthorDate: Sat Aug 21 01:06:42 2021 -0400 removing docs from binary distribution --- dist-archive/src/assembly/bin.xml | 13 - 1 file changed, 13 deletions(-) diff --git a/dist-archive/src/assembly/bin.xml b/dist-archive/src/assembly/bin.xml index 9bc1e5b..7927455 100644 --- a/dist-archive/src/assembly/bin.xml +++ b/dist-archive/src/assembly/bin.xml @@ -38,18 +38,5 @@ limitations under the License. RELEASE-NOTES.txt - - ${project.basedir}/target/dependency - - -commons-geometry*.jar - - - - ${project.basedir}/../target/site - docs - - -
[commons-geometry] 07/13: enabling japicmp
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit fbad9ce3774497011150dc4abef653ad725e0e80 Author: Matt Juntunen AuthorDate: Fri Aug 20 23:45:58 2021 -0400 enabling japicmp --- .../src/site/resources/profile.japicmp | 17 + .../src/site/resources/profile.japicmp | 17 + .../src/site/resources/profile.jacoco | 17 + .../src/site/resources/profile.japicmp | 17 + .../src/site/resources/profile.jacoco | 17 + .../src/site/resources/profile.japicmp | 17 + .../src/site/resources/profile.japicmp | 17 + pom.xml | 8 +--- 8 files changed, 120 insertions(+), 7 deletions(-) diff --git a/commons-geometry-core/src/site/resources/profile.japicmp b/commons-geometry-core/src/site/resources/profile.japicmp new file mode 100644 index 000..6fe28ff --- /dev/null +++ b/commons-geometry-core/src/site/resources/profile.japicmp @@ -0,0 +1,17 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# - +# +# Empty file used to automatically trigger profile from commons parent pom diff --git a/commons-geometry-euclidean/src/site/resources/profile.japicmp b/commons-geometry-euclidean/src/site/resources/profile.japicmp new file mode 100644 index 000..6fe28ff --- /dev/null +++ b/commons-geometry-euclidean/src/site/resources/profile.japicmp @@ -0,0 +1,17 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# - +# +# Empty file used to automatically trigger profile from commons parent pom diff --git a/commons-geometry-io-core/src/site/resources/profile.jacoco b/commons-geometry-io-core/src/site/resources/profile.jacoco new file mode 100644 index 000..a12755f --- /dev/null +++ b/commons-geometry-io-core/src/site/resources/profile.jacoco @@ -0,0 +1,17 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# - +# +# Empty file used to automatically trigger JaCoCo profile from commons parent pom diff --git a/commons-geometry-io-core/src/site/resources/profile.japicmp b/commons-geometry-io-core/src/site/resources/profile.japicmp new file mode 100644 index 000..6fe28ff --- /dev/null +++ b/commons-geometry-io-core/src
svn commit: r1892483 - /commons/cms-site/trunk/doap/doap_geometry.rdf
Author: mattjuntunen Date: Sat Aug 21 02:28:35 2021 New Revision: 1892483 URL: http://svn.apache.org/viewvc?rev=1892483=rev Log: adding geometry 1.0 release Modified: commons/cms-site/trunk/doap/doap_geometry.rdf Modified: commons/cms-site/trunk/doap/doap_geometry.rdf URL: http://svn.apache.org/viewvc/commons/cms-site/trunk/doap/doap_geometry.rdf?rev=1892483=1892482=1892483=diff == --- commons/cms-site/trunk/doap/doap_geometry.rdf (original) +++ commons/cms-site/trunk/doap/doap_geometry.rdf Sat Aug 21 02:28:35 2021 @@ -43,6 +43,13 @@ commons-geometry +2021-08-21 +1.0 + + + + +commons-geometry 2020-07-19 1.0-beta1
[commons-geometry] 09/13: adding 1.1 release entry to changes.xml
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 6923331d45366406d61c3206c86c5e0502e97d86 Author: Matt Juntunen AuthorDate: Sat Aug 21 00:24:59 2021 -0400 adding 1.1 release entry to changes.xml --- src/changes/changes.xml | 12 1 file changed, 12 insertions(+) diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 3705c6e..165bfd1 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -53,6 +53,18 @@ If the output is not quite correct, check for invisible trailing spaces! + + +
[commons-geometry] 13/13: removing .txt extension from LICENSE and NOTICE files
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 9c019ed2729082cced2784c735a4675aa36ba06c Author: Matt Juntunen AuthorDate: Sat Aug 21 01:37:37 2021 -0400 removing .txt extension from LICENSE and NOTICE files --- commons-geometry-spherical/LICENSE.txt => LICENSE | 0 commons-geometry-spherical/NOTICE.txt => NOTICE | 0 README.md | 2 +- .../LICENSE.txt => commons-geometry-core/LICENSE | 0 .../NOTICE.txt => commons-geometry-core/NOTICE| 0 commons-geometry-core/README.md | 2 +- .../LICENSE.txt => commons-geometry-enclosing/LICENSE | 0 .../NOTICE.txt => commons-geometry-enclosing/NOTICE | 0 commons-geometry-enclosing/README.md | 2 +- .../LICENSE.txt => commons-geometry-euclidean/LICENSE | 0 commons-geometry-hull/NOTICE.txt => commons-geometry-euclidean/NOTICE | 0 commons-geometry-euclidean/README.md | 2 +- commons-geometry-examples/{examples-tutorials/LICENSE.txt => LICENSE} | 0 commons-geometry-examples/{examples-tutorials/NOTICE.txt => NOTICE} | 0 commons-geometry-examples/README.md | 2 +- commons-geometry-examples/examples-jmh/{LICENSE.txt => LICENSE} | 0 commons-geometry-examples/examples-jmh/{NOTICE.txt => NOTICE} | 0 commons-geometry-examples/examples-jmh/README.md | 2 +- commons-geometry-examples/{LICENSE.txt => examples-tutorials/LICENSE} | 0 commons-geometry-examples/{NOTICE.txt => examples-tutorials/NOTICE} | 0 commons-geometry-examples/examples-tutorials/README.md| 2 +- .../LICENSE.txt => commons-geometry-hull/LICENSE | 0 commons-geometry-euclidean/NOTICE.txt => commons-geometry-hull/NOTICE | 0 commons-geometry-hull/README.md | 2 +- .../LICENSE.txt => commons-geometry-io-core/LICENSE | 0 .../NOTICE.txt => commons-geometry-io-core/NOTICE | 0 commons-geometry-io-core/README.md| 2 +- .../LICENSE.txt => commons-geometry-io-euclidean/LICENSE | 0 .../NOTICE.txt => commons-geometry-io-euclidean/NOTICE| 0 commons-geometry-io-euclidean/README.md | 2 +- LICENSE.txt => commons-geometry-spherical/LICENSE | 0 NOTICE.txt => commons-geometry-spherical/NOTICE | 0 commons-geometry-spherical/README.md | 2 +- dist-archive/src/assembly/bin.xml | 4 ++-- pom.xml | 2 +- 35 files changed, 14 insertions(+), 14 deletions(-) diff --git a/commons-geometry-spherical/LICENSE.txt b/LICENSE similarity index 100% rename from commons-geometry-spherical/LICENSE.txt rename to LICENSE diff --git a/commons-geometry-spherical/NOTICE.txt b/NOTICE similarity index 100% rename from commons-geometry-spherical/NOTICE.txt rename to NOTICE diff --git a/README.md b/README.md index 09eb673..d41ed57 100644 --- a/README.md +++ b/README.md @@ -96,7 +96,7 @@ License --- This code is under the [Apache Licence v2](https://www.apache.org/licenses/LICENSE-2.0). -See the `NOTICE.txt` file for required notices and attributions. +See the `NOTICE` file for required notices and attributions. Donations - diff --git a/commons-geometry-io-euclidean/LICENSE.txt b/commons-geometry-core/LICENSE similarity index 100% rename from commons-geometry-io-euclidean/LICENSE.txt rename to commons-geometry-core/LICENSE diff --git a/commons-geometry-io-euclidean/NOTICE.txt b/commons-geometry-core/NOTICE similarity index 100% rename from commons-geometry-io-euclidean/NOTICE.txt rename to commons-geometry-core/NOTICE diff --git a/commons-geometry-core/README.md b/commons-geometry-core/README.md index c9c3edf..58fdd6e 100644 --- a/commons-geometry-core/README.md +++ b/commons-geometry-core/README.md @@ -88,7 +88,7 @@ License --- This code is under the [Apache Licence v2](https://www.apache.org/licenses/LICENSE-2.0). -See the `NOTICE.txt` file for required notices and attributions. +See the `NOTICE` file for required notices and attributions. Donations - diff --git a/commons-geometry-io-core/LICENSE.txt b/commons-geometry-enclosing/LICENSE similarity index 100% rename from commons-geometry-io-core/LICENSE.txt rename to commons-geometry-enclosing/LICENSE diff --git a/commons-geometry-io-core/NOTICE.txt b/commons-geometry-enclosing/NOTICE similarity
[commons-geometry] 10/13: adding release and development documentation
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 5944830ffb7645a58f6764fcd5c88af9045ff70d Author: Matt Juntunen AuthorDate: Sat Aug 21 00:30:24 2021 -0400 adding release and development documentation --- doc/development/development.howto.txt | 30 ++ doc/release/copyLongTermJavadoc.sh| 56 +++ doc/release/release-howto.txt | 880 ++ doc/release/settings-security.xml | 22 + doc/release/settings.xml | 63 +++ 5 files changed, 1051 insertions(+) diff --git a/doc/development/development.howto.txt b/doc/development/development.howto.txt new file mode 100644 index 000..7776ee7 --- /dev/null +++ b/doc/development/development.howto.txt @@ -0,0 +1,30 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +This document summarizes the development process of Commons Geometry: + +1. The "master" branch collects all modifications that will be part + of the next release. + Usually, non trivial changes should not be committed directly to the "master" + branch; they should be merged from a branch specifically created for + that purpose (see next point). +2. Work on an identified issue (bug fix or new feature) must be done in a + new branch named after its corresponding report in the bug-tracking + system (JIRA), e.g. "feature-GEOMETRY-123". + After completion, and in the absence of technical objections, the feature + branch is merged into the "master" branch, using the "--no-ff" git + option. + That feature branch is then deleted. diff --git a/doc/release/copyLongTermJavadoc.sh b/doc/release/copyLongTermJavadoc.sh new file mode 100755 index 000..0b46c2a --- /dev/null +++ b/doc/release/copyLongTermJavadoc.sh @@ -0,0 +1,56 @@ +#!/bin/bash +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -e + +# List of all modules paths for which the long-term Javadoc links must be copied +# We keep only the official distribution (i.e. _not_ "commons-geometry-examples"). +MODULES=(commons-geometry-core \ +commons-geometry-euclidean \ +commons-geometry-spherical \ +commons-geometry-io-core \ +commons-geometry-io-euclidean) + +while getopts r:v: option +do +case "${option}" +in +r) REVISION=${OPTARG};; +v) VERSION=${OPTARG};; +esac +done + +if [ "$REVISION" == "" ]; then +echo "Missing SVN revision: Specify '-r '"; +exit 1; +fi + +if [ "$VERSION" == "" ]; then +echo "Missing component version: Specify '-v '"; +exit 1; +fi + +for mod in ${MODULES[@]}; do +echo $mod +CPLIST+=" cp $REVISION $mod/apidocs $mod/javadocs/api-$VERSION" +done + +echo -n "Copying long-term links ... " +svnmucc -U https://svn.apache.org/repos/infra/websites/production/commons/content/proper/commons-geometry \ +$CPLIST \ +-m "Commons Geometry: Copying $VERSION apidocs to versioned directories for the long-term links." +echo "Done." diff --git a/doc/release/release-howto.txt b/doc/release/release-howto.txt new file mode 100644 index 000..63d604c --- /dev/null +++ b/doc/release/release-howto.txt @@ -0,0 +1,880 @@ +# +#
[commons-geometry] 06/13: preparing for 1.1-SNAPSHOT development
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 8b2e4245825c7d269da0f80915215f1c0ff450ed Author: Matt Juntunen AuthorDate: Fri Aug 20 23:19:26 2021 -0400 preparing for 1.1-SNAPSHOT development --- commons-geometry-core/pom.xml| 2 +- commons-geometry-enclosing/README.md | 2 +- commons-geometry-enclosing/pom.xml | 2 +- commons-geometry-euclidean/pom.xml | 2 +- commons-geometry-examples/examples-jmh/pom.xml | 2 +- commons-geometry-examples/examples-tutorials/pom.xml | 2 +- commons-geometry-examples/pom.xml| 2 +- commons-geometry-hull/README.md | 2 +- commons-geometry-hull/pom.xml| 2 +- commons-geometry-io-core/pom.xml | 2 +- commons-geometry-io-euclidean/pom.xml| 2 +- commons-geometry-spherical/README.md | 2 +- commons-geometry-spherical/pom.xml | 2 +- dist-archive/pom.xml | 2 +- pom.xml | 3 ++- 15 files changed, 16 insertions(+), 15 deletions(-) diff --git a/commons-geometry-core/pom.xml b/commons-geometry-core/pom.xml index 2521911..53f81f3 100644 --- a/commons-geometry-core/pom.xml +++ b/commons-geometry-core/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.1-SNAPSHOT commons-geometry-core diff --git a/commons-geometry-enclosing/README.md b/commons-geometry-enclosing/README.md index 27db2f6..b4d2b7b 100644 --- a/commons-geometry-enclosing/README.md +++ b/commons-geometry-enclosing/README.md @@ -67,7 +67,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry-enclosing - 1.0-beta1 + 1.1-SNAPSHOT ``` diff --git a/commons-geometry-enclosing/pom.xml b/commons-geometry-enclosing/pom.xml index 9b0ed2a..6c6c546 100644 --- a/commons-geometry-enclosing/pom.xml +++ b/commons-geometry-enclosing/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.1-SNAPSHOT commons-geometry-enclosing diff --git a/commons-geometry-euclidean/pom.xml b/commons-geometry-euclidean/pom.xml index 63cf2f6..1fc27bf 100644 --- a/commons-geometry-euclidean/pom.xml +++ b/commons-geometry-euclidean/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.1-SNAPSHOT commons-geometry-euclidean diff --git a/commons-geometry-examples/examples-jmh/pom.xml b/commons-geometry-examples/examples-jmh/pom.xml index 19778bf..2e02769 100644 --- a/commons-geometry-examples/examples-jmh/pom.xml +++ b/commons-geometry-examples/examples-jmh/pom.xml @@ -21,7 +21,7 @@ org.apache.commons commons-geometry-examples -1.0-SNAPSHOT +1.1-SNAPSHOT commons-geometry-examples-jmh diff --git a/commons-geometry-examples/examples-tutorials/pom.xml b/commons-geometry-examples/examples-tutorials/pom.xml index 2772034..c6d7eff 100644 --- a/commons-geometry-examples/examples-tutorials/pom.xml +++ b/commons-geometry-examples/examples-tutorials/pom.xml @@ -21,7 +21,7 @@ org.apache.commons commons-geometry-examples -1.0-SNAPSHOT +1.1-SNAPSHOT commons-geometry-examples-tutorials diff --git a/commons-geometry-examples/pom.xml b/commons-geometry-examples/pom.xml index 7ebe6d8..e464965 100644 --- a/commons-geometry-examples/pom.xml +++ b/commons-geometry-examples/pom.xml @@ -21,7 +21,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.1-SNAPSHOT commons-geometry-examples diff --git a/commons-geometry-hull/README.md b/commons-geometry-hull/README.md index 8ab4e1f..8232763 100644 --- a/commons-geometry-hull/README.md +++ b/commons-geometry-hull/README.md @@ -67,7 +67,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry-hull - 1.0-beta1 + 1.1-SNAPSHOT ``` diff --git a/commons-geometry-hull/pom.xml b/commons-geometry-hull/pom.xml index d12b4e4..4bfc1cc 100644 --- a/commons-geometry-hull/pom.xml +++ b/commons-geometry-hull/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.1-SNAPSHOT commons-geometry-hull diff --git a/commons-geometry-io-core/pom.xml b/commons-geometry-io-core/pom.xml index e21f30d..445ec6b 100644 --- a/commons-geometry-io-core/pom.xml +++ b/commons-geometry-io-core/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.1-SNAPSHOT commons-geometry-io-core diff --git a/commons-geometry-io-euclidean/pom.xml b/commons-geometry-io-euclidean/pom.xml index f915f2f
[commons-geometry] 12/13: removing unused assembly files
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 964bd6161c8b53e2f9c966fbadba1a9cebba609e Author: Matt Juntunen AuthorDate: Sat Aug 21 01:37:06 2021 -0400 removing unused assembly files --- src/assembly/bin.xml | 55 src/assembly/src.xml | 35 - 2 files changed, 90 deletions(-) diff --git a/src/assembly/bin.xml b/src/assembly/bin.xml deleted file mode 100644 index 87531bf..000 --- a/src/assembly/bin.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - bin - -tar.gz -zip - - ${project.artifactId}-${project.version} - false - - - false - false - - - - - - ${project.basedir}/.. - -LICENSE.txt -NOTICE.txt -RELEASE-NOTES.txt - - - - ${project.basedir}/target/dependency - - -commons-geometry*.jar - - - - ${project.basedir}../target/site - docs - - - - - diff --git a/src/assembly/src.xml b/src/assembly/src.xml deleted file mode 100644 index cf75fed..000 --- a/src/assembly/src.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - src - -tar.gz -zip - - ${project.artifactId}-${project.version}-src - - - ${project.basedir}/.. - -${project.build.directory}/** -.*/** -**/${project.build.directory}/** -**/.*/** - - - -
[commons-geometry] 05/13: preparing 1.0-rc4
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit f0c23290434a7dcc8883ad69c2d4dc847be2d855 Author: Matt Juntunen AuthorDate: Mon Aug 16 21:19:43 2021 -0400 preparing 1.0-rc4 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bac325d..9ba51d1 100644 --- a/pom.xml +++ b/pom.xml @@ -44,7 +44,7 @@ 1.0 (requires Java 8+) -RC3 +RC4 -bin GEOMETRY
[commons-geometry] branch master updated: Simplify conditions avoiding redundant null check.
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new b00020d Simplify conditions avoiding redundant null check. b00020d is described below commit b00020d34aaf657697dd30e0f730c917233dc79f Author: Arturo Bernal AuthorDate: Fri Aug 20 08:01:27 2021 +0200 Simplify conditions avoiding redundant null check. --- .../org/apache/commons/geometry/spherical/oned/RegionBSPTree1S.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/oned/RegionBSPTree1S.java b/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/oned/RegionBSPTree1S.java index 671599d..a28623f 100644 --- a/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/oned/RegionBSPTree1S.java +++ b/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/oned/RegionBSPTree1S.java @@ -244,7 +244,7 @@ public class RegionBSPTree1S extends AbstractRegionBSPTree
[commons-geometry] branch master updated: updating mvn defaultGoal
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 1745cae updating mvn defaultGoal 1745cae is described below commit 1745cae04ed69120bcba02d62028e15b10b2c82a Author: Matt Juntunen AuthorDate: Sat Aug 21 08:29:59 2021 -0400 updating mvn defaultGoal --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 8560564..fff2158 100644 --- a/pom.xml +++ b/pom.xml @@ -184,7 +184,7 @@ -clean verify apache-rat:check japicmp:cmp checkstyle:check pmd:check spotbugs:check javadoc:javadoc +clean verify pmd:check spotbugs:check javadoc:javadoc org.apache.maven.plugins
svn commit: r49503 - in /dev/commons/geometry: 1.0-RC2/ 1.0-RC3/ 1.0-RC3/binaries/ 1.0-RC3/source/
Author: mattjuntunen Date: Sun Aug 15 00:00:35 2021 New Revision: 49503 Log: Distribution files for Commons Geometry v1.0 (RC3) Added: dev/commons/geometry/1.0-RC3/ dev/commons/geometry/1.0-RC3/CONTRIBUTING.md dev/commons/geometry/1.0-RC3/HEADER.html dev/commons/geometry/1.0-RC3/README.html dev/commons/geometry/1.0-RC3/RELEASE-NOTES.txt dev/commons/geometry/1.0-RC3/binaries/ dev/commons/geometry/1.0-RC3/binaries/HEADER.html dev/commons/geometry/1.0-RC3/binaries/README.html dev/commons/geometry/1.0-RC3/binaries/commons-geometry-1.0-bin.tar.gz (with props) dev/commons/geometry/1.0-RC3/binaries/commons-geometry-1.0-bin.tar.gz.asc dev/commons/geometry/1.0-RC3/binaries/commons-geometry-1.0-bin.tar.gz.sha512 dev/commons/geometry/1.0-RC3/binaries/commons-geometry-1.0-bin.zip (with props) dev/commons/geometry/1.0-RC3/binaries/commons-geometry-1.0-bin.zip.asc dev/commons/geometry/1.0-RC3/binaries/commons-geometry-1.0-bin.zip.sha512 dev/commons/geometry/1.0-RC3/source/ dev/commons/geometry/1.0-RC3/source/HEADER.html dev/commons/geometry/1.0-RC3/source/README.html dev/commons/geometry/1.0-RC3/source/commons-geometry-1.0-src.tar.gz (with props) dev/commons/geometry/1.0-RC3/source/commons-geometry-1.0-src.tar.gz.asc dev/commons/geometry/1.0-RC3/source/commons-geometry-1.0-src.tar.gz.sha512 dev/commons/geometry/1.0-RC3/source/commons-geometry-1.0-src.zip (with props) dev/commons/geometry/1.0-RC3/source/commons-geometry-1.0-src.zip.asc dev/commons/geometry/1.0-RC3/source/commons-geometry-1.0-src.zip.sha512 Removed: dev/commons/geometry/1.0-RC2/ Added: dev/commons/geometry/1.0-RC3/CONTRIBUTING.md == --- dev/commons/geometry/1.0-RC3/CONTRIBUTING.md (added) +++ dev/commons/geometry/1.0-RC3/CONTRIBUTING.md Sun Aug 15 00:00:35 2021 @@ -0,0 +1,115 @@ + + +Contributing to Apache Commons Geometry +== + +You have found a bug or you have an idea for a cool new feature? Contributing code is a great way to give something back to +the open source community. Before you dig right into the code there are a few guidelines that we need contributors to +follow so that we can have a chance of keeping on top of things. + +Getting Started +--- + ++ Make sure you have a [JIRA account](https://issues.apache.org/jira/). ++ Make sure you have a [GitHub account](https://github.com/signup/free). ++ If you're planning to implement a new feature it makes sense to discuss your changes on the [dev list](https://commons.apache.org/mail-lists.html) first. This way you can make sure you're not wasting your time on something that isn't considered to be in Apache Commons Geometry's scope. ++ Submit a [Jira Ticket][jira] for your issue, assuming one does not already exist. + + Clearly describe the issue including steps to reproduce when it is a bug. + + Make sure you fill in the earliest version that you know has the issue. ++ Find the corresponding [repository on GitHub](https://github.com/apache/?query=commons-), +[fork](https://help.github.com/articles/fork-a-repo/) and check out your forked repository. + +Making Changes +-- + ++ Create a _topic branch_ for your isolated work. + * Usually you should base your branch on the `master` or `trunk` branch. + * A good topic branch name can be the JIRA bug id plus a keyword, e.g. `GEOMETRY-123-InputStream`. + * If you have submitted multiple JIRA issues, try to maintain separate branches and pull requests. ++ Make commits of logical units. + * Make sure your commit messages are meaningful and in the proper format. Your commit message should contain the key of the JIRA issue. + * e.g. `GEOMETRY-123: Close input stream earlier` ++ Respect the original code style: + + Only use spaces for indentation. + + Create minimal diffs - disable _On Save_ actions like _Reformat Source Code_ or _Organize Imports_. If you feel the source code should be reformatted create a separate PR for this change first. + + Check for unnecessary whitespace with `git diff` -- check before committing. ++ Make sure you have added the necessary tests for your changes, typically in `src/test/java`. ++ Run all the tests with `mvn clean verify` to assure nothing else was accidentally broken. + +Making Trivial Changes +-- + +The JIRA tickets are used to generate the changelog for the next release. + +For changes of a trivial nature to comments and documentation, it is not always necessary to create a new ticket in JIRA. +In this case, it is appropriate to start the first line of a commit with '(doc)' instead of a ticket number. + + +Submitting Changes +-- + ++ Sign and submit the Apache [Contributor License Agreement][cla] if you haven't already. + * Note that small patches & typical bug fixes do not require a CLA as +clause 5 of the [Apache Lic
[commons-geometry] annotated tag commons-geometry-1.0-rc4 created (now 8296de9)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to annotated tag commons-geometry-1.0-rc4 in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. at 8296de9 (tag) tagging 5326851864f93a486409562628afaaa485b6d99f (commit) replaces commons-geometry-1.0-rc3 by Matt Juntunen on Mon Aug 16 21:34:06 2021 -0400 - Log - commons-geometry-1.0-rc4 -BEGIN PGP SIGNATURE- iQHMBAABCgA2FiEEfdU67+3xw9OStR6+NG9Pzs+3CxoFAmEbEg4YHG1hdHRqdW50 dW5lbkBhcGFjaGUub3JnAAoJEDRvT87PtwsaekUL/0bNsLiVZUrREyDsklBaq0gv c0dFLmcNqegjlb/Enc+QXBOaK4EaeuxqdmX+IHCKkEYoL4gvZdvJMl0PuQJVd+Uu Xfd6qtPM1/vhSjjzleg8UTjaaZwjMtdXc64cnIE6fXMK1Ev96OZLRTQCrIaT63ku bZ1/PIHFh563exR32PasLfq1V6foU9dJqOh/VnfDtnvYIfR6QCiYX6B1cZ1Y6g1L nt5Ve7qYrSCT52BIUZEMRYXVxjyPedMHf6R+69df92qJNo4f8s+jIp6sWyQzniAB W7pAQkp56gFkAqzrX4TWswuYRvdWW5mc5mFrTW10R049RiVDkDYHDKtdKBGduLhA BhArXjpAuqmX2urTWM5LhafdhCT6c+IUtwhBW2VpRQqTXJvj9yPHBHu7ECgw9Tc3 u9hyVFw35YuMF+Exdgno2DpxNb3hIAzZic+jRjqGEBOwftGvObA9z6x4kR5w1+yG xz1jC8sW2zH5eP+etwcDy7U76+LPE3yhfmERFKOT5Q== =x3gF -END PGP SIGNATURE- --- No new revisions were added by this update.
[commons-geometry] 02/03: update README versions
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 3c1eeeb13325cb0d352f8a64a202bf7f58634dad Author: Matt Juntunen AuthorDate: Mon Aug 16 21:18:58 2021 -0400 update README versions --- README.md | 2 +- commons-geometry-core/README.md| 2 +- commons-geometry-euclidean/README.md | 2 +- commons-geometry-examples/README.md| 10 -- commons-geometry-examples/examples-jmh/README.md | 10 -- commons-geometry-examples/examples-tutorials/README.md | 10 -- commons-geometry-spherical/README.md | 2 +- 7 files changed, 4 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index 1b0f6e5..09eb673 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry - 1.0-beta1 + 1.0 ``` diff --git a/commons-geometry-core/README.md b/commons-geometry-core/README.md index 9a2cb46..c9c3edf 100644 --- a/commons-geometry-core/README.md +++ b/commons-geometry-core/README.md @@ -67,7 +67,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry-core - 1.0-beta1 + 1.0 ``` diff --git a/commons-geometry-euclidean/README.md b/commons-geometry-euclidean/README.md index 5576c7e..658cd4f 100644 --- a/commons-geometry-euclidean/README.md +++ b/commons-geometry-euclidean/README.md @@ -67,7 +67,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry-euclidean - 1.0-beta1 + 1.0 ``` diff --git a/commons-geometry-examples/README.md b/commons-geometry-examples/README.md index 858cfb1..42aa5c2 100644 --- a/commons-geometry-examples/README.md +++ b/commons-geometry-examples/README.md @@ -64,16 +64,6 @@ Where can I get the latest release? --- You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-geometry/download_geometry.cgi). -Alternatively you can pull it from the central Maven repositories: - -```xml - - org.apache.commons - commons-geometry-examples - 1.0-beta1 - -``` - Contributing diff --git a/commons-geometry-examples/examples-jmh/README.md b/commons-geometry-examples/examples-jmh/README.md index 4cf7f65..6d57e30 100644 --- a/commons-geometry-examples/examples-jmh/README.md +++ b/commons-geometry-examples/examples-jmh/README.md @@ -62,16 +62,6 @@ Where can I get the latest release? --- You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-geometry/download_geometry.cgi). -Alternatively you can pull it from the central Maven repositories: - -```xml - - org.apache.commons - commons-geometry-examples-jmh - 1.0-beta1 - -``` - Contributing diff --git a/commons-geometry-examples/examples-tutorials/README.md b/commons-geometry-examples/examples-tutorials/README.md index aa08b45..3a9e7cc 100644 --- a/commons-geometry-examples/examples-tutorials/README.md +++ b/commons-geometry-examples/examples-tutorials/README.md @@ -61,16 +61,6 @@ Where can I get the latest release? --- You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-geometry/download_geometry.cgi). -Alternatively you can pull it from the central Maven repositories: - -```xml - - org.apache.commons - commons-geometry-examples-tutorials - 1.0-beta1 - -``` - Contributing diff --git a/commons-geometry-spherical/README.md b/commons-geometry-spherical/README.md index 496fa66..3543917 100644 --- a/commons-geometry-spherical/README.md +++ b/commons-geometry-spherical/README.md @@ -67,7 +67,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-geometry-spherical - 1.0-beta1 + 1.0 ```
[commons-geometry] branch 1.0-release updated (aad4aa0 -> 5326851)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. from aad4aa0 preparing 1.0-rc3 add 5efb17c implementing changes from rc3 feedback new d25ce69 Merge branch 'master' into 1.0-release new 3c1eeeb update README versions new 5326851 preparing 1.0-rc4 The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: README.md| 2 +- commons-geometry-core/README.md | 2 +- .../core/partitioning/bsp/AbstractRegionBSPTree.java | 2 +- .../core/partitioning/bsp/BSPTreeVisitor.java| 4 ++-- .../core/partitioning/bsp/AbstractBSPTreeTest.java | 20 commons-geometry-euclidean/README.md | 2 +- .../geometry/euclidean/internal/EuclideanUtils.java | 11 +++ .../geometry/euclidean/oned/RegionBSPTree1D.java | 2 +- .../commons/geometry/euclidean/oned/Vector1D.java| 2 -- .../euclidean/threed/AbstractConvexPolygon3D.java| 2 +- .../commons/geometry/euclidean/threed/Planes.java| 18 +- .../commons/geometry/euclidean/threed/Vector3D.java | 2 -- .../euclidean/threed/VertexListConvexPolygon3D.java | 6 -- .../euclidean/threed/mesh/SimpleTriangleMesh.java| 6 -- .../threed/rotation/QuaternionRotation.java | 2 +- .../geometry/euclidean/twod/RegionBSPTree2D.java | 4 ++-- .../commons/geometry/euclidean/twod/Vector2D.java| 2 -- commons-geometry-examples/README.md | 10 -- commons-geometry-examples/examples-jmh/README.md | 10 -- .../examples-tutorials/README.md | 10 -- .../commons/geometry/io/core/BoundaryIOManager.java | 3 ++- .../geometry/io/core/internal/CharReadBuffer.java| 2 +- .../geometry/io/core/internal/SimpleTextParser.java | 3 +-- .../io/euclidean/threed/SimpleFacetDefinition.java | 7 --- .../threed/obj/AbstractObjPolygonReader.java | 6 +++--- .../geometry/io/euclidean/threed/obj/ObjWriter.java | 6 -- .../io/euclidean/threed/obj/PolygonObjParser.java| 8 +--- .../threed/txt/TextFacetDefinitionWriter.java| 8 +--- .../threed/obj/ObjFacetDefinitionReaderTest.java | 2 +- .../threed/obj/ObjTriangleMeshReaderTest.java| 2 +- .../euclidean/threed/obj/PolygonObjParserTest.java | 2 +- commons-geometry-spherical/README.md | 2 +- .../commons/geometry/spherical/oned/Point1S.java | 2 -- .../geometry/spherical/twod/GreatCircles.java| 2 +- .../commons/geometry/spherical/twod/Point2S.java | 2 -- pom.xml | 10 +- .../resources/checkstyle/checkstyle-suppressions.xml | 1 + src/main/resources/checkstyle/checkstyle.xml | 8 src/main/resources/pmd/pmd-ruleset.xml | 4 +++- src/site/xdoc/userguide/index.xml| 4 ++-- 40 files changed, 104 insertions(+), 99 deletions(-)
[commons-geometry] 03/03: preparing 1.0-rc4
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 5326851864f93a486409562628afaaa485b6d99f Author: Matt Juntunen AuthorDate: Mon Aug 16 21:19:43 2021 -0400 preparing 1.0-rc4 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index fe41fce..f3292f9 100644 --- a/pom.xml +++ b/pom.xml @@ -44,7 +44,7 @@ 1.0 (requires Java 8+) -RC3 +RC4 -bin GEOMETRY
[commons-geometry] 01/03: Merge branch 'master' into 1.0-release
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit d25ce692a15c9e709ea53da4944210339962d0e5 Merge: aad4aa0 5efb17c Author: Matt Juntunen AuthorDate: Mon Aug 16 12:39:12 2021 -0400 Merge branch 'master' into 1.0-release .../core/partitioning/bsp/AbstractRegionBSPTree.java | 2 +- .../core/partitioning/bsp/BSPTreeVisitor.java| 4 ++-- .../core/partitioning/bsp/AbstractBSPTreeTest.java | 20 .../geometry/euclidean/internal/EuclideanUtils.java | 11 +++ .../geometry/euclidean/oned/RegionBSPTree1D.java | 2 +- .../commons/geometry/euclidean/oned/Vector1D.java| 2 -- .../euclidean/threed/AbstractConvexPolygon3D.java| 2 +- .../commons/geometry/euclidean/threed/Planes.java| 18 +- .../commons/geometry/euclidean/threed/Vector3D.java | 2 -- .../euclidean/threed/VertexListConvexPolygon3D.java | 6 -- .../euclidean/threed/mesh/SimpleTriangleMesh.java| 6 -- .../threed/rotation/QuaternionRotation.java | 2 +- .../geometry/euclidean/twod/RegionBSPTree2D.java | 4 ++-- .../commons/geometry/euclidean/twod/Vector2D.java| 2 -- .../commons/geometry/io/core/BoundaryIOManager.java | 3 ++- .../geometry/io/core/internal/CharReadBuffer.java| 2 +- .../geometry/io/core/internal/SimpleTextParser.java | 3 +-- .../io/euclidean/threed/SimpleFacetDefinition.java | 7 --- .../threed/obj/AbstractObjPolygonReader.java | 6 +++--- .../geometry/io/euclidean/threed/obj/ObjWriter.java | 6 -- .../io/euclidean/threed/obj/PolygonObjParser.java| 8 +--- .../threed/txt/TextFacetDefinitionWriter.java| 8 +--- .../threed/obj/ObjFacetDefinitionReaderTest.java | 2 +- .../threed/obj/ObjTriangleMeshReaderTest.java| 2 +- .../euclidean/threed/obj/PolygonObjParserTest.java | 2 +- .../commons/geometry/spherical/oned/Point1S.java | 2 -- .../geometry/spherical/twod/GreatCircles.java| 2 +- .../commons/geometry/spherical/twod/Point2S.java | 2 -- pom.xml | 8 .../resources/checkstyle/checkstyle-suppressions.xml | 1 + src/main/resources/checkstyle/checkstyle.xml | 8 src/main/resources/pmd/pmd-ruleset.xml | 4 +++- src/site/xdoc/userguide/index.xml| 4 ++-- 33 files changed, 99 insertions(+), 64 deletions(-)
[commons-geometry] branch 1.0-release created (now 8915213)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. at 8915213 remove modules not part of release This branch includes the following new commits: new 8915213 remove modules not part of release The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[commons-geometry] branch 1.0-release updated (8915213 -> f0c0e75)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. from 8915213 remove modules not part of release new bb8f336 updating versions to prepare for 1.0 release new f0c0e75 preparing RC1 The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: RELEASE-NOTES.txt | 56 - commons-geometry-core/pom.xml | 2 +- commons-geometry-core/src/site/site.xml| 4 +- commons-geometry-euclidean/pom.xml | 2 +- commons-geometry-euclidean/src/site/site.xml | 4 +- commons-geometry-examples/examples-jmh/pom.xml | 2 +- .../examples-tutorials/pom.xml | 2 +- commons-geometry-examples/pom.xml | 2 +- commons-geometry-io-core/pom.xml | 2 +- .../src/site/resources/profile.jacoco | 0 .../src/site/site.xml | 5 +- commons-geometry-io-euclidean/pom.xml | 2 +- .../src/site/resources/profile.jacoco | 0 .../src/site/site.xml | 5 +- commons-geometry-spherical/pom.xml | 2 +- commons-geometry-spherical/src/site/site.xml | 4 +- dist-archive/pom.xml | 2 +- pom.xml| 4 +- src/changes/changes.xml| 2 +- src/changes/release-notes.vm | 140 + .../resources/release-notes/RELEASE-NOTES-1.0.txt | 78 src/site/xdoc/download_geometry.xml| 26 ++-- src/site/xdoc/release-history.xml | 3 + 23 files changed, 312 insertions(+), 37 deletions(-) copy {commons-geometry-spherical => commons-geometry-io-core}/src/site/resources/profile.jacoco (100%) copy {commons-geometry-core => commons-geometry-io-core}/src/site/site.xml (90%) copy {commons-geometry-spherical => commons-geometry-io-euclidean}/src/site/resources/profile.jacoco (100%) copy {commons-geometry-core => commons-geometry-io-euclidean}/src/site/site.xml (90%) create mode 100644 src/changes/release-notes.vm create mode 100644 src/site/resources/release-notes/RELEASE-NOTES-1.0.txt
[commons-geometry] 01/02: updating versions to prepare for 1.0 release
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit bb8f3362b39eaaa7adbde6df3e055ac98db3c90f Author: Matt Juntunen AuthorDate: Sun Aug 8 16:55:27 2021 -0400 updating versions to prepare for 1.0 release --- commons-geometry-core/pom.xml | 2 +- commons-geometry-core/src/site/site.xml | 4 ++-- commons-geometry-euclidean/pom.xml | 2 +- commons-geometry-euclidean/src/site/site.xml| 4 ++-- commons-geometry-examples/examples-jmh/pom.xml | 2 +- commons-geometry-examples/examples-tutorials/pom.xml| 2 +- commons-geometry-examples/pom.xml | 2 +- commons-geometry-io-core/pom.xml| 2 +- .../src/site/resources/profile.jacoco | 17 + .../src/site/site.xml | 5 +++-- commons-geometry-io-euclidean/pom.xml | 2 +- .../src/site/resources/profile.jacoco | 17 + .../src/site/site.xml | 5 +++-- commons-geometry-spherical/pom.xml | 2 +- commons-geometry-spherical/src/site/site.xml| 4 ++-- dist-archive/pom.xml| 2 +- pom.xml | 4 ++-- src/changes/changes.xml | 2 +- 18 files changed, 58 insertions(+), 22 deletions(-) diff --git a/commons-geometry-core/pom.xml b/commons-geometry-core/pom.xml index 2521911..3b12615 100644 --- a/commons-geometry-core/pom.xml +++ b/commons-geometry-core/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.0 commons-geometry-core diff --git a/commons-geometry-core/src/site/site.xml b/commons-geometry-core/src/site/site.xml index d9d4ce5..7adbb0a 100644 --- a/commons-geometry-core/src/site/site.xml +++ b/commons-geometry-core/src/site/site.xml @@ -28,8 +28,8 @@ - + https://commons.apache.org/geometry/commons-geometry-core/javadocs/api-1.0/index.html"/> diff --git a/commons-geometry-euclidean/pom.xml b/commons-geometry-euclidean/pom.xml index 63cf2f6..9527b6d 100644 --- a/commons-geometry-euclidean/pom.xml +++ b/commons-geometry-euclidean/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.0 commons-geometry-euclidean diff --git a/commons-geometry-euclidean/src/site/site.xml b/commons-geometry-euclidean/src/site/site.xml index 8915e07..9bac4dd 100644 --- a/commons-geometry-euclidean/src/site/site.xml +++ b/commons-geometry-euclidean/src/site/site.xml @@ -28,8 +28,8 @@ - + https://commons.apache.org/geometry/commons-geometry-euclidean/javadocs/api-1.0/index.html"/> diff --git a/commons-geometry-examples/examples-jmh/pom.xml b/commons-geometry-examples/examples-jmh/pom.xml index 19778bf..6da6b92 100644 --- a/commons-geometry-examples/examples-jmh/pom.xml +++ b/commons-geometry-examples/examples-jmh/pom.xml @@ -21,7 +21,7 @@ org.apache.commons commons-geometry-examples -1.0-SNAPSHOT +1.0 commons-geometry-examples-jmh diff --git a/commons-geometry-examples/examples-tutorials/pom.xml b/commons-geometry-examples/examples-tutorials/pom.xml index 2772034..85e8c56 100644 --- a/commons-geometry-examples/examples-tutorials/pom.xml +++ b/commons-geometry-examples/examples-tutorials/pom.xml @@ -21,7 +21,7 @@ org.apache.commons commons-geometry-examples -1.0-SNAPSHOT +1.0 commons-geometry-examples-tutorials diff --git a/commons-geometry-examples/pom.xml b/commons-geometry-examples/pom.xml index 7ebe6d8..53e3884 100644 --- a/commons-geometry-examples/pom.xml +++ b/commons-geometry-examples/pom.xml @@ -21,7 +21,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.0 commons-geometry-examples diff --git a/commons-geometry-io-core/pom.xml b/commons-geometry-io-core/pom.xml index e21f30d..c2f3abb 100644 --- a/commons-geometry-io-core/pom.xml +++ b/commons-geometry-io-core/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-geometry-parent -1.0-SNAPSHOT +1.0 commons-geometry-io-core diff --git a/commons-geometry-io-core/src/site/resources/profile.jacoco b/commons-geometry-io-core/src/site/resources/profile.jacoco new file mode 100644 index 000..a12755f --- /dev/null +++ b/commons-geometry-io-core/src/site/resources/profile.jacoco @@ -0,0 +1,17 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright owner
[commons-geometry] 02/02: preparing RC1
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit f0c0e75f1ffb086c46eae217abfb8a6b3f11dfb2 Author: Matt Juntunen AuthorDate: Sun Aug 8 17:17:14 2021 -0400 preparing RC1 --- RELEASE-NOTES.txt | 56 - src/changes/release-notes.vm | 140 + .../resources/release-notes/RELEASE-NOTES-1.0.txt | 78 src/site/xdoc/download_geometry.xml| 26 ++-- src/site/xdoc/release-history.xml | 3 + 5 files changed, 288 insertions(+), 15 deletions(-) diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index 552bda6..ba2e707 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -1,4 +1,58 @@ + Apache Commons Geometry 1.0 RELEASE NOTES + +The Apache Commons Geometry team is pleased to announce the release of +commons-geometry-parent-1.0 + +The Apache Commons Geometry project provides geometric types and utilities. + +This is the first major release of Apache Commons Geometry. +Apache Commons Geometry 1.0 contains the following library modules: + commons-geometry-core (requires Java 8+) + commons-geometry-euclidean (requires Java 8+) + commons-geometry-spherical (requires Java 8+) + commons-geometry-io-core (requires Java 8+) + commons-geometry-io-euclidean (requires Java 8+) + +Changes in this version include: + +New features: +o GEOMETRY-118: Add coordinate-specific transform methods to AffineTransformMatrixXD classes, +e.g. "applyX", "applyY", "applyZ". +o GEOMETRY-95: Add solid geometry tutorial. +o GEOMETRY-120: Add SimpleTriangleMeshBuilder.addFace(int[]) method as alternative to +addFace(int, int, int). +o GEOMETRY-117: Add shear methods to AffineTransformMatrix2D. Thanks to Christoph Läubrich. +o GEOMETRY-119: Add VectorXD.normalizeOrNull() methods so that callers can detect normalization +failures without needing to catch an exception. +o GEOMETRY-115: Add modules for IO functionality: commons-geometry-io-core, +commons-geometry-io-euclidean. +o GEOMETRY-108: Add BoundaryList interface and implementation classes. + +Fixed Bugs: +o GEOMETRY-116: Fix incorrect OSGi headers. Reported by Christoph Läubrich. + +Changes: +o GEOMETRY-138: Do not use checked exceptions in IO modules. +o GEOMETRY-13: Use Norms.EUCLIDEAN from Commons Numbers to compute 3D Euclidean norm values. +o GEOMETRY-126: Replace VectorXD.linearCombination methods with VectorXD.Sum classes. Use +Sum class from Commons Numbers for computing internal linear combinations. +o GEOMETRY-124: Replace DoublePrecisionContext with Precision.DoubleEquivalence from +Commons Numbers. +o GEOMETRY-109: Rename the BoundarySourceXX.from() static factory methods to "of" to better +match the JDK's Stream.of() method. +o GEOMETRY-103: Migrate unit tests to JUnit 5. Thanks to Arturo Bernal. + + +For complete information on Apache Commons Geometry, including instructions on how to submit +bug reports, patches, or suggestions for improvement, see the Apache Commons Geometry +website: + +https://commons.apache.org/proper/commons-geometry/ + + += + Apache Commons Geometry 1.0-beta1 RELEASE NOTES The Apache Commons Geometry team is pleased to announce the release of @@ -22,5 +76,3 @@ For complete information on Apache Commons Geometry, including instructions on h reports, patches, or suggestions for improvement, see the Apache Commons Geometry website: https://commons.apache.org/proper/commons-geometry/ - - diff --git a/src/changes/release-notes.vm b/src/changes/release-notes.vm new file mode 100644 index 000..cc1b18c --- /dev/null +++ b/src/changes/release-notes.vm @@ -0,0 +1,140 @@ +## Licensed to the Apache Software Foundation (ASF) under one +## or more contributor license agreements. See the NOTICE file +## distributed with this work for additional information +## regarding copyright ownership. The ASF licenses this file +## to you under the Apache License, Version 2.0 (the +## "License"); you may not use this file except in compliance +## with the License. You may obtain a copy of the License at +## +## http://www.apache.org/licenses/LICENSE-2.0 +## +## Unless required by applicable law or agreed to in writing, +## software distributed under the License is distributed on an +## "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +## KIND, either express or implied. See the License for the +## specific language governing permissions and limitations +## under the License. + + ${project.name} ${version} RELEASE NOTES + +The ${developmentTeam} is pleased to announce the release of ${finalName} + +$intr
[commons-geometry] branch master updated: adding io modules to dist-archive and removing example modules
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 2eb9652 adding io modules to dist-archive and removing example modules 2eb9652 is described below commit 2eb9652fc680708f3b06de9265d65b29735f2b6b Author: Matt Juntunen AuthorDate: Thu Aug 5 23:02:55 2021 -0400 adding io modules to dist-archive and removing example modules --- dist-archive/pom.xml | 35 --- 1 file changed, 8 insertions(+), 27 deletions(-) diff --git a/dist-archive/pom.xml b/dist-archive/pom.xml index 170f82e..0fd1da1 100644 --- a/dist-archive/pom.xml +++ b/dist-archive/pom.xml @@ -155,59 +155,40 @@ under the License. javadoc - + org.apache.commons - commons-geometry-examples-jmh + commons-geometry-io-core ${project.version} org.apache.commons - commons-geometry-examples-jmh + commons-geometry-io-core ${project.version} sources org.apache.commons - commons-geometry-examples-jmh + commons-geometry-io-core ${project.version} javadoc - + org.apache.commons - commons-geometry-examples-io + commons-geometry-io-euclidean ${project.version} org.apache.commons - commons-geometry-examples-io + commons-geometry-io-euclidean ${project.version} sources org.apache.commons - commons-geometry-examples-io - ${project.version} - javadoc - - - - - org.apache.commons - commons-geometry-examples-tutorials - ${project.version} - - - org.apache.commons - commons-geometry-examples-tutorials - ${project.version} - sources - - - org.apache.commons - commons-geometry-examples-tutorials + commons-geometry-io-euclidean ${project.version} javadoc
[commons-geometry] branch master updated: exclude example modules from deployment
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 224ea78 exclude example modules from deployment 224ea78 is described below commit 224ea78db625e1a8e735073d8a504239c5adfcd4 Author: Matt Juntunen AuthorDate: Sun Aug 8 10:36:01 2021 -0400 exclude example modules from deployment --- commons-geometry-examples/examples-jmh/pom.xml | 3 +++ commons-geometry-examples/examples-tutorials/pom.xml | 5 - commons-geometry-examples/pom.xml| 3 +++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/commons-geometry-examples/examples-jmh/pom.xml b/commons-geometry-examples/examples-jmh/pom.xml index 7527390..19778bf 100644 --- a/commons-geometry-examples/examples-jmh/pom.xml +++ b/commons-geometry-examples/examples-jmh/pom.xml @@ -31,6 +31,9 @@ Code in this module is not part of the public API. + +true + org.apache.commons.geometry.examples.jmh org.apache.commons.geometry.examples.jmh.* diff --git a/commons-geometry-examples/examples-tutorials/pom.xml b/commons-geometry-examples/examples-tutorials/pom.xml index 136db66..2772034 100644 --- a/commons-geometry-examples/examples-tutorials/pom.xml +++ b/commons-geometry-examples/examples-tutorials/pom.xml @@ -33,6 +33,9 @@ 1.8 1.8 + +true + org.apache.commons.geometry.examples.tutorials org.apache.commons.geometry.examples.tutorials.* @@ -58,7 +61,7 @@ org.apache.commons commons-geometry-io-core - + org.apache.commons commons-geometry-io-euclidean diff --git a/commons-geometry-examples/pom.xml b/commons-geometry-examples/pom.xml index d32d87c..7ebe6d8 100644 --- a/commons-geometry-examples/pom.xml +++ b/commons-geometry-examples/pom.xml @@ -38,6 +38,9 @@ 1.8 1.8 + +true + ${project.version}
svn commit: r49475 - in /dev/commons/geometry: 1.0-RC1/ 1.0-rc1/
Author: mattjuntunen Date: Thu Aug 12 11:26:10 2021 New Revision: 49475 Log: renaming rc folder to match naming conventions Added: dev/commons/geometry/1.0-RC1/ - copied from r49474, dev/commons/geometry/1.0-rc1/ Removed: dev/commons/geometry/1.0-rc1/
[commons-geometry] branch master updated: update changes.xml
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 37dab0a update changes.xml 37dab0a is described below commit 37dab0a821064d61330f4c7996d00d7ad3ebc94a Author: Matt Juntunen AuthorDate: Sun Aug 1 07:39:31 2021 -0400 update changes.xml --- src/changes/changes.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/changes/changes.xml b/src/changes/changes.xml index fb9b9cc..b1217de 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -61,6 +61,9 @@ Apache Commons Geometry 1.0 contains the following library modules: commons-geometry-io-core (requires Java 8+) commons-geometry-io-euclidean (requires Java 8+) "> + +Do not use checked exceptions in IO modules. + Use Norms.EUCLIDEAN from Commons Numbers to compute 3D Euclidean norm values.
[commons-geometry] branch master updated: GEOMETRY-139: abstracting GeometryInput and GeometryOutput commons fields into GeometryIOMetadata
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new a047462 GEOMETRY-139: abstracting GeometryInput and GeometryOutput commons fields into GeometryIOMetadata a047462 is described below commit a0474622d0ad7b9756ba61568de7f111326e4017 Author: Matt Juntunen AuthorDate: Sat Jul 31 18:44:11 2021 -0400 GEOMETRY-139: abstracting GeometryInput and GeometryOutput commons fields into GeometryIOMetadata --- ...yInput.java => AbstractGeometryIOMetadata.java} | 16 +++--- ...GeometryOutput.java => GeometryIOMetadata.java} | 23 +++- .../geometry/io/core/input/FileGeometryInput.java | 4 +- .../geometry/io/core/input/GeometryInput.java | 19 ++- .../io/core/input/StreamGeometryInput.java | 5 +- .../geometry/io/core/input/UrlGeometryInput.java | 4 +- .../io/core/output/AbstractGeometryOutput.java | 63 -- .../io/core/output/FileGeometryOutput.java | 4 +- .../geometry/io/core/output/GeometryOutput.java| 17 ++ .../io/core/output/StreamGeometryOutput.java | 5 +- 10 files changed, 40 insertions(+), 120 deletions(-) diff --git a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/input/AbstractGeometryInput.java b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/AbstractGeometryIOMetadata.java similarity index 78% rename from commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/input/AbstractGeometryInput.java rename to commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/AbstractGeometryIOMetadata.java index 94e3730..89c6e26 100644 --- a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/input/AbstractGeometryInput.java +++ b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/AbstractGeometryIOMetadata.java @@ -14,25 +14,25 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.commons.geometry.io.core.input; +package org.apache.commons.geometry.io.core; import java.nio.charset.Charset; -/** Abstract base class for {@link GeometryInput} implementations. +/** Abstract base class for {@link GeometryIOMetadata} implementations. */ -abstract class AbstractGeometryInput implements GeometryInput { +public class AbstractGeometryIOMetadata implements GeometryIOMetadata { -/** Input file name. */ +/** File name; may be null. */ private final String fileName; -/** Input charset; may be null. */ +/** Charset; may be null. */ private final Charset charset; /** Construct a new instance with the given file name and charset. - * @param fileName file name - * @param charset charset to use when reading input; may be null + * @param fileName file name; may be null + * @param charset charset; may be null */ -AbstractGeometryInput(final String fileName, final Charset charset) { +protected AbstractGeometryIOMetadata(final String fileName, final Charset charset) { this.fileName = fileName; this.charset = charset; } diff --git a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/output/GeometryOutput.java b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/GeometryIOMetadata.java similarity index 60% copy from commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/output/GeometryOutput.java copy to commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/GeometryIOMetadata.java index 99f70e3..0c32f85 100644 --- a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/output/GeometryOutput.java +++ b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/GeometryIOMetadata.java @@ -14,30 +14,23 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.commons.geometry.io.core.output; +package org.apache.commons.geometry.io.core; -import java.io.OutputStream; import java.nio.charset.Charset; -/** Interface representing the output of a geometric IO operation. +/** Interface containing basic metadata fields for use in I/O operations. */ -public interface GeometryOutput { +public interface GeometryIOMetadata { -/** Get the output file name. - * @return output file name +/** Get the file name associated with the operation, if any. + * @return file name associated with the operation or null + * if unknown or not applicable */ String getFileName(); -/** Get the charset of the output or null if the charset - * is unknown or not applicable. - * @return c
[commons-geometry] branch master updated: adding example module section to userguide
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 5b280dc adding example module section to userguide 5b280dc is described below commit 5b280dcb0d8ec4e71bc7002c9ea4b6c3348a3b8e Author: Matt Juntunen AuthorDate: Wed Aug 11 22:44:21 2021 -0400 adding example module section to userguide --- src/site/site.xml| 1 + src/site/xdoc/tutorials/bsp-tree.xml | 7 --- src/site/xdoc/tutorials/teapot.xml | 5 +++-- src/site/xdoc/userguide/index.xml| 14 ++ 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/src/site/site.xml b/src/site/site.xml index 1bb3df5..2e99eff 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -71,6 +71,7 @@ + diff --git a/src/site/xdoc/tutorials/bsp-tree.xml b/src/site/xdoc/tutorials/bsp-tree.xml index 00b1871..868994a 100644 --- a/src/site/xdoc/tutorials/bsp-tree.xml +++ b/src/site/xdoc/tutorials/bsp-tree.xml @@ -50,9 +50,10 @@ This tutorial gives a brief introduction to the https://en.wikipedia.org/wiki/Binary_space_partitioning;>BSP tree data structure and its use in -Commons Geometry. All sample code in this tutorial can be found in the -org.apache.commons.geometry.examples.tutorials.bsp package. +Commons Geometry. All code in this tutorial can be found in the +org.apache.commons.geometry.examples.tutorials.bsp package, which is included in the library +https://commons.apache.org/geometry/download_geometry.cgi;>source distribution. diff --git a/src/site/xdoc/tutorials/teapot.xml b/src/site/xdoc/tutorials/teapot.xml index 86e6b85..9028547 100644 --- a/src/site/xdoc/tutorials/teapot.xml +++ b/src/site/xdoc/tutorials/teapot.xml @@ -59,8 +59,9 @@ These geometric figures can be combined in various ways to produce new figures. In this tutorial, we will explore these features by constructing a 3D model of a teapot from scratch. The image below shows the result of our efforts. The final code for this tutorial can be found in the - - TeapotBuilder class. + + TeapotBuilder class, which is included in the library + https://commons.apache.org/geometry/download_geometry.cgi;>source distribution. diff --git a/src/site/xdoc/userguide/index.xml b/src/site/xdoc/userguide/index.xml index 4e2f93a..fdfc9c7 100644 --- a/src/site/xdoc/userguide/index.xml +++ b/src/site/xdoc/userguide/index.xml @@ -32,6 +32,9 @@ Overview + Example Modules + + Concepts @@ -134,6 +137,17 @@ + + +In addition to the modules above, the Commons Geometry +https://commons.apache.org/geometry/download_geometry.cgi;>source distribution contains example +code demonstrating library functionality and/or providing useful development utilities. These modules are not +part of the public API of the library and no guarantees are made concerning backwards compatibility. The +example module parent page contains a listing of the +available modules. + + +
[commons-geometry] annotated tag commons-geometry-1.0-rc1 created (now fb71c9d)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to annotated tag commons-geometry-1.0-rc1 in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. at fb71c9d (tag) tagging 61ea6625233d2e46b805f009ec9e6cb6340d5e65 (commit) by Matt Juntunen on Wed Aug 11 22:54:48 2021 -0400 - Log - RC1 -BEGIN PGP SIGNATURE- iQHMBAABCgA2FiEEfdU67+3xw9OStR6+NG9Pzs+3CxoFAmEUjXkYHG1hdHRqdW50 dW5lbkBhcGFjaGUub3JnAAoJEDRvT87PtwsarB4MAI6IH9jPNH9x/MdYjjR0qRwY 32xq0seGp5jaa/Om+oAefE5tup6Bl/NjG/hORFBFUzpcfWEPla3dVFSmcS7UnOr1 w55ZXhchUaXa8w6RloTDZz4PHUMetOO1iWf3gmdGBA80+q8Bg/wBhfhCWBap3Ga+ zzX+bn8CGRHa15cys50Plc1KmbVH91iQgDiq11PEu+KXdhAT0ifNoPQylZqrf+/l oGFXi0T4lcbk0taLwPIxhjFOi3DPgNp+vm3cY7LzKOKN31cW/TpESr09pLR/3Ak+ Z6HoLSpHitJg5HoTy7CemcmyJmEFaGw7n64NaWAB2C1MxkGncZorddIndGpqGtU1 ZVydqwlib62Dhjp7rd3HkY6OFs1RvqgI+L6Gxz88Ra/78sH0FEQrWevp6RPyAGAm DIGOF0wHqALjTMryTt+eugcIFG93FxrcXBQmdLAXWqcRTgmJbNcBqKHgk+ljgT1e nmFISyNmH2KGmd8DNwZpWZUqdk+3gaREwygxMeHM7w== =3sLk -END PGP SIGNATURE- --- No new revisions were added by this update.
[commons-geometry] branch 1.0-release updated (f0c0e75 -> 61ea662)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. from f0c0e75 preparing RC1 add 5b280dc adding example module section to userguide new 61ea662 Merge branch 'master' into 1.0-release The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: src/site/site.xml| 1 + src/site/xdoc/tutorials/bsp-tree.xml | 7 --- src/site/xdoc/tutorials/teapot.xml | 5 +++-- src/site/xdoc/userguide/index.xml| 14 ++ 4 files changed, 22 insertions(+), 5 deletions(-)
[commons-geometry] 01/01: Merge branch 'master' into 1.0-release
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch 1.0-release in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 61ea6625233d2e46b805f009ec9e6cb6340d5e65 Merge: f0c0e75 5b280dc Author: Matt Juntunen AuthorDate: Wed Aug 11 22:45:43 2021 -0400 Merge branch 'master' into 1.0-release src/site/site.xml| 1 + src/site/xdoc/tutorials/bsp-tree.xml | 7 --- src/site/xdoc/tutorials/teapot.xml | 5 +++-- src/site/xdoc/userguide/index.xml| 14 ++ 4 files changed, 22 insertions(+), 5 deletions(-)
svn commit: r49470 - in /dev/commons/geometry: 1.0-beta1-RC3/ 1.0-rc1/ 1.0-rc1/binaries/ 1.0-rc1/source/
Author: mattjuntunen Date: Thu Aug 12 03:41:20 2021 New Revision: 49470 Log: Distribution files for Commons Geometry v1.0 (RC1) Added: dev/commons/geometry/1.0-rc1/ dev/commons/geometry/1.0-rc1/CONTRIBUTING.md dev/commons/geometry/1.0-rc1/HEADER.html dev/commons/geometry/1.0-rc1/README.html dev/commons/geometry/1.0-rc1/RELEASE-NOTES.txt dev/commons/geometry/1.0-rc1/binaries/ dev/commons/geometry/1.0-rc1/binaries/HEADER.html dev/commons/geometry/1.0-rc1/binaries/README.html dev/commons/geometry/1.0-rc1/binaries/commons-geometry-1.0-bin.tar.gz (with props) dev/commons/geometry/1.0-rc1/binaries/commons-geometry-1.0-bin.tar.gz.asc dev/commons/geometry/1.0-rc1/binaries/commons-geometry-1.0-bin.tar.gz.sha512 dev/commons/geometry/1.0-rc1/binaries/commons-geometry-1.0-bin.zip (with props) dev/commons/geometry/1.0-rc1/binaries/commons-geometry-1.0-bin.zip.asc dev/commons/geometry/1.0-rc1/binaries/commons-geometry-1.0-bin.zip.sha512 dev/commons/geometry/1.0-rc1/source/ dev/commons/geometry/1.0-rc1/source/HEADER.html dev/commons/geometry/1.0-rc1/source/README.html dev/commons/geometry/1.0-rc1/source/commons-geometry-1.0-src.tar.gz (with props) dev/commons/geometry/1.0-rc1/source/commons-geometry-1.0-src.tar.gz.asc dev/commons/geometry/1.0-rc1/source/commons-geometry-1.0-src.tar.gz.sha512 dev/commons/geometry/1.0-rc1/source/commons-geometry-1.0-src.zip (with props) dev/commons/geometry/1.0-rc1/source/commons-geometry-1.0-src.zip.asc dev/commons/geometry/1.0-rc1/source/commons-geometry-1.0-src.zip.sha512 Removed: dev/commons/geometry/1.0-beta1-RC3/ Added: dev/commons/geometry/1.0-rc1/CONTRIBUTING.md == --- dev/commons/geometry/1.0-rc1/CONTRIBUTING.md (added) +++ dev/commons/geometry/1.0-rc1/CONTRIBUTING.md Thu Aug 12 03:41:20 2021 @@ -0,0 +1,115 @@ + + +Contributing to Apache Commons Geometry +== + +You have found a bug or you have an idea for a cool new feature? Contributing code is a great way to give something back to +the open source community. Before you dig right into the code there are a few guidelines that we need contributors to +follow so that we can have a chance of keeping on top of things. + +Getting Started +--- + ++ Make sure you have a [JIRA account](https://issues.apache.org/jira/). ++ Make sure you have a [GitHub account](https://github.com/signup/free). ++ If you're planning to implement a new feature it makes sense to discuss your changes on the [dev list](https://commons.apache.org/mail-lists.html) first. This way you can make sure you're not wasting your time on something that isn't considered to be in Apache Commons Geometry's scope. ++ Submit a [Jira Ticket][jira] for your issue, assuming one does not already exist. + + Clearly describe the issue including steps to reproduce when it is a bug. + + Make sure you fill in the earliest version that you know has the issue. ++ Find the corresponding [repository on GitHub](https://github.com/apache/?query=commons-), +[fork](https://help.github.com/articles/fork-a-repo/) and check out your forked repository. + +Making Changes +-- + ++ Create a _topic branch_ for your isolated work. + * Usually you should base your branch on the `master` or `trunk` branch. + * A good topic branch name can be the JIRA bug id plus a keyword, e.g. `GEOMETRY-123-InputStream`. + * If you have submitted multiple JIRA issues, try to maintain separate branches and pull requests. ++ Make commits of logical units. + * Make sure your commit messages are meaningful and in the proper format. Your commit message should contain the key of the JIRA issue. + * e.g. `GEOMETRY-123: Close input stream earlier` ++ Respect the original code style: + + Only use spaces for indentation. + + Create minimal diffs - disable _On Save_ actions like _Reformat Source Code_ or _Organize Imports_. If you feel the source code should be reformatted create a separate PR for this change first. + + Check for unnecessary whitespace with `git diff` -- check before committing. ++ Make sure you have added the necessary tests for your changes, typically in `src/test/java`. ++ Run all the tests with `mvn clean verify` to assure nothing else was accidentally broken. + +Making Trivial Changes +-- + +The JIRA tickets are used to generate the changelog for the next release. + +For changes of a trivial nature to comments and documentation, it is not always necessary to create a new ticket in JIRA. +In this case, it is appropriate to start the first line of a commit with '(doc)' instead of a ticket number. + + +Submitting Changes +-- + ++ Sign and submit the Apache [Contributor License Agreement][cla] if you haven't already. + * Note that small patches & typical bug fixes do not require a CLA as +clause 5 of the [Ap
[commons-geometry] branch master updated: Minor Changes:
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 1c95b9c Minor Changes: 1c95b9c is described below commit 1c95b9cdc15072a9b4448d15eea30916bcc75f4d Author: Arturo Bernal AuthorDate: Tue Oct 19 08:02:54 2021 +0200 Minor Changes: * Simplify conditions. * Fix javaDoc * Remove redundant initializer. --- .../org/apache/commons/geometry/euclidean/oned/RegionBSPTree1D.java| 2 +- pom.xml| 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/oned/RegionBSPTree1D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/oned/RegionBSPTree1D.java index d6fe32e..d174a23 100644 --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/oned/RegionBSPTree1D.java +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/oned/RegionBSPTree1D.java @@ -75,7 +75,7 @@ public final class RegionBSPTree1D extends AbstractRegionBSPTree + + Arturo Bernal +
[commons-geometry] branch master updated: using latest commons-rng syntax
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 4792f9c using latest commons-rng syntax 4792f9c is described below commit 4792f9cba313e3c4498e4f8a54b44c7f622d1590 Author: Matt Juntunen AuthorDate: Wed Sep 29 23:10:38 2021 -0400 using latest commons-rng syntax --- .../geometry/enclosing/euclidean/threed/SphereGeneratorTest.java | 9 - .../geometry/enclosing/euclidean/threed/WelzlEncloser3DTest.java | 9 - .../geometry/enclosing/euclidean/twod/DiskGeneratorTest.java | 9 - .../geometry/enclosing/euclidean/twod/WelzlEncloser2DTest.java | 2 +- .../apache/commons/geometry/euclidean/threed/Vector3DTest.java | 4 ++-- .../euclidean/threed/rotation/QuaternionRotationTest.java| 2 +- .../commons/geometry/euclidean/threed/shape/SphereTest.java | 2 +- .../examples/jmh/euclidean/AffineTransformMatrixPerformance.java | 8 .../geometry/examples/jmh/euclidean/CirclePerformance.java | 4 ++-- .../geometry/examples/jmh/euclidean/SpherePerformance.java | 4 ++-- .../geometry/examples/jmh/euclidean/VectorPerformance.java | 2 +- .../hull/euclidean/twod/ConvexHullGenerator2DAbstractTest.java | 2 +- 12 files changed, 27 insertions(+), 30 deletions(-) diff --git a/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/euclidean/threed/SphereGeneratorTest.java b/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/euclidean/threed/SphereGeneratorTest.java index df8fb86..cc012e5 100644 --- a/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/euclidean/threed/SphereGeneratorTest.java +++ b/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/euclidean/threed/SphereGeneratorTest.java @@ -178,16 +178,15 @@ class SphereGeneratorTest { @Test void testRandom() { // arrange -final UniformRandomProvider random = RandomSource.create(RandomSource.WELL_1024_A, - 0xd015982e9f31ee04L); -final UnitSphereSampler sr = new UnitSphereSampler(3, random); +final UniformRandomProvider random = RandomSource.WELL_1024_A.create(0xd015982e9f31ee04L); +final UnitSphereSampler sr = UnitSphereSampler.of(random, 3); for (int i = 0; i < 100; ++i) { final double d = 25 * random.nextDouble(); final double refRadius = 10 * random.nextDouble(); -final Vector3D refCenter = Vector3D.of(sr.nextVector()).multiply(d); +final Vector3D refCenter = Vector3D.of(sr.sample()).multiply(d); final List support = new ArrayList<>(); for (int j = 0; j < 5; ++j) { -support.add(Vector3D.Sum.of(refCenter).addScaled(refRadius, Vector3D.of(sr.nextVector())).get()); +support.add(Vector3D.Sum.of(refCenter).addScaled(refRadius, Vector3D.of(sr.sample())).get()); } // act diff --git a/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/euclidean/threed/WelzlEncloser3DTest.java b/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/euclidean/threed/WelzlEncloser3DTest.java index 9561982..544148a 100644 --- a/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/euclidean/threed/WelzlEncloser3DTest.java +++ b/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/euclidean/threed/WelzlEncloser3DTest.java @@ -111,22 +111,21 @@ class WelzlEncloser3DTest { @Test void testLargeSamples() { // arrange -final UniformRandomProvider random = RandomSource.create(RandomSource.WELL_1024_A, - 0x35ddecfc78131e1dL); -final UnitSphereSampler sr = new UnitSphereSampler(3, random); +final UniformRandomProvider random = RandomSource.WELL_1024_A.create(0x35ddecfc78131e1dL); +final UnitSphereSampler sr = UnitSphereSampler.of(random, 3); for (int k = 0; k < 50; ++k) { // define the reference sphere we want to compute final double d = 25 * random.nextDouble(); final double refRadius = 10 * random.nextDouble(); -final Vector3D refCenter = Vector3D.of(sr.nextVector()).multiply(d); +final Vector3D refCenter = Vector3D.of(sr.sample()).multiply(d); // set up a large sample inside the reference sphere final int nbPoints = random.nextInt(1000); final List points = new ArrayList<>(); for (int i = 0; i < nbPoints; ++i) { final double r = refRa
[commons-geometry] branch master updated: updating build for jdk17
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 497f2e9 updating build for jdk17 497f2e9 is described below commit 497f2e9241799ac5c257748802815f1ccb0ad1ec Author: Matt Juntunen AuthorDate: Thu Oct 7 07:22:26 2021 -0400 updating build for jdk17 --- .travis.yml | 10 +- pom.xml | 2 ++ 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/.travis.yml b/.travis.yml index 8583f34..d1854b2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,18 +16,10 @@ language: java sudo: false -matrix: - allow_failures: -# May not yet be supported by all plugins -- jdk: openjdk-ea - jdk: - openjdk8 - - openjdk10 - openjdk11 - - openjdk12 - - openjdk13 - - openjdk-ea + - openjdk17 script: - mvn diff --git a/pom.xml b/pom.xml index ab4efdf..07e67a1 100644 --- a/pom.xml +++ b/pom.xml @@ -73,6 +73,8 @@ false +0.15.4 + geometry https://svn.apache.org/repos/infra/websites/production/commons/content/proper/commons-geometry site-content
[commons-geometry] branch master updated: updating commons-rng and junit versions
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 9d0645b updating commons-rng and junit versions 9d0645b is described below commit 9d0645b2099706d4c0f549e9ebd84e631b4bb77f Author: Matt Juntunen AuthorDate: Fri Sep 24 14:21:10 2021 -0400 updating commons-rng and junit versions --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index fff2158..ab4efdf 100644 --- a/pom.xml +++ b/pom.xml @@ -97,8 +97,8 @@ 1.0 -1.3 -5.8.0-M1 +1.4 +5.8.1
[commons-geometry] branch master updated: updating notice year
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new ab1e427 updating notice year ab1e427 is described below commit ab1e427386503e39249d5dcdf5205ebce3635d0f Author: Matt Juntunen AuthorDate: Sun Jan 2 22:42:30 2022 -0500 updating notice year --- NOTICE | 2 +- commons-geometry-core/NOTICE| 2 +- commons-geometry-enclosing/NOTICE | 2 +- commons-geometry-euclidean/NOTICE | 2 +- commons-geometry-examples/NOTICE| 2 +- commons-geometry-examples/examples-jmh/NOTICE | 2 +- commons-geometry-examples/examples-tutorials/NOTICE | 2 +- commons-geometry-hull/NOTICE| 2 +- commons-geometry-io-core/NOTICE | 2 +- commons-geometry-io-euclidean/NOTICE| 2 +- commons-geometry-spherical/NOTICE | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/NOTICE b/NOTICE index 0bd5237..2d5c7e1 100644 --- a/NOTICE +++ b/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff --git a/commons-geometry-core/NOTICE b/commons-geometry-core/NOTICE index 0bd5237..2d5c7e1 100644 --- a/commons-geometry-core/NOTICE +++ b/commons-geometry-core/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff --git a/commons-geometry-enclosing/NOTICE b/commons-geometry-enclosing/NOTICE index 0bd5237..2d5c7e1 100644 --- a/commons-geometry-enclosing/NOTICE +++ b/commons-geometry-enclosing/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff --git a/commons-geometry-euclidean/NOTICE b/commons-geometry-euclidean/NOTICE index 0bd5237..2d5c7e1 100644 --- a/commons-geometry-euclidean/NOTICE +++ b/commons-geometry-euclidean/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff --git a/commons-geometry-examples/NOTICE b/commons-geometry-examples/NOTICE index 0bd5237..2d5c7e1 100644 --- a/commons-geometry-examples/NOTICE +++ b/commons-geometry-examples/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff --git a/commons-geometry-examples/examples-jmh/NOTICE b/commons-geometry-examples/examples-jmh/NOTICE index 0bd5237..2d5c7e1 100644 --- a/commons-geometry-examples/examples-jmh/NOTICE +++ b/commons-geometry-examples/examples-jmh/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff --git a/commons-geometry-examples/examples-tutorials/NOTICE b/commons-geometry-examples/examples-tutorials/NOTICE index 0bd5237..2d5c7e1 100644 --- a/commons-geometry-examples/examples-tutorials/NOTICE +++ b/commons-geometry-examples/examples-tutorials/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff --git a/commons-geometry-hull/NOTICE b/commons-geometry-hull/NOTICE index 0bd5237..2d5c7e1 100644 --- a/commons-geometry-hull/NOTICE +++ b/commons-geometry-hull/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff --git a/commons-geometry-io-core/NOTICE b/commons-geometry-io-core/NOTICE index 0bd5237..2d5c7e1 100644 --- a/commons-geometry-io-core/NOTICE +++ b/commons-geometry-io-core/NOTICE @@ -1,5 +1,5 @@ Apache Commons Geometry -Copyright 2021 The Apache Software Foundation +Copyright 2022 The Apache Software Foundation This product includes software developed at The Apache
[commons-geometry] branch master updated: GEOMETRY-141: add GeometryInternalUtils.sameInstance() method to document reference equality checks
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new d0479b8 GEOMETRY-141: add GeometryInternalUtils.sameInstance() method to document reference equality checks d0479b8 is described below commit d0479b80fa22b9a411cb475b628ce1395ac0c7a0 Author: Matt Juntunen AuthorDate: Sat Nov 20 17:40:10 2021 -0500 GEOMETRY-141: add GeometryInternalUtils.sameInstance() method to document reference equality checks --- .../core/internal/GeometryInternalUtils.java | 37 ++ .../AbstractConvexHyperplaneBoundedRegion.java | 3 +- .../core/partitioning/bsp/AbstractBSPTree.java | 9 +++--- .../euclidean/internal/AbstractPathConnector.java | 4 ++- .../twod/path/AbstractLinePathConnector.java | 3 +- .../spherical/twod/AbstractGreatArcConnector.java | 3 +- 6 files changed, 51 insertions(+), 8 deletions(-) diff --git a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/internal/GeometryInternalUtils.java b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/internal/GeometryInternalUtils.java new file mode 100644 index 000..8ba46f3 --- /dev/null +++ b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/internal/GeometryInternalUtils.java @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.commons.geometry.core.internal; + +/** Internal utility methods for commons-geometry. + */ +public final class GeometryInternalUtils { + +/** Utility class; no instantiation. */ +private GeometryInternalUtils() {} + +/** Return {@code true} if {@code a} is the same instance as {@code b}, as + * determined by the {@code ==} operator. This method exists primarily to + * document the fact that reference equality was intended and is not a + * programming error. + * @param a first instance + * @param b second instance + * @return {@code true} if the arguments are the exact same instance + */ +public static boolean sameInstance(final Object a, final Object b) { +return a == b; +} +} diff --git a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/AbstractConvexHyperplaneBoundedRegion.java b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/AbstractConvexHyperplaneBoundedRegion.java index 2ea2ca9..c789288 100644 --- a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/AbstractConvexHyperplaneBoundedRegion.java +++ b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/AbstractConvexHyperplaneBoundedRegion.java @@ -25,6 +25,7 @@ import java.util.function.Function; import org.apache.commons.geometry.core.Point; import org.apache.commons.geometry.core.RegionLocation; import org.apache.commons.geometry.core.Transform; +import org.apache.commons.geometry.core.internal.GeometryInternalUtils; /** Base class for convex hyperplane-bounded regions. This class provides generic implementations of many * algorithms related to convex regions. @@ -457,7 +458,7 @@ public abstract class AbstractConvexHyperplaneBoundedRegion, splitter = boundsIt.next(); ++splitterIdx; -if (currentBound == splitter) { +if (GeometryInternalUtils.sameInstance(currentBound, splitter)) { // do not split the bound with itself if (currentBoundIdx > splitterIdx) { diff --git a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractBSPTree.java b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractBSPTree.java index fc3c37b..9c7687f 100644 --- a/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractBSPTree.java +++ b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/partitioning/bsp/AbstractBSPTree.java @
[commons-geometry] branch master updated: updating checkstyle and pmd versions
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 630d9b6 updating checkstyle and pmd versions 630d9b6 is described below commit 630d9b643688bf9d35e6217fa5807c28b423caab Author: Matt Juntunen AuthorDate: Tue Nov 2 22:29:58 2021 -0400 updating checkstyle and pmd versions --- pom.xml | 4 ++-- src/main/resources/checkstyle/checkstyle-suppressions.xml | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 443a7bc..5e14c5d 100644 --- a/pom.xml +++ b/pom.xml @@ -54,9 +54,9 @@ 1.8 1.8 3.14.0 -6.36.0 +6.40.0 3.1.2 -8.41.1 +9.1 2.7.2 1.8 diff --git a/src/main/resources/checkstyle/checkstyle-suppressions.xml b/src/main/resources/checkstyle/checkstyle-suppressions.xml index a38fb2d..08f2784 100644 --- a/src/main/resources/checkstyle/checkstyle-suppressions.xml +++ b/src/main/resources/checkstyle/checkstyle-suppressions.xml @@ -36,6 +36,8 @@ + +
[commons-geometry] branch master updated (2e5c81c -> 61b29ca)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. from 2e5c81c ignoring spotbugs false positives new 79e741d GEOMETRY-136: removing DoubleFormats utility that has been moved to commons-text new 61b29ca fixing spotbugs issues in examples The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../jmh/io/core/DoubleFormatsPerformance.java | 183 - .../examples/jmh/io/core/package-info.java | 23 - .../examples/tutorials/bsp/BSPTreeSVGWriter.java | 64 +- .../io/core/utils/AbstractTextFormatWriter.java| 2 +- .../geometry/io/core/utils/DoubleFormats.java | 369 - .../geometry/io/core/utils/ParsedDouble.java | 514 .../core/utils/AbstractTextFormatWriterTest.java | 9 +- .../geometry/io/core/utils/DoubleFormatsTest.java | 894 - .../geometry/io/core/utils/ParsedDoubleTest.java | 464 --- .../threed/obj/ObjBoundaryWriteHandler3D.java | 3 +- .../txt/AbstractTextBoundaryWriteHandler3D.java| 3 +- .../threed/obj/ObjBoundaryWriteHandler3DTest.java | 30 +- .../io/euclidean/threed/obj/ObjWriterTest.java | 20 +- .../io/euclidean/threed/stl/TextStlWriterTest.java | 11 +- .../threed/txt/TextBoundaryWriteHandler3DTest.java | 17 +- .../threed/txt/TextFacetDefinitionWriterTest.java | 15 +- .../resources/spotbugs/spotbugs-exclude-filter.xml | 2 + 17 files changed, 115 insertions(+), 2508 deletions(-) delete mode 100644 commons-geometry-examples/examples-jmh/src/main/java/org/apache/commons/geometry/examples/jmh/io/core/DoubleFormatsPerformance.java delete mode 100644 commons-geometry-examples/examples-jmh/src/main/java/org/apache/commons/geometry/examples/jmh/io/core/package-info.java delete mode 100644 commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/utils/DoubleFormats.java delete mode 100644 commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/utils/ParsedDouble.java delete mode 100644 commons-geometry-io-core/src/test/java/org/apache/commons/geometry/io/core/utils/DoubleFormatsTest.java delete mode 100644 commons-geometry-io-core/src/test/java/org/apache/commons/geometry/io/core/utils/ParsedDoubleTest.java
[commons-geometry] 01/02: GEOMETRY-136: removing DoubleFormats utility that has been moved to commons-text
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 79e741d806d04a009cd48401d882cb17a5c027cd Author: Matthew Juntunen AuthorDate: Mon Jul 19 22:12:39 2021 -0400 GEOMETRY-136: removing DoubleFormats utility that has been moved to commons-text --- .../jmh/io/core/DoubleFormatsPerformance.java | 183 - .../examples/jmh/io/core/package-info.java | 23 - .../io/core/utils/AbstractTextFormatWriter.java| 2 +- .../geometry/io/core/utils/DoubleFormats.java | 369 - .../geometry/io/core/utils/ParsedDouble.java | 514 .../core/utils/AbstractTextFormatWriterTest.java | 9 +- .../geometry/io/core/utils/DoubleFormatsTest.java | 894 - .../geometry/io/core/utils/ParsedDoubleTest.java | 464 --- .../threed/obj/ObjBoundaryWriteHandler3D.java | 3 +- .../txt/AbstractTextBoundaryWriteHandler3D.java| 3 +- .../threed/obj/ObjBoundaryWriteHandler3DTest.java | 30 +- .../io/euclidean/threed/obj/ObjWriterTest.java | 20 +- .../io/euclidean/threed/stl/TextStlWriterTest.java | 11 +- .../threed/txt/TextBoundaryWriteHandler3DTest.java | 17 +- .../threed/txt/TextFacetDefinitionWriterTest.java | 15 +- 15 files changed, 81 insertions(+), 2476 deletions(-) diff --git a/commons-geometry-examples/examples-jmh/src/main/java/org/apache/commons/geometry/examples/jmh/io/core/DoubleFormatsPerformance.java b/commons-geometry-examples/examples-jmh/src/main/java/org/apache/commons/geometry/examples/jmh/io/core/DoubleFormatsPerformance.java deleted file mode 100644 index dc83014..000 --- a/commons-geometry-examples/examples-jmh/src/main/java/org/apache/commons/geometry/examples/jmh/io/core/DoubleFormatsPerformance.java +++ /dev/null @@ -1,183 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.commons.geometry.examples.jmh.io.core; - -import java.math.BigDecimal; -import java.math.RoundingMode; -import java.text.DecimalFormat; -import java.util.concurrent.TimeUnit; -import java.util.function.DoubleFunction; - -import org.apache.commons.geometry.examples.jmh.BenchmarkUtils; -import org.apache.commons.geometry.io.core.utils.DoubleFormats; -import org.apache.commons.rng.simple.RandomSource; -import org.openjdk.jmh.annotations.Benchmark; -import org.openjdk.jmh.annotations.BenchmarkMode; -import org.openjdk.jmh.annotations.Fork; -import org.openjdk.jmh.annotations.Level; -import org.openjdk.jmh.annotations.Measurement; -import org.openjdk.jmh.annotations.Mode; -import org.openjdk.jmh.annotations.OutputTimeUnit; -import org.openjdk.jmh.annotations.Param; -import org.openjdk.jmh.annotations.Scope; -import org.openjdk.jmh.annotations.Setup; -import org.openjdk.jmh.annotations.State; -import org.openjdk.jmh.annotations.Warmup; -import org.openjdk.jmh.infra.Blackhole; - -/** Benchmarks for the {@link DoubleFormats} class. - */ -@BenchmarkMode(Mode.AverageTime) -@OutputTimeUnit(TimeUnit.NANOSECONDS) -@Warmup(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) -@Measurement(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) -@Fork(value = 1, jvmArgs = {"-server", "-Xms512M", "-Xmx512M"}) -public class DoubleFormatsPerformance { - -/** Benchmark input providing a source of random double values. */ -@State(Scope.Thread) -public static class DoubleInput { - -/** The number of doubles in the input array. */ -@Param({"1"}) -private int size; - -/** Minimum base 2 exponent for random input doubles. */ -@Param("-20") -private int minExp; - -/** Maximum base 2 exponent for random input doubles. */ -@Param("20") -private int maxExp; - -/** Double input array. */ -private double[] input; - -/** Get the input doubles. - * @return the input doubles - */ -public double[] getInput() { -return input; -} - -/** Set up the instance for the benchmark. */ -
[commons-geometry] 02/02: fixing spotbugs issues in examples
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 61b29ca4dde8b2de81f3a8dc6e36fa6a45b59669 Author: Matthew Juntunen AuthorDate: Mon Jul 19 22:13:05 2021 -0400 fixing spotbugs issues in examples --- .../examples/tutorials/bsp/BSPTreeSVGWriter.java | 64 +++--- .../resources/spotbugs/spotbugs-exclude-filter.xml | 2 + 2 files changed, 34 insertions(+), 32 deletions(-) diff --git a/commons-geometry-examples/examples-tutorials/src/main/java/org/apache/commons/geometry/examples/tutorials/bsp/BSPTreeSVGWriter.java b/commons-geometry-examples/examples-tutorials/src/main/java/org/apache/commons/geometry/examples/tutorials/bsp/BSPTreeSVGWriter.java index b144418..e90bb84 100644 --- a/commons-geometry-examples/examples-tutorials/src/main/java/org/apache/commons/geometry/examples/tutorials/bsp/BSPTreeSVGWriter.java +++ b/commons-geometry-examples/examples-tutorials/src/main/java/org/apache/commons/geometry/examples/tutorials/bsp/BSPTreeSVGWriter.java @@ -113,35 +113,38 @@ public class BSPTreeSVGWriter { ".tree-path { fill: none; stroke: gray; stroke-width: 1; } " + ".inside-node { font-weight: bold; }"; -/** Geometry bounds; only geometry within these bounds is rendered. */ -private final Bounds2D bounds; - /** The width of the SVG. */ -private final int width = 750; +private static final int WIDTH = 750; /** The height of the SVG. */ -private final int height = 375; +private static final int HEIGHT = 375; /** The margin used in the SVG. */ -private final int margin = 5; +private static final int MARGIN = 5; /** Amount of the overall width of the SVG to use for the geometry area. */ -private final double geometryAreaWidthFactor = 0.5; +private static final double GEOMETRY_AREA_WIDTH_FACTOR = 0.5; /** Amount of the overall width of the SVG to use for the tree structure area. */ -private final double treeAreaWidthFactor = 1.0 - geometryAreaWidthFactor; +private static final double TREE_AREA_WIDTH_FACTOR = 1.0 - GEOMETRY_AREA_WIDTH_FACTOR; /** Angle that arrow heads on lines make with the direction of the line. */ -private final double arrowAngle = 0.8 * Math.PI; +private static final double ARROW_ANGLE = 0.8 * Math.PI; /** Length of arrow head lines. */ -private final double arrowLength = 8; +private static final double ARROW_LENGTH = 8; /** Distance between levels of the tree in the tree structure display. */ -private final double treeVerticalSpacing = 45; +private static final double TREE_VERTICAL_SPACING = 45; /** Line end margin used in the lines between nodes in the tree structure display. */ -private final double treeLineMargin = 10; +private static final double TREE_LINE_MARGIN = 10; + +/** Precision context used for floating point comparisons. */ +private static final Precision.DoubleEquivalence PRECISION = Precision.doubleEquivalenceOfEpsilon(1e-6); + +/** Geometry bounds; only geometry within these bounds is rendered. */ +private final Bounds2D bounds; /** Factor determining how much of the available horizontal width for a node should be used to * offset it from its parent. @@ -151,9 +154,6 @@ public class BSPTreeSVGWriter { /** Minimum horizontal offset for tree nodes from their parents. */ private double treeParentXOffsetMin = 0; -/** Precision context used for floating point comparisons. */ -private final Precision.DoubleEquivalence precision = Precision.doubleEquivalenceOfEpsilon(1e-6); - /** Construct a new instance that will render regions within the given bounds. * @param bounds bounds used to determine what output */ @@ -219,8 +219,8 @@ public class BSPTreeSVGWriter { doc.appendChild(root); root.setAttribute("version", SVG_VERSION); -root.setAttribute(WIDTH_ATTR, String.valueOf(width)); -root.setAttribute(HEIGHT_ATTR, String.valueOf(height)); +root.setAttribute(WIDTH_ATTR, String.valueOf(WIDTH)); +root.setAttribute(HEIGHT_ATTR, String.valueOf(HEIGHT)); // add a defs element for later use final Element defs = svgElement("defs", doc); @@ -261,10 +261,10 @@ public class BSPTreeSVGWriter { */ private void writeTreeGeometryArea(final RegionBSPTree2D tree, final Map nodeNames, final Element root, final Element defs, final Document doc) { -final double geometrySvgX = margin; -final double geometrySvgY = margin; -final double geometrySvgWidth = (geometryAreaWidthFactor * width) - (2 * margin); -final double geometrySvgHeight = height - (2 * margin); +final double geometrySvgX = MARGIN; +
svn commit: r1891636 - /commons/cms-site/trunk/doap/doap_numbers.rdf
Author: mattjuntunen Date: Sun Jul 18 05:40:45 2021 New Revision: 1891636 URL: http://svn.apache.org/viewvc?rev=1891636=rev Log: Commons Numbers v1.0 released (from RC1) Modified: commons/cms-site/trunk/doap/doap_numbers.rdf Modified: commons/cms-site/trunk/doap/doap_numbers.rdf URL: http://svn.apache.org/viewvc/commons/cms-site/trunk/doap/doap_numbers.rdf?rev=1891636=1891635=1891636=diff == --- commons/cms-site/trunk/doap/doap_numbers.rdf (original) +++ commons/cms-site/trunk/doap/doap_numbers.rdf Sun Jul 18 05:40:45 2021 @@ -43,6 +43,11 @@ commons-numbers +2021-07-17 +1.0 + + +commons-numbers 2020-04-08 1.0-beta1
[commons-text] branch master updated: TEXT-207: adding DoubleFormat utility
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-text.git The following commit(s) were added to refs/heads/master by this push: new ff372c2 TEXT-207: adding DoubleFormat utility ff372c2 is described below commit ff372c2dd5400c636433ac1d40c885692f7195ac Author: Matt Juntunen AuthorDate: Mon Jul 5 22:59:03 2021 -0400 TEXT-207: adding DoubleFormat utility --- pom.xml| 68 +- src/changes/changes.xml| 13 +- .../apache/commons/text/numbers/DoubleFormat.java | 730 .../apache/commons/text/numbers/ParsedDecimal.java | 723 .../apache/commons/text/numbers/package-info.java | 24 + .../commons/text/jmh/DoubleFormatPerformance.java | 273 .../commons/text/numbers/DoubleFormatTest.java | 595 + .../commons/text/numbers/ParsedDecimalTest.java| 732 + 8 files changed, 3149 insertions(+), 9 deletions(-) diff --git a/pom.xml b/pom.xml index e402e68..6f0f5a4 100644 --- a/pom.xml +++ b/pom.xml @@ -52,23 +52,26 @@ 4.3.0 4.3.0 - + 3.11.2 0.8.6 3.2.0 21.1.0 +1.3 0.15.3 false true +1.32 + 1.9 RC1 true scm:svn:https://dist.apache.org/repos/dist/dev/commons/${commons.componentid} -Gary Gregory +Gary Gregory 86fdc7e2a11262cb @@ -116,6 +119,24 @@ ${graalvm.version} test + + org.apache.commons + commons-rng-simple + ${commons.rng.version} + test + + + org.openjdk.jmh + jmh-core + ${jmh.version} + test + + + org.openjdk.jmh + jmh-generator-annprocess + ${jmh.version} + test + @@ -160,6 +181,7 @@ ${basedir}/checkstyle-suppressions.xml ${basedir}/checkstyle-suppressions.xml true + **/generated/**.java,**/jmh_generated/**.java @@ -243,6 +265,7 @@ ${basedir}/checkstyle-suppressions.xml ${basedir}/checkstyle-suppressions.xml true + **/generated/**.java,**/jmh_generated/**.java @@ -355,7 +378,7 @@ ggregory at apache.org https://www.garygregory.com The Apache Software Foundation - https://www.apache.org/ + https://www.apache.org/ PMC Member @@ -513,5 +536,44 @@ + + benchmark + +true +org.apache + + + + +org.codehaus.mojo +exec-maven-plugin +3.0.0 + + +benchmark +test + + exec + + + test + java + +-classpath + +org.openjdk.jmh.Main +-rf +json +-rff +target/jmh-result.${benchmark}.json +${benchmark} + + + + + + + + diff --git a/src/changes/changes.xml b/src/changes/changes.xml index a7328fa..034a7a6 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -52,6 +52,7 @@ The type attribute can be add,update,fix,remove. StringSubstitutor map constructor throws NPE on 1.9 with null map. JaroWinklerDistance returns the same values as JaroWinklerSimilarity. +Add DoubleFormat utility. Document negative limit for WordUtils abbreviate method Speed up LevenshteinDistance with threshold by exiting early Release Notes page hasn't been updated for 1.9 release yet. @@ -98,7 +99,7 @@ The type attribute can be add,update,fix,remove. [javadoc] Fix compiler warnings in Java code example in Javadoc #124. Update from Apache Commons Lang 3.9 to 3.11. Add StringMatcher.size(). -Refactor TextStringBuilder.readFrom(Readable), extracting readFrom(CharBuffer) and readFrom(Reader). +Refactor TextStringBuilder.readFrom(Readable), extracting readFrom(CharBuffer) and readFrom(Reader). Add BiStringLookup and implementation BiFunctionStringLookup. Add org.apache.commons.text.StringSubstitutor.StringSubstitutor(StringSubstitutor). Add org.apache.commons.text.TextStringBuilder.TextStringBuilder(CharSequence). @@ -128,9 +129,9 @@ The type attribute can be add,update,fix,remove. [build] checkstyle.version 8.27 -> 8.33. [build] org.apache.commons:commons-parent 48 -> 51. [build] maven-pmd-plugin 3.12.0 -> 3.13.0. -[build] org.mockito 3.3.3 -> 3.4.4.
[commons-numbers] branch master updated: preparing for 1.1-SNAPSHOT development after 1.0 release
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-numbers.git The following commit(s) were added to refs/heads/master by this push: new 3b025b8 preparing for 1.1-SNAPSHOT development after 1.0 release 3b025b8 is described below commit 3b025b8e061706b76826cf79036ef2ee30ebabe7 Author: Matt Juntunen AuthorDate: Sun Jul 18 02:13:07 2021 -0400 preparing for 1.1-SNAPSHOT development after 1.0 release --- README.md | 2 +- RELEASE-NOTES.txt | 71 ++- commons-numbers-angle/README.md| 4 +- commons-numbers-angle/pom.xml | 6 +- commons-numbers-angle/src/site/site.xml| 2 + commons-numbers-arrays/README.md | 4 +- commons-numbers-arrays/pom.xml | 6 +- commons-numbers-arrays/src/site/site.xml | 2 + commons-numbers-combinatorics/README.md| 4 +- commons-numbers-combinatorics/pom.xml | 6 +- commons-numbers-combinatorics/src/site/site.xml| 2 + commons-numbers-complex-streams/README.md | 2 +- commons-numbers-complex-streams/pom.xml| 2 +- commons-numbers-complex/README.md | 4 +- commons-numbers-complex/pom.xml| 6 +- commons-numbers-complex/src/site/site.xml | 2 + commons-numbers-core/README.md | 4 +- commons-numbers-core/pom.xml | 6 +- commons-numbers-core/src/site/site.xml | 2 + commons-numbers-examples/examples-jmh/pom.xml | 2 +- commons-numbers-examples/pom.xml | 2 +- commons-numbers-field/README.md| 4 +- commons-numbers-field/pom.xml | 6 +- commons-numbers-field/src/site/site.xml| 2 + commons-numbers-fraction/README.md | 4 +- commons-numbers-fraction/pom.xml | 6 +- commons-numbers-fraction/src/site/site.xml | 2 + commons-numbers-gamma/README.md| 4 +- commons-numbers-gamma/pom.xml | 6 +- commons-numbers-gamma/src/site/site.xml| 2 + commons-numbers-primes/README.md | 4 +- commons-numbers-primes/pom.xml | 6 +- commons-numbers-primes/src/site/site.xml | 2 + commons-numbers-quaternion/README.md | 4 +- commons-numbers-quaternion/pom.xml | 6 +- commons-numbers-quaternion/src/site/site.xml | 2 + commons-numbers-rootfinder/README.md | 4 +- commons-numbers-rootfinder/pom.xml | 6 +- commons-numbers-rootfinder/src/site/site.xml | 2 + dist-archive/pom.xml | 2 +- pom.xml| 17 ++-- src/changes/changes.xml| 30 +-- .../resources/release-notes/RELEASE-NOTES-1.0.txt | 100 + src/site/xdoc/download_numbers.xml | 26 +++--- src/site/xdoc/release-history.xml | 3 + 45 files changed, 292 insertions(+), 99 deletions(-) diff --git a/README.md b/README.md index aaa8a9f..e2bdb1e 100644 --- a/README.md +++ b/README.md @@ -81,7 +81,7 @@ Alternatively you can pull it from the central Maven repositories: org.apache.commons commons-numbers-parent - 1.0-beta1 + 1.0 ``` diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index 9cdd9f6..b7f9398 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -1,4 +1,72 @@ + Apache Commons Numbers 1.0 RELEASE NOTES + +The Apache Commons Numbers team is pleased to announce the release of +commons-numbers-parent-1.0 + +The Apache Commons Numbers project provides number types and utilities. + +This is the first official release of Apache Commons Numbers. + +Apache Commons Numbers 1.0 contains the following library modules: + commons-numbers-angle (requires Java 8+) + commons-numbers-arrays (requires Java 8+) + commons-numbers-combinatorics (requires Java 8+) + commons-numbers-complex (requires Java 8+) + commons-numbers-core (requires Java 8+) + commons-numbers-field (requires Java 8+) + commons-numbers-fraction (requires Java 8+) + commons-numbers-gamma (requires Java 8+) + commons-numbers-primes (requires Java 8+) + commons-numbers-quaternion (requires Java 8+) + commons-numbers-rootfinder (requires Java 8+) +N.B. the Performance testing module requires Java 9+. (The unit tests require Java 8+) + +Changes in this version include: + + +Fixed Bugs: +o NUMBERS-153: Use iterative implementation of "trigamma" function. Thanks to Dmitriy Golovashkin +for reporting. Thanks to Gilles Sadowski. +o NUMBERS-150: "Fraction/BigFraction&
[commons-numbers] branch master updated (4e6fadd -> 5994f5a)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/commons-numbers.git. from 4e6fadd updating complex-stream module version new ac80b7f adding bc version new 5994f5a updating release instructions The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: doc/release/copyLongTermJavadoc.sh | 62 +++ doc/release/release.howto.txt | 841 - pom.xml| 1 + 3 files changed, 901 insertions(+), 3 deletions(-) create mode 100755 doc/release/copyLongTermJavadoc.sh
[commons-numbers] 02/02: updating release instructions
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-numbers.git commit 5994f5a89398f47532d9e7335eb17c5dfc5237de Author: Matt Juntunen AuthorDate: Sun Jul 18 02:50:21 2021 -0400 updating release instructions --- doc/release/copyLongTermJavadoc.sh | 62 +++ doc/release/release.howto.txt | 841 - 2 files changed, 900 insertions(+), 3 deletions(-) diff --git a/doc/release/copyLongTermJavadoc.sh b/doc/release/copyLongTermJavadoc.sh new file mode 100755 index 000..4583a5a --- /dev/null +++ b/doc/release/copyLongTermJavadoc.sh @@ -0,0 +1,62 @@ +#!/bin/bash +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -e + +# List of all modules paths for which the long-term Javadoc links must be copied +# We keep only the official distribution (i.e. _not_ "commons-rng-examples"). +MODULES=(commons-numbers-angle \ + commons-numbers-arrays \ + commons-numbers-combinatorics \ + commons-numbers-complex \ + commons-numbers-core \ + commons-numbers-field \ + commons-numbers-fraction \ + commons-numbers-gamma \ + commons-numbers-primes \ + commons-numbers-quaternion \ + commons-numbers-rootfinder) + +while getopts r:v: option +do +case "${option}" +in +r) REVISION=${OPTARG};; +v) VERSION=${OPTARG};; +esac +done + +if [ "$REVISION" == "" ]; then +echo "Missing SVN revision: Specify '-r '"; +exit 1; +fi + +if [ "$VERSION" == "" ]; then +echo "Missing component version: Specify '-v '"; +exit 1; +fi + +for mod in ${MODULES[@]}; do +echo $mod +CPLIST+=" cp $REVISION $mod/apidocs $mod/javadocs/api-$VERSION" +done + +echo -n "Copying long-term links ... " +svnmucc -U https://svn.apache.org/repos/infra/websites/production/commons/content/proper/commons-numbers \ +$CPLIST \ +-m "Commons Numbers: Copying $VERSION apidocs to versioned directories for the long-term links." +echo "Done." diff --git a/doc/release/release.howto.txt b/doc/release/release.howto.txt index 1d407f6..2ceea59 100644 --- a/doc/release/release.howto.txt +++ b/doc/release/release.howto.txt @@ -14,6 +14,841 @@ # See the License for the specific language governing permissions and # limitations under the License. -The Commons RNG project contains up-to-date information for a step-by-step -recipe to create release candidate. Please refer to it: - https://gitbox.apache.org/repos/asf?p=commons-rng.git;a=blob;f=doc/release/release.howto.txt +This document is meant as a step-by-step recipe to achieve the release of +the Commons Numbers component. Note that more general instructions valid +for all components, including [numbers], are available on the Apache Commons +main site: at "https://commons.apache.org/releases/prepare.html; and +"https://commons.apache.org/releases/release.html;. + +When performing a release it is recommended to make notes of any changes that +were required to those detailed in this document. The changes can be incorporated +after a successful release. + +The files "settings-security.xml" and "settings.xml" are minimal examples +of files used by maven to pick up authentication credentials needed to +connect to remote servers and to cryptographically sign the artifacts. + +Release preparation is done on the release manager local host in a branch. +As branches deletion is now forbidden at Apache, we will use a specific +release branch for every version. +The branch will be simply named X.Y-release, with X.Y being the version number. +The branch will be used to store the release specific parts (i.e. the pom changes with +the version number, the release date in the site and so on). Everything else and in +particular code change that will remain in the component after the release must be +committed to the master branch (or version branch). The release candidate branch will +be c
[commons-numbers] 01/02: adding bc version
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-numbers.git commit ac80b7fa62997bb0c25eed68ad22c31ac2338084 Author: Matt Juntunen AuthorDate: Sun Jul 18 02:50:00 2021 -0400 adding bc version --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index f7a0c6a..3504924 100644 --- a/pom.xml +++ b/pom.xml @@ -46,6 +46,7 @@ org.apache.commons.numbers 1.0 +${commons.release.version} (requires Java 8+) RC1 -bin
[commons-geometry] branch master updated: updating dependencies
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 515a209 updating dependencies 515a209 is described below commit 515a209324721af93891995d7377ad4882a95570 Author: Matt Juntunen AuthorDate: Sun Jul 18 11:53:44 2021 -0400 updating dependencies --- pom.xml | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index d1d1673..340639f 100644 --- a/pom.xml +++ b/pom.xml @@ -53,16 +53,16 @@ 1.8 1.8 3.14.0 -6.35.0 +6.36.0 3.1.2 8.41.1 2.7.2 ${basedir} -4.2.3 +4.3.0 -4.2.3 +4.3.0 -1.0-SNAPSHOT +1.0 1.3 5.8.0-M1
svn commit: r1891635 - /commons/cms-site/trunk/conf/component_releases.properties
Author: mattjuntunen Date: Sun Jul 18 05:37:22 2021 New Revision: 1891635 URL: http://svn.apache.org/viewvc?rev=1891635=rev Log: Commons Numbers v1.0 was released (from RC1) Modified: commons/cms-site/trunk/conf/component_releases.properties Modified: commons/cms-site/trunk/conf/component_releases.properties URL: http://svn.apache.org/viewvc/commons/cms-site/trunk/conf/component_releases.properties?rev=1891635=1891634=1891635=diff == --- commons/cms-site/trunk/conf/component_releases.properties (original) +++ commons/cms-site/trunk/conf/component_releases.properties Sun Jul 18 05:37:22 2021 @@ -60,8 +60,8 @@ mathVersion=3.5 mathReleased=2015-04-17 netVersion=3.8.0 netReleased=2020-02-13 -numbersVersion=1.0-beta1 -numbersReleased=2020-04-08 +numbersVersion=1.0 +numbersReleased=2021-07-17 ognlVersion=4.0 ognlReleased=2013-??-?? poolVersion=2.10.0
[commons-math] branch master updated: MATH-1605: removing unneeded geometry example
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-math.git The following commit(s) were added to refs/heads/master by this push: new dbec0bd MATH-1605: removing unneeded geometry example dbec0bd is described below commit dbec0bd7a77d70d9a8c6c8039a818fe0a5fdbf52 Author: Matt Juntunen AuthorDate: Sun Jul 18 12:05:09 2021 -0400 MATH-1605: removing unneeded geometry example --- .../math4/userguide/geometry/GeometryExample.java | 282 - 1 file changed, 282 deletions(-) diff --git a/src/userguide/java/org/apache/commons/math4/userguide/geometry/GeometryExample.java b/src/userguide/java/org/apache/commons/math4/userguide/geometry/GeometryExample.java deleted file mode 100644 index 8bdb1ab..000 --- a/src/userguide/java/org/apache/commons/math4/userguide/geometry/GeometryExample.java +++ /dev/null @@ -1,282 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.commons.math4.userguide.geometry; - -import java.awt.BorderLayout; -import java.awt.Color; -import java.awt.Component; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.geom.Point2D; -import java.util.ArrayList; -import java.util.List; - -import javax.swing.BorderFactory; -import javax.swing.JButton; -import javax.swing.JComponent; -import javax.swing.JPanel; -import javax.swing.JSplitPane; - - -import org.apache.commons.rng.UniformRandomProvider; -import org.apache.commons.rng.simple.RandomSource; -import org.apache.commons.geometry.core.precision.EpsilonDoublePrecisionContext; -import org.apache.commons.geometry.euclidean.twod.Segment; -import org.apache.commons.geometry.euclidean.twod.Vector2D; -import org.apache.commons.geometry.enclosing.Encloser; -import org.apache.commons.geometry.enclosing.EnclosingBall; -import org.apache.commons.geometry.enclosing.WelzlEncloser; -import org.apache.commons.geometry.enclosing.euclidean.twod.DiskGenerator; -import org.apache.commons.geometry.enclosing.euclidean.twod.WelzlEncloser2D; -import org.apache.commons.geometry.hull.euclidean.twod.ConvexHull2D; -import org.apache.commons.geometry.hull.euclidean.twod.ConvexHullGenerator2D; -import org.apache.commons.geometry.hull.euclidean.twod.MonotoneChain; - -import org.apache.commons.math4.util.FastMath; -import org.apache.commons.math4.userguide.ExampleUtils; -import org.apache.commons.math4.userguide.ExampleUtils.ExampleFrame; -import org.piccolo2d.PCamera; -import org.piccolo2d.PCanvas; -import org.piccolo2d.PNode; -import org.piccolo2d.event.PBasicInputEventHandler; -import org.piccolo2d.event.PInputEvent; -import org.piccolo2d.event.PMouseWheelZoomEventHandler; -import org.piccolo2d.nodes.PPath; -import org.piccolo2d.nodes.PText; - -/** - * Simple example illustrating some parts of the geometry package. - * - * TODO: - * - select tolerance level - * - allow editing of the point set - */ -public class GeometryExample { - -public static List createRandomPoints(int size) { -final UniformRandomProvider random = RandomSource.create(RandomSource.MT); - -// create the cloud container -List points = new ArrayList<>(size); -// fill the cloud with a random distribution of points -for (int i = 0; i < size; i++) { -points.add(Vector2D.of(FastMath.round(random.nextDouble() * 400 + 100), -FastMath.round(random.nextDouble() * 400 + 100))); -} - -return points; -} - -public static List createCircle(int samples) { -List points = new ArrayList<>(); -final Vector2D center = Vector2D.of(300, 300); -double range = 2.0 * FastMath.PI; -double step = range / (samples + 1); -for (double angle = 0; angle < range; angle += step) { -Vector2D circle = Vector2D.of(FastMath.cos(angle), FastMath.sin(angle)); -points.add(circle.multiply(200).add(center)); -} - -return points; -} - -public static List createCross() { -List points = new ArrayList<>(); -
[commons-numbers] branch master updated: updating complex-stream module version
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-numbers.git The following commit(s) were added to refs/heads/master by this push: new 4e6fadd updating complex-stream module version 4e6fadd is described below commit 4e6faddc45096699c17d5b191993433245a9c7d9 Author: Matt Juntunen AuthorDate: Sun Jul 18 02:15:26 2021 -0400 updating complex-stream module version --- commons-numbers-complex-streams/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commons-numbers-complex-streams/pom.xml b/commons-numbers-complex-streams/pom.xml index 4478fca..eb522f4 100644 --- a/commons-numbers-complex-streams/pom.xml +++ b/commons-numbers-complex-streams/pom.xml @@ -23,7 +23,7 @@ org.apache.commons commons-numbers-parent -1.0 +1.1-SNAPSHOT commons-numbers-complex-streams
[commons-geometry] branch master updated: ignoring spotbugs false positives
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new 2e5c81c ignoring spotbugs false positives 2e5c81c is described below commit 2e5c81c8fe7a4bb01118daf8fa8b4745fdb040a5 Author: Matt Juntunen AuthorDate: Mon Jul 19 07:53:26 2021 -0400 ignoring spotbugs false positives --- .../resources/spotbugs/spotbugs-exclude-filter.xml | 62 -- 1 file changed, 59 insertions(+), 3 deletions(-) diff --git a/src/main/resources/spotbugs/spotbugs-exclude-filter.xml b/src/main/resources/spotbugs/spotbugs-exclude-filter.xml index abff0bd..8ed7759 100644 --- a/src/main/resources/spotbugs/spotbugs-exclude-filter.xml +++ b/src/main/resources/spotbugs/spotbugs-exclude-filter.xml @@ -22,10 +22,66 @@ put here to instruct spotbugs it must ignore them. --> https://github.com/spotbugs/filter/3.1.0; +xmlns="https://github.com/spotbugs/filter/3.0.0; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; -xsi:schemaLocation="https://github.com/spotbugs/filter/3.1.0 https://raw.githubusercontent.com/spotbugs/spotbugs/3.1.0/spotbugs/etc/findbugsfilter.xsd;> +xsi:schemaLocation="https://github.com/spotbugs/filter/3.0.0 https://raw.githubusercontent.com/spotbugs/spotbugs/3.1.0/spotbugs/etc/findbugsfilter.xsd;> - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
[commons-geometry] branch master updated: GEOMETRY-63: more minor SonarQube fixes
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new c4f1da8 GEOMETRY-63: more minor SonarQube fixes c4f1da8 is described below commit c4f1da892bdd02ce092c661398f58be501ee Author: Matt Juntunen AuthorDate: Thu Jul 22 22:12:54 2021 -0400 GEOMETRY-63: more minor SonarQube fixes --- .../AbstractConvexHyperplaneBoundedRegionTest.java | 17 - .../geometry/core/partitioning/BoundaryListTest.java | 4 +++- .../commons/geometry/enclosing/EnclosingBallTest.java | 3 ++- .../geometry/euclidean/oned/RegionBSPTree1D.java | 2 +- .../threed/AbstractEmbeddedRegionPlaneSubset.java | 2 +- .../geometry/euclidean/threed/RegionBSPTree3D.java | 4 ++-- .../euclidean/threed/line/LineConvexSubset3D.java | 18 -- .../geometry/euclidean/twod/RegionBSPTree2D.java | 4 ++-- .../commons/geometry/euclidean/oned/IntervalTest.java | 10 +- .../geometry/euclidean/threed/Bounds3DTest.java| 4 ++-- .../commons/geometry/euclidean/twod/Bounds2DTest.java | 4 ++-- 11 files changed, 32 insertions(+), 40 deletions(-) diff --git a/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/AbstractConvexHyperplaneBoundedRegionTest.java b/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/AbstractConvexHyperplaneBoundedRegionTest.java index cee1308..f8cf67f 100644 --- a/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/AbstractConvexHyperplaneBoundedRegionTest.java +++ b/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/AbstractConvexHyperplaneBoundedRegionTest.java @@ -39,9 +39,12 @@ class AbstractConvexHyperplaneBoundedRegionTest { void testBoundaries_areUnmodifiable() { // arrange final StubRegion region = new StubRegion(new ArrayList<>()); +final List boundaries = region.getBoundaries(); +final TestLineSegment span = TestLine.X_AXIS.span(); + // act/assert -Assertions.assertThrows(UnsupportedOperationException.class, () -> region.getBoundaries().add(TestLine.X_AXIS.span())); +Assertions.assertThrows(UnsupportedOperationException.class, () -> boundaries.add(span)); } @Test @@ -628,13 +631,17 @@ class AbstractConvexHyperplaneBoundedRegionTest { @Test void testConvexRegionBoundaryBuilder() { -// act/assert -Assertions.assertThrows(IllegalArgumentException.class, () -> StubRegion.fromBounds(Arrays.asList(TestLine.X_AXIS, TestLine.X_AXIS.reverse(; -Assertions.assertThrows(IllegalArgumentException.class, () -> StubRegion.fromBounds(Arrays.asList( +// arrange +final List opposites = Arrays.asList(TestLine.X_AXIS, TestLine.X_AXIS.reverse()); +final List nonConvex = Arrays.asList( TestLine.X_AXIS, TestLine.Y_AXIS, new TestLine(new TestPoint2D(1, 0), new TestPoint2D(0, -1)), -new TestLine(new TestPoint2D(1, 0), new TestPoint2D(0, -2); +new TestLine(new TestPoint2D(1, 0), new TestPoint2D(0, -2))); + +// act/assert +Assertions.assertThrows(IllegalArgumentException.class, () -> StubRegion.fromBounds(opposites)); +Assertions.assertThrows(IllegalArgumentException.class, () -> StubRegion.fromBounds(nonConvex)); } @Test diff --git a/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/BoundaryListTest.java b/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/BoundaryListTest.java index 08e7c0f..8940cfd 100644 --- a/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/BoundaryListTest.java +++ b/commons-geometry-core/src/test/java/org/apache/commons/geometry/core/partitioning/BoundaryListTest.java @@ -52,9 +52,11 @@ class BoundaryListTest { boundaries.add(new TestLineSegment(0, 0, 1, 1)); final BoundaryList list = new BoundaryList<>(boundaries); +final List items = list.getBoundaries(); +final TestLineSegment segment = new TestLineSegment(1, 1, 0, 2); // act/assert -Assertions.assertThrows(UnsupportedOperationException.class, () -> list.getBoundaries().add(new TestLineSegment(1, 1, 0, 2))); +Assertions.assertThrows(UnsupportedOperationException.class, () -> items.add(segment)); } @Test diff --git a/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/EnclosingBallTest.java b/commons-geometry-enclosing/src/test/java/org/apache/commons/geometry/enclosing/EnclosingBallTest.java index de2c04b..96b5f3b 100644 --- a/commons-
svn commit: r48864 - in /release/commons/numbers: ./ binaries/ source/
Author: mattjuntunen Date: Sat Jul 17 16:24:34 2021 New Revision: 48864 Log: Release Commons Numbers v1.0 (from RC1) Added: release/commons/numbers/binaries/commons-numbers-1.0-bin.tar.gz (with props) release/commons/numbers/binaries/commons-numbers-1.0-bin.tar.gz.asc release/commons/numbers/binaries/commons-numbers-1.0-bin.tar.gz.sha512 release/commons/numbers/binaries/commons-numbers-1.0-bin.zip (with props) release/commons/numbers/binaries/commons-numbers-1.0-bin.zip.asc release/commons/numbers/binaries/commons-numbers-1.0-bin.zip.sha512 release/commons/numbers/source/commons-numbers-1.0-src.tar.gz (with props) release/commons/numbers/source/commons-numbers-1.0-src.tar.gz.asc release/commons/numbers/source/commons-numbers-1.0-src.tar.gz.sha512 release/commons/numbers/source/commons-numbers-1.0-src.zip (with props) release/commons/numbers/source/commons-numbers-1.0-src.zip.asc release/commons/numbers/source/commons-numbers-1.0-src.zip.sha512 Removed: release/commons/numbers/binaries/commons-numbers-1.0-beta1-bin.tar.gz release/commons/numbers/binaries/commons-numbers-1.0-beta1-bin.tar.gz.asc release/commons/numbers/binaries/commons-numbers-1.0-beta1-bin.tar.gz.sha512 release/commons/numbers/binaries/commons-numbers-1.0-beta1-bin.zip release/commons/numbers/binaries/commons-numbers-1.0-beta1-bin.zip.asc release/commons/numbers/binaries/commons-numbers-1.0-beta1-bin.zip.sha512 release/commons/numbers/source/commons-numbers-1.0-beta1-src.tar.gz release/commons/numbers/source/commons-numbers-1.0-beta1-src.tar.gz.asc release/commons/numbers/source/commons-numbers-1.0-beta1-src.tar.gz.sha512 release/commons/numbers/source/commons-numbers-1.0-beta1-src.zip release/commons/numbers/source/commons-numbers-1.0-beta1-src.zip.asc release/commons/numbers/source/commons-numbers-1.0-beta1-src.zip.sha512 Modified: release/commons/numbers/README.html release/commons/numbers/RELEASE-NOTES.txt Modified: release/commons/numbers/README.html == --- release/commons/numbers/README.html (original) +++ release/commons/numbers/README.html Sat Jul 17 16:24:34 2021 @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. --> -Commons-NUMBERS v1.0-beta1. +Commons-NUMBERS v1.0 -This is the 1.0-beta1 version of commons-numbers. It is available in both binary and source distributions. +This is the 1.0 version of commons-numbers. It is available in both binary and source distributions. Note: @@ -55,12 +55,12 @@ Always test available signatures, e.g., $ pgpk -a KEYS -$ pgpv commons-numbers-1.0-beta1-bin.tar.gz.asc +$ pgpv commons-numbers-1.0-bin.tar.gz.asc or, $ pgp -ka KEYS -$ pgp commons-numbers-1.0-beta1-bin.tar.gz.asc +$ pgp commons-numbers-1.0-bin.tar.gz.asc or, $ gpg --import KEYS -$ gpg --verify commons-numbers-1.0-beta1-bin.tar.gz.asc +$ gpg --verify commons-numbers-1.0-bin.tar.gz.asc \ No newline at end of file Modified: release/commons/numbers/RELEASE-NOTES.txt == --- release/commons/numbers/RELEASE-NOTES.txt (original) +++ release/commons/numbers/RELEASE-NOTES.txt Sat Jul 17 16:24:34 2021 @@ -1,4 +1,72 @@ + Apache Commons Numbers 1.0 RELEASE NOTES + +The Apache Commons Numbers team is pleased to announce the release of +commons-numbers-parent-1.0 + +The Apache Commons Numbers project provides number types and utilities. + +This is the first official release of Apache Commons Numbers. + +Apache Commons Numbers 1.0 contains the following library modules: + commons-numbers-angle (requires Java 8+) + commons-numbers-arrays (requires Java 8+) + commons-numbers-combinatorics (requires Java 8+) + commons-numbers-complex (requires Java 8+) + commons-numbers-core (requires Java 8+) + commons-numbers-field (requires Java 8+) + commons-numbers-fraction (requires Java 8+) + commons-numbers-gamma (requires Java 8+) + commons-numbers-primes (requires Java 8+) + commons-numbers-quaternion (requires Java 8+) + commons-numbers-rootfinder (requires Java 8+) +N.B. the Performance testing module requires Java 9+. (The unit tests require Java 8+) + +Changes in this version include: + + +Fixed Bugs: +o NUMBERS-153: Use iterative implementation of "trigamma" function. Thanks to Dmitriy Golovashkin +for reporting. Thanks to Gilles Sadowski. +o NUMBERS-150: "Fraction/BigFraction": Fixed pow(int) to handle Integer.MIN_VALUE and throw +ArithmeticException for negative exponents to a fraction of zero. Thanks to Jin Xu. +o NUMBERS-147: Fixed Fraction/BigFraction from(double, int) to support Integer.MIN_VALUE as max +denominator. Thanks to Alex Herbert. + +Changes: +o NUMBERS-163: Combined "LinearCombination" and "Summa
[commons-numbers] annotated tag rel/commons-numbers-1.0 created (now c847f3b)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to annotated tag rel/commons-numbers-1.0 in repository https://gitbox.apache.org/repos/asf/commons-numbers.git. at c847f3b (tag) tagging 89a9c3817222a6c67d7a231b19f6c5c7fc995208 (commit) by Matt Juntunen on Sat Jul 17 12:32:51 2021 -0400 - Log - RC1 becomes v1.0 official release -BEGIN PGP SIGNATURE- iQGzBAABCgAdFiEEfdU67+3xw9OStR6+NG9Pzs+3CxoFAmDzBjMACgkQNG9Pzs+3 Cxrl/Av/Z3t8k1Fm5AcGE/h8t0J6qOi9iFMPYP+2iWghz+zXFAvU0scON5Q4ubFg 9zkgCwDXMpabtsDiYiesk1h2Y15AB7p3TrlHQ9rCYPW2RH7t6xvuO8PBmfUUD40e Ql5lgttiHSpCcGikEa4XgfmSP6ojMqgYkSms2vORsEIft18vAVzkJkMFt8ATBN1I hYsUnJ73kCi8xZADtMg9m3lp716H7ZSblEkbiwfs1c8IUC+a/iIKA4dYoiZojWyl Gy12/SYmPPII7IiJlv5UIAP+gFH3r+qb4C8o93KAGR+04WiDngwT9VilkjXwHEqY 2+yP6AULMyDsCe6rC4qiKLumoumdYSS6u85cKpm+tVb7HxrIKAwKK7tBFbOjBRJ7 ZQkiuXQRnOehRI7TijiBOQe/Eu4EfJxwtkxxcs/voFmdvQBParTY8jNBExIUNPkj eBwTwJkPfyV/cBSeLuVd4cmFbBH7IwuE/UqP9ShPH/r+gi6uY60farbuiKBPaUz/ ZXlGvjiZ =LuW1 -END PGP SIGNATURE- --- No new revisions were added by this update.
[commons-geometry] branch master updated (b9db536 -> cfe898c)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. from b9db536 updating docs to discuss possible runtime exceptions in IO methods new 0b7b9b0 adding changes to changes.xml new ec20f5e fixing osgi symbolic names new cfe898c replacing lambda with method reference The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: commons-geometry-io-core/pom.xml | 2 +- commons-geometry-io-euclidean/pom.xml | 2 +- .../geometry/spherical/twod/RegionBSPTree2S.java | 4 +- src/changes/changes.xml| 48 +- 4 files changed, 50 insertions(+), 6 deletions(-)
[commons-geometry] 03/03: replacing lambda with method reference
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit cfe898c5e5265b60f0c281f6bdae6a63ff4ddbf6 Author: Matt Juntunen AuthorDate: Sat Jul 24 07:12:19 2021 -0400 replacing lambda with method reference --- .../org/apache/commons/geometry/spherical/twod/RegionBSPTree2S.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/twod/RegionBSPTree2S.java b/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/twod/RegionBSPTree2S.java index 026cd9f..df56661 100644 --- a/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/twod/RegionBSPTree2S.java +++ b/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/twod/RegionBSPTree2S.java @@ -69,7 +69,7 @@ public class RegionBSPTree2S extends AbstractRegionBSPTree boundaries() { -return createBoundaryIterable(b -> (GreatArc) b); +return createBoundaryIterable(GreatArc.class::cast); } /** {@inheritDoc} */ @@ -81,7 +81,7 @@ public class RegionBSPTree2S extends AbstractRegionBSPTree getBoundaries() { -return createBoundaryList(b -> (GreatArc) b); +return createBoundaryList(GreatArc.class::cast); } /** Get the boundary of the region as a list of connected great arc paths. The
[commons-geometry] 01/03: adding changes to changes.xml
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 0b7b9b07a3f00783bdeac6a3eaac744bbcfe41eb Author: Matt Juntunen AuthorDate: Sat Jul 24 07:11:27 2021 -0400 adding changes to changes.xml --- src/changes/changes.xml | 48 ++-- 1 file changed, 46 insertions(+), 2 deletions(-) diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 9dd1eea..fb9b9cc 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -58,9 +58,53 @@ Apache Commons Geometry 1.0 contains the following library modules: commons-geometry-core (requires Java 8+) commons-geometry-euclidean (requires Java 8+) commons-geometry-spherical (requires Java 8+) - commons-geometry-hull (requires Java 8+) - commons-geometry-enclosing (requires Java 8+) + commons-geometry-io-core (requires Java 8+) + commons-geometry-io-euclidean (requires Java 8+) "> + +Use Norms.EUCLIDEAN from Commons Numbers to compute 3D Euclidean norm values. + + +Replace VectorXD.linearCombination methods with VectorXD.Sum classes. Use +Sum class from Commons Numbers for computing internal linear combinations. + + +Replace DoublePrecisionContext with Precision.DoubleEquivalence from Commons Numbers. + + +Add coordinate-specific transform methods to AffineTransformMatrixXD classes, e.g. +"applyX", "applyY", "applyZ". + + +Add solid geometry tutorial. + + +Add SimpleTriangleMeshBuilder.addFace(int[]) method as alternative to +addFace(int, int, int). + + +Add shear methods to AffineTransformMatrix2D. + + +Add VectorXD.normalizeOrNull() methods so that callers can detect normalization failures +without needing to catch an exception. + + +Add modules for IO functionality: commons-geometry-io-core, commons-geometry-io-euclidean. + + +Fix incorrect OSGi headers. Reported by Christoph Läubrich. + + +Rename the BoundarySourceXX.from() static factory methods to "of" to better match +the JDK's Stream.of() method. + + +Add BoundaryList interface and implementation classes. + + +Migrate unit tests to JUnit 5. +
[commons-geometry] 02/03: fixing osgi symbolic names
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit ec20f5e680106e4c1b228039e685575c4ef19e26 Author: Matt Juntunen AuthorDate: Sat Jul 24 07:11:51 2021 -0400 fixing osgi symbolic names --- commons-geometry-io-core/pom.xml | 2 +- commons-geometry-io-euclidean/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/commons-geometry-io-core/pom.xml b/commons-geometry-io-core/pom.xml index 23964df..e21f30d 100644 --- a/commons-geometry-io-core/pom.xml +++ b/commons-geometry-io-core/pom.xml @@ -33,7 +33,7 @@ - org.apache.commons.geometry.io.core.* + org.apache.commons.geometry.io.core org.apache.commons.geometry.io.core.* org.apache.commons.geometry.io.core diff --git a/commons-geometry-io-euclidean/pom.xml b/commons-geometry-io-euclidean/pom.xml index f01a426..f915f2f 100644 --- a/commons-geometry-io-euclidean/pom.xml +++ b/commons-geometry-io-euclidean/pom.xml @@ -33,7 +33,7 @@ - org.apache.commons.geometry.io.euclidean.* + org.apache.commons.geometry.io.euclidean org.apache.commons.geometry.io.euclidean.* org.apache.commons.geometry.io.euclidean
[commons-geometry] branch master updated: removing redundant predicate
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new f3959b2 removing redundant predicate f3959b2 is described below commit f3959b29713cf90ce15318001b41582928fa8576 Author: Matt Juntunen AuthorDate: Sat Jul 24 12:14:56 2021 -0400 removing redundant predicate --- .../commons/geometry/hull/euclidean/twod/AklToussaintHeuristic.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/AklToussaintHeuristic.java b/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/AklToussaintHeuristic.java index 93c5b73..15be662 100644 --- a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/AklToussaintHeuristic.java +++ b/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/AklToussaintHeuristic.java @@ -135,7 +135,7 @@ public final class AklToussaintHeuristic { v1 = v2; v2 = quadrilateralPoints.get((i + 1) == size ? 0 : i + 1); -if (point.equals(v1) || point.equals(v2)) { +if (point.equals(v2)) { return true; }
[commons-geometry] 03/03: updating docs to discuss possible runtime exceptions in IO methods
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit b9db536fbd028223cd1a06a2c996da925506ba4b Author: Matt Juntunen AuthorDate: Fri Jul 23 22:10:58 2021 -0400 updating docs to discuss possible runtime exceptions in IO methods --- .../geometry/io/core/BoundaryIOManager.java| 4 ++- .../geometry/io/core/BoundaryReadHandler.java | 6 ++-- .../io/euclidean/threed/BoundaryIOManager3D.java | 4 ++- .../io/euclidean/threed/BoundaryReadHandler3D.java | 3 +- .../commons/geometry/io/euclidean/threed/IO3D.java | 36 ++ 5 files changed, 36 insertions(+), 17 deletions(-) diff --git a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/BoundaryIOManager.java b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/BoundaryIOManager.java index 3a2e92e..5e1bb0c 100644 --- a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/BoundaryIOManager.java +++ b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/BoundaryIOManager.java @@ -187,6 +187,7 @@ public class BoundaryIOManager< } /** Return a {@link BoundarySource} containing all boundaries from the given input. + * A runtime exception may be thrown if mathematically invalid boundaries are encountered. * @param in input to read boundaries from * @param fmt format of the input; if null, the format is determined implicitly from the * file extension of the input {@link GeometryInput#getFileName() file name} @@ -210,7 +211,8 @@ public class BoundaryIOManager< * } * * An {@link IOException} is thrown immediately by this method if stream creation fails. Any IO errors - * occurring during stream iteration are wrapped with {@link java.io.UncheckedIOException}. + * occurring during stream iteration are wrapped with {@link java.io.UncheckedIOException}. Other runtime + * exceptions may be thrown during stream iteration if mathematically invalid boundaries are encountered. * @param in input to read boundaries from * @param fmt format of the input; if null, the format is determined implicitly from the * file extension of the input {@link GeometryInput#getFileName() file name} diff --git a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/BoundaryReadHandler.java b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/BoundaryReadHandler.java index 095c25d..f3b489e 100644 --- a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/BoundaryReadHandler.java +++ b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/BoundaryReadHandler.java @@ -44,7 +44,8 @@ public interface BoundaryReadHandler, B exte GeometryFormat getFormat(); /** Return an object containing all boundaries read from {@code input} using the handler's - * supported data format. + * supported data format. Implementations may throw runtime exceptions if mathematically + * invalid boundaries are encountered. * @param input input to read form * @param precision precision context used for floating point comparisons * @return object containing all boundaries read from {@code input} @@ -70,7 +71,8 @@ public interface BoundaryReadHandler, B exte * * * An {@link IOException} is thrown immediately by this method if stream creation fails. Any IO errors - * occurring during stream iteration are wrapped with {@link java.io.UncheckedIOException}. + * occurring during stream iteration are wrapped with {@link java.io.UncheckedIOException}. Other runtime + * exceptions may be thrown during stream iteration if mathematically invalid boundaries are encountered. * @param in input to read from * @param precision precision context used for floating point comparisons * @return stream providing access to the boundary information from the given input diff --git a/commons-geometry-io-euclidean/src/main/java/org/apache/commons/geometry/io/euclidean/threed/BoundaryIOManager3D.java b/commons-geometry-io-euclidean/src/main/java/org/apache/commons/geometry/io/euclidean/threed/BoundaryIOManager3D.java index 5b5f194..88de395 100644 --- a/commons-geometry-io-euclidean/src/main/java/org/apache/commons/geometry/io/euclidean/threed/BoundaryIOManager3D.java +++ b/commons-geometry-io-euclidean/src/main/java/org/apache/commons/geometry/io/euclidean/threed/BoundaryIOManager3D.java @@ -96,7 +96,8 @@ public class BoundaryIOManager3D extends BoundaryIOManager< * } * * An {@link IOException} is thrown immediately by this method if stream creation fails. Any IO errors - * occurring during stream iteration are wrapped with {@link java.io.UncheckedIO
[commons-geometry] branch master updated (c4f1da8 -> b9db536)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. from c4f1da8 GEOMETRY-63: more minor SonarQube fixes new 00703c4 minor sonarqube fixes new e711ca0 GEOMETRY-137: making SimpleTextParser throw IOException when parsed string exceeds max length new b9db536 updating docs to discuss possible runtime exceptions in IO methods The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../geometry/io/core/BoundaryIOManager.java| 4 +- .../geometry/io/core/BoundaryReadHandler.java | 6 +- .../io/core/internal/SimpleTextParser.java | 119 + .../io/core/internal/SimpleTextParserTest.java | 8 +- .../io/euclidean/threed/BoundaryIOManager3D.java | 4 +- .../io/euclidean/threed/BoundaryReadHandler3D.java | 3 +- .../commons/geometry/io/euclidean/threed/IO3D.java | 36 --- .../io/euclidean/threed/obj/ObjWriter.java | 8 +- .../threed/stl/StlBoundaryWriteHandler3DTest.java | 2 +- 9 files changed, 119 insertions(+), 71 deletions(-)
[commons-geometry] 01/03: minor sonarqube fixes
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 00703c480cf69599069a1c5a243774cb2afa951f Author: Matt Juntunen AuthorDate: Fri Jul 23 21:17:11 2021 -0400 minor sonarqube fixes --- .../commons/geometry/io/euclidean/threed/obj/ObjWriter.java | 8 +--- .../io/euclidean/threed/stl/StlBoundaryWriteHandler3DTest.java| 2 +- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/commons-geometry-io-euclidean/src/main/java/org/apache/commons/geometry/io/euclidean/threed/obj/ObjWriter.java b/commons-geometry-io-euclidean/src/main/java/org/apache/commons/geometry/io/euclidean/threed/obj/ObjWriter.java index 2f8b6e4..ff9292b 100644 --- a/commons-geometry-io-euclidean/src/main/java/org/apache/commons/geometry/io/euclidean/threed/obj/ObjWriter.java +++ b/commons-geometry-io-euclidean/src/main/java/org/apache/commons/geometry/io/euclidean/threed/obj/ObjWriter.java @@ -466,13 +466,7 @@ public final class ObjWriter extends AbstractTextFormatWriter { private int addToMap(final Vector3D vec, final Map map) { final String str = createVectorString(vec); -Integer idx = map.get(str); -if (idx == null) { -idx = map.size(); -map.put(str, idx); -} - -return idx; +return map.computeIfAbsent(str, k -> map.size()); } /** Add a face to the buffer. If {@code batchSize} is greater than {@code -1} and the number diff --git a/commons-geometry-io-euclidean/src/test/java/org/apache/commons/geometry/io/euclidean/threed/stl/StlBoundaryWriteHandler3DTest.java b/commons-geometry-io-euclidean/src/test/java/org/apache/commons/geometry/io/euclidean/threed/stl/StlBoundaryWriteHandler3DTest.java index 7c722b2..58a3c99 100644 --- a/commons-geometry-io-euclidean/src/test/java/org/apache/commons/geometry/io/euclidean/threed/stl/StlBoundaryWriteHandler3DTest.java +++ b/commons-geometry-io-euclidean/src/test/java/org/apache/commons/geometry/io/euclidean/threed/stl/StlBoundaryWriteHandler3DTest.java @@ -74,7 +74,7 @@ class StlBoundaryWriteHandler3DTest { } @Test -public void setInitialBufferSize_invalidArg() { +void setInitialBufferSize_invalidArg() { // act/assert GeometryTestUtils.assertThrowsWithMessage( () -> handler.setInitialBufferSize(0),
[commons-geometry] 02/03: GEOMETRY-137: making SimpleTextParser throw IOException when parsed string exceeds max length
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit e711ca0b45836948813c4372392c7ff0c14177af Author: Matt Juntunen AuthorDate: Fri Jul 23 21:25:17 2021 -0400 GEOMETRY-137: making SimpleTextParser throw IOException when parsed string exceeds max length --- .../io/core/internal/SimpleTextParser.java | 119 + .../io/core/internal/SimpleTextParserTest.java | 8 +- 2 files changed, 81 insertions(+), 46 deletions(-) diff --git a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/internal/SimpleTextParser.java b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/internal/SimpleTextParser.java index e3e6f59..4ff7f6b 100644 --- a/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/internal/SimpleTextParser.java +++ b/commons-geometry-io-core/src/main/java/org/apache/commons/geometry/io/core/internal/SimpleTextParser.java @@ -43,7 +43,7 @@ public class SimpleTextParser { private static final int DEFAULT_MAX_STRING_LENGTH = 1024; /** Error message used when a string exceeds the configured maximum length. */ -private static final String STRING_LENGTH_ERR_MSG = "String length exceeds maximum value of "; +private static final String STRING_LENGTH_ERR_MSG = "string length exceeds maximum value of "; /** Initial token position number. */ private static final int INITIAL_TOKEN_POS = -1; @@ -336,9 +336,8 @@ public class SimpleTextParser { * @param pred predicate function passed characters read from the input; reading continues * until the predicate returns false * @return this instance - * @throws IllegalStateException if the length of the produced string exceeds the configured + * @throws IOException if an I/O error occurs or the length of the produced string exceeds the configured * {@link #getMaxStringLength() maximum string length} - * @throws IOException if an I/O error occurs * @see #getCurrentToken() * @see #consume(IntPredicate, IntConsumer) */ @@ -348,14 +347,11 @@ public class SimpleTextParser { String token = null; if (hasMoreCharacters()) { -final StringBuilder sb = new StringBuilder(); +final StringCollector collector = new StringCollector(line, col, pred); -consume(pred, ch -> { -sb.append((char) ch); -validateStringLength(sb.length()); -}); +consume(collector, collector); -token = sb.toString(); +token = collector.getString(); } setToken(line, col, token); @@ -370,9 +366,8 @@ public class SimpleTextParser { * @param pred predicate function passed characters read from the input; reading continues * until the predicate returns false * @return this instance - * @throws IllegalStateException if the length of the produced string exceeds the configured + * @throws IOException if an I/O error occurs or the length of the produced string exceeds the configured * {@link #getMaxStringLength() maximum string length} - * @throws IOException if an I/O error occurs * @see #getCurrentToken() * @see #consume(IntPredicate, IntConsumer) */ @@ -383,14 +378,11 @@ public class SimpleTextParser { String token = null; if (hasMoreCharacters()) { -final StringBuilder sb = new StringBuilder(); +final StringCollector collector = new StringCollector(line, col, pred); -consumeWithLineContinuation(lineContinuationChar, pred, ch -> { -sb.append((char) ch); -validateStringLength(sb.length()); -}); +consumeWithLineContinuation(lineContinuationChar, collector, collector); -token = sb.toString(); +token = collector.getString(); } setToken(line, col, token); @@ -403,9 +395,8 @@ public class SimpleTextParser { * ('\r', '\n', or '\r\n') at the end of the line is consumed but is not included in the token. * The token will be null if the end of the stream has been reached prior to the method call. * @return this instance - * @throws IllegalStateException if the length of the produced string exceeds the configured + * @throws IOException if an I/O error occurs or the length of the produced string exceeds the configured * {@link #getMaxStringLength() maximum string length} - * @throws IOException if an I/O error occurs * @see #getCurrentToken() */ public SimpleTextParser nextLine() throws IOException { @@ -421,9 +412,8 @@ public class SimpleTextParser { * character in the stream is not alphanumeric and will be null if
[commons-geometry] branch master updated: GEOMETRY-143: defining strict rules in CutAngle for classification of points near zero; initial fix provided by Ron Goldman
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new e13f152 GEOMETRY-143: defining strict rules in CutAngle for classification of points near zero; initial fix provided by Ron Goldman e13f152 is described below commit e13f15213d9dc46c96759d87660f8dbb05155811 Author: Matt Juntunen AuthorDate: Sun Jan 23 00:15:25 2022 -0500 GEOMETRY-143: defining strict rules in CutAngle for classification of points near zero; initial fix provided by Ron Goldman --- .../geometry/spherical/oned/AngularInterval.java | 38 ++ .../commons/geometry/spherical/oned/CutAngle.java | 88 +- .../commons/geometry/spherical/oned/Point1S.java | 16 .../spherical/oned/AngularIntervalTest.java| 31 .../geometry/spherical/oned/CutAngleTest.java | 23 ++ .../geometry/spherical/oned/Point1STest.java | 45 +++ 6 files changed, 206 insertions(+), 35 deletions(-) diff --git a/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/oned/AngularInterval.java b/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/oned/AngularInterval.java index 906ac58..ef7e457 100644 --- a/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/oned/AngularInterval.java +++ b/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/oned/AngularInterval.java @@ -47,6 +47,9 @@ public class AngularInterval implements HyperplaneBoundedRegion { /** Point halfway between the min and max boundaries. */ private final Point1S midpoint; +/** Flag set to true if the interval wraps around the {@code 0/2pi} point. */ +private final boolean wraps; + /** Construct a new instance representing the angular region between the given * min and max azimuth boundaries. The arguments must be either all finite or all * null (to indicate the full space). If the boundaries are finite, then the min @@ -59,9 +62,22 @@ public class AngularInterval implements HyperplaneBoundedRegion { this.minBoundary = minBoundary; this.maxBoundary = maxBoundary; -this.midpoint = (minBoundary != null && maxBoundary != null) ? -Point1S.of(0.5 * (minBoundary.getAzimuth() + maxBoundary.getAzimuth())) : -null; + +Point1S midpointVal = null; +boolean wrapsVal = false; + +if (minBoundary != null && maxBoundary != null) { +midpointVal = Point1S.of(0.5 * (minBoundary.getAzimuth() + maxBoundary.getAzimuth())); + +// The interval wraps zero if the max boundary lies on the other side of zero than +// the min. This is a more reliable way to compute the wrapping flag than direct +// comparison of the normalized azimuths since this approach takes into account +// azimuths that are equivalent to zero. +wrapsVal = minBoundary.classify(maxBoundary.getPoint()) == HyperplaneLocation.PLUS; +} + +this.midpoint = midpointVal; +this.wraps = wrapsVal; } /** Get the minimum azimuth angle for the interval, or {@code 0} @@ -163,13 +179,11 @@ public class AngularInterval implements HyperplaneBoundedRegion { final HyperplaneLocation minLoc = minBoundary.classify(pt); final HyperplaneLocation maxLoc = maxBoundary.classify(pt); -final boolean wraps = wrapsZero(); - -if ((!wraps && (minLoc == HyperplaneLocation.PLUS || maxLoc == HyperplaneLocation.PLUS)) || +if (minLoc == HyperplaneLocation.ON || maxLoc == HyperplaneLocation.ON) { +return RegionLocation.BOUNDARY; +} else if ((!wraps && (minLoc == HyperplaneLocation.PLUS || maxLoc == HyperplaneLocation.PLUS)) || (wraps && minLoc == HyperplaneLocation.PLUS && maxLoc == HyperplaneLocation.PLUS)) { return RegionLocation.OUTSIDE; -} else if (minLoc == HyperplaneLocation.ON || maxLoc == HyperplaneLocation.ON) { -return RegionLocation.BOUNDARY; } } return RegionLocation.INSIDE; @@ -195,13 +209,7 @@ public class AngularInterval implements HyperplaneBoundedRegion { * @return true if the interval wraps around the zero/{@code 2pi} point */ public boolean wrapsZero() { -if (!isFull()) { -final double minNormAz = minBoundary.getPoint().getNormalizedAzimuth(); -final double maxNormAz = maxBoundary.getPoint().getNormalizedAzimuth(); - -return maxNormAz < minNormAz; -} -return false; +return wraps; } /** Return a new instance transfo
[commons-geometry] branch master updated: Fix javadoc.
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git The following commit(s) were added to refs/heads/master by this push: new adec3f1 Fix javadoc. adec3f1 is described below commit adec3f1313f5fbe90463c9b022ac94a0e48527bb Author: Arturo Bernal AuthorDate: Sat Jan 15 23:02:07 2022 +0100 Fix javadoc. --- .../main/java/org/apache/commons/geometry/euclidean/threed/Planes.java | 2 +- .../java/org/apache/commons/geometry/spherical/twod/ConvexArea2S.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/threed/Planes.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/threed/Planes.java index fd69aa0..e474bbb 100644 --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/threed/Planes.java +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/threed/Planes.java @@ -609,7 +609,7 @@ public final class Planes { } /** Process a point from the point sequence. - * @param pt + * @param pt the {@link Vector3D} process point. * @throws IllegalArgumentException if the points do not define a plane or the {@code requireConvex} * flag is true and the points do not define a convex area */ diff --git a/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/twod/ConvexArea2S.java b/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/twod/ConvexArea2S.java index 170d39f..90e4367 100644 --- a/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/twod/ConvexArea2S.java +++ b/commons-geometry-spherical/src/main/java/org/apache/commons/geometry/spherical/twod/ConvexArea2S.java @@ -392,7 +392,7 @@ public final class ConvexArea2S extends AbstractConvexHyperplaneBoundedRegion * @param arcs boundary arcs for the area; must contain at least 3 arcs * @return the weighted centroid vector for the area - * @see ##computeArcPoleWeightedCentroidVector(List) + * @see #computeArcPoleWeightedCentroidVector(List) */ private static Vector3D computeTriangleFanWeightedCentroidVector(final List arcs) { final Iterator arcIt = arcs.iterator();
[commons-geometry] branch master created (now ab1e427)
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git. at ab1e427 updating notice year No new revisions were added by this update.
[commons-geometry] 02/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 518ff5b184286d88059c92e95c9d4fc76786eb94 Author: Andreas Goß AuthorDate: Tue Jul 18 19:50:42 2023 +0200 GEOMETRY-144 Add ConvexHull2D class to euclidean an and use builder pattern to construct hull. --- .../geometry/euclidean/twod/hull/ConvexHull2D.java | 462 + .../geometry/euclidean/twod/hull/package-info.java | 25 ++ 2 files changed, 487 insertions(+) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java new file mode 100644 index ..d7ce45ae --- /dev/null +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java @@ -0,0 +1,462 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.commons.geometry.euclidean.twod.hull; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.Iterator; +import java.util.List; + +import org.apache.commons.geometry.core.ConvexHull; +import org.apache.commons.geometry.euclidean.EuclideanCollections; +import org.apache.commons.geometry.euclidean.twod.ConvexArea; +import org.apache.commons.geometry.euclidean.twod.Lines; +import org.apache.commons.geometry.euclidean.twod.Vector2D; +import org.apache.commons.geometry.euclidean.twod.path.LinePath; +import org.apache.commons.numbers.core.Precision; + +/** + * This class represents a convex hull in two-dimensional Euclidean space. + */ +public final class ConvexHull2D implements ConvexHull { + +/** Vertices for the convex hull, in order. */ +private final List vertices; + +/** Polyline path for the convex hull. */ +private final LinePath path; + +/** Simple constructor; no validation is performed. + * @param vertices the vertices of the convex hull; callers are responsible for ensuring that + * the given vertices are in order, unique, and define a convex hull. + * @param precision precision context used to compare floating point numbers + */ +ConvexHull2D(final Collection vertices, final Precision.DoubleEquivalence precision) { +this.vertices = Collections.unmodifiableList(new ArrayList<>(vertices)); +this.path = buildHullPath(vertices, precision); +} + +/** {@inheritDoc} */ +@Override +public List getVertices() { +return vertices; +} + +/** Get a path defining the convex hull. The path will contain + * + * zero segments if the hull consists of only a single point, + * one segment if the hull consists of two points, + * three or more segments defining a closed loop if the hull consists of more than + * two non-collinear points. + * + * @return polyline path defining the convex hull + */ +public LinePath getPath() { +return path; +} + +/** {@inheritDoc} */ +@Override +public ConvexArea getRegion() { +return path.isClosed() ? +ConvexArea.convexPolygonFromPath(path) : +null; +} + +/** {@inheritDoc} */ +@Override +public String toString() { +final StringBuilder sb = new StringBuilder(); +sb.append(getClass().getSimpleName()) +.append("[vertices= ") +.append(getVertices()) +.append(']'); + +return sb.toString(); +} + +/** Build a polyline representing the path for a convex hull. + * @param vertices convex hull vertices + * @param precision precision context used to compare floating point values + * @return path for the convex hull defined by the given vertices + */ +private static LinePath buildHullPath(final Collection vertices, +final Precision.DoubleEquivalence precision) { +if (vertices.size() < 2) { +return LinePath.empty(); +
[commons-geometry] 03/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 031f91f5696e12163ba43e50f51cbb375ff8d20f Author: Andreas Goß AuthorDate: Wed Jul 19 18:35:50 2023 +0200 GEOMETRY-144 Move Test to euclidean. --- .../geometry/euclidean/twod/hull/ConvexHull2D.java | 26 +- .../euclidean/DocumentationExamplesTest.java | 39 ++ .../euclidean/twod/hull/ConvexHull2DTest.java | 177 +++ .../euclidean/twod/hull/ConvexHullBuilderTest.java | 58 +++ .../hull/ConvexHullGenerator2DAbstractTest.java| 532 + 5 files changed, 819 insertions(+), 13 deletions(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java index d7ce45ae..07eed0a9 100644 --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java @@ -14,6 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.apache.commons.geometry.euclidean.twod.hull; import java.util.ArrayList; @@ -138,7 +139,7 @@ public final class ConvexHull2D implements ConvexHull { private Vector2D maxY; /** Collection of all remaining candidates for a convex hull. */ -private final Collection points; +private final Collection candidates; /** A precision context for comparing points. */ private final Precision.DoubleEquivalence precision; @@ -160,7 +161,7 @@ public final class ConvexHull2D implements ConvexHull { public Builder(final boolean includeCollinearPoints, final Precision.DoubleEquivalence builderPrecision) { this.precision = builderPrecision; this.includeCollinearPoints = includeCollinearPoints; -points = EuclideanCollections.pointSet2D(precision); +candidates = EuclideanCollections.pointSet2D(builderPrecision); } /** Appends the given point to a collection of possible hull points, if and only @@ -175,7 +176,7 @@ public final class ConvexHull2D implements ConvexHull { checkCorners(point); //Only proceed if the quadrilateral is complete. -if (points.size() < 4) { +if (candidates.size() < 4) { return this; } @@ -188,7 +189,7 @@ public final class ConvexHull2D implements ConvexHull { // check all points if they are within the quadrilateral // in which case they can not be part of the convex hull if (!insideQuadrilateral(point, quadrilateral)) { -points.add(point); +candidates.add(point); } return this; @@ -216,10 +217,10 @@ public final class ConvexHull2D implements ConvexHull { */ public ConvexHull2D build() { Collection hullVertices; -if (points.size() < 2) { -hullVertices = points; +if (candidates.size() < 2) { +hullVertices = candidates; } else { -hullVertices = findHullVertices(points); +hullVertices = findHullVertices(candidates); } if (!isConvex(hullVertices)) { @@ -252,22 +253,21 @@ public final class ConvexHull2D implements ConvexHull { */ private void checkCorners(Vector2D point) { if (minX == null || point.getX() < minX.getX()) { -points.remove(minX); minX = point; +candidates.add(point); } if (maxX == null || point.getX() > maxX.getX()) { -points.remove(maxX); maxX = point; +candidates.add(point); } if (minY == null || point.getY() < minY.getY()) { -points.remove(minY); minY = point; +candidates.add(point); } if (maxY == null || point.getY() > maxY.getY()) { -points.remove(maxY); maxY = point; +candidates.add(point); } -points.add(point); } /** Checks if the given point is located within the convex quadrilateral. @@ -459,4 +459,4 @@ public final class ConvexHull2D implements ConvexHull { return true; } } -} \ No newline at end of file +} diff --git a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/DocumentationExamplesTest.java b/commons-geometry-euclidean/
[commons-geometry] 13/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit f9ce7661ce99182814c2766a53a2bc1a6701ee28 Author: Andreas Goß AuthorDate: Thu Jul 20 22:26:46 2023 +0200 GEOMETRY-144 Delete unnecessary abstract parent class and move tests to ConvexHullBuilderTest --- .../euclidean/twod/hull/ConvexHullBuilderTest.java | 499 ++- .../hull/ConvexHullGenerator2DAbstractTest.java| 532 - 2 files changed, 495 insertions(+), 536 deletions(-) diff --git a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHullBuilderTest.java b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHullBuilderTest.java index d15c72b2..735f4767 100644 --- a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHullBuilderTest.java +++ b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHullBuilderTest.java @@ -18,20 +18,41 @@ package org.apache.commons.geometry.euclidean.twod.hull; import java.util.ArrayList; import java.util.Collection; +import java.util.Collections; +import java.util.List; +import org.apache.commons.geometry.core.Region; +import org.apache.commons.geometry.core.RegionLocation; +import org.apache.commons.geometry.euclidean.twod.ConvexArea; import org.apache.commons.geometry.euclidean.twod.Vector2D; +import org.apache.commons.geometry.euclidean.twod.hull.ConvexHull2D.Builder; import org.apache.commons.numbers.core.Precision; +import org.apache.commons.numbers.core.Sum; +import org.apache.commons.rng.UniformRandomProvider; +import org.apache.commons.rng.simple.RandomSource; import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; /** * Test class for MonotoneChain. */ -class ConvexHullBuilderTest extends ConvexHullGenerator2DAbstractTest { +class ConvexHullBuilderTest { -@Override -protected ConvexHull2D.Builder createConvexHullGenerator(final boolean includeCollinearPoints) { -return new ConvexHull2D.Builder(includeCollinearPoints, TEST_PRECISION); +private static final double TEST_EPS = 1e-10; + +private static final Precision.DoubleEquivalence TEST_PRECISION = +Precision.doubleEquivalenceOfEpsilon(TEST_EPS); + +private ConvexHull2D.Builder generator; + +private UniformRandomProvider random; + +@BeforeEach +public void setUp() { +// by default, do not include collinear points +generator = createConvexHullGenerator(false); +random = RandomSource.XO_SHI_RO_256_PP.create(10); } // -- @@ -55,4 +76,474 @@ class ConvexHullBuilderTest extends ConvexHullGenerator2DAbstractTest { builder.append(points); Assertions.assertThrows(IllegalStateException.class, () -> builder.build()); } + +@Test +void testEmpty() { +// act +generator.append(Collections.emptyList()); +final ConvexHull2D hull = generator.build(); + +// assert +Assertions.assertEquals(0, hull.getVertices().size()); +Assertions.assertEquals(0, hull.getPath().getElements().size()); +Assertions.assertNull(hull.getRegion()); +} + +@Test +void testOnePoint() { +// arrange +final List points = createRandomPoints(1); + +// act +generator.append(points); +final ConvexHull2D hull = generator.build(); + +// assert +Assertions.assertEquals(1, hull.getVertices().size()); +Assertions.assertEquals(0, hull.getPath().getElements().size()); +Assertions.assertNull(hull.getRegion()); +} + +@Test +void testTwoPoints() { +// arrange +final List points = createRandomPoints(2); + +// act +generator.append(points); +final ConvexHull2D hull = generator.build(); + +// assert +Assertions.assertEquals(2, hull.getVertices().size()); +Assertions.assertEquals(1, hull.getPath().getElements().size()); +Assertions.assertNull(hull.getRegion()); +} + +@Test +void testAllIdentical() { +// arrange +final Collection points = new ArrayList<>(); +points.add(Vector2D.of(1, 1)); +points.add(Vector2D.of(1, 1)); +points.add(Vector2D.of(1, 1)); +points.add(Vector2D.of(1, 1)); + +// act +generator.append(points); +final ConvexHull2D hull = generator.build(); + +// assert +Assertions.assertEquals(1, hull.getVertices().size()); +Assertions.assertEquals(0, hull.getPath().getElements().size()); +Assertions.assertNull(hull.
[commons-geometry] 01/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit fd47893bc4587df8ecf2966e3169f773e3818803 Author: Andreas Goß AuthorDate: Tue Jul 18 19:48:55 2023 +0200 GEOMETRY-144 Move ConvexHull to core module --- .../src/main/java/org/apache/commons/geometry/core}/ConvexHull.java | 5 + .../java/org/apache/commons/geometry/hull/ConvexHullGenerator.java | 1 + .../apache/commons/geometry/hull/euclidean/twod/ConvexHull2D.java| 2 +- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/ConvexHull.java b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/ConvexHull.java similarity index 91% rename from commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/ConvexHull.java rename to commons-geometry-core/src/main/java/org/apache/commons/geometry/core/ConvexHull.java index 09a74771..c92fe4bd 100644 --- a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/ConvexHull.java +++ b/commons-geometry-core/src/main/java/org/apache/commons/geometry/core/ConvexHull.java @@ -14,13 +14,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.commons.geometry.hull; +package org.apache.commons.geometry.core; import java.util.List; -import org.apache.commons.geometry.core.Point; -import org.apache.commons.geometry.core.Region; - /** * This class represents a convex hull. * diff --git a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/ConvexHullGenerator.java b/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/ConvexHullGenerator.java index 3db030ba..7724ee8c 100644 --- a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/ConvexHullGenerator.java +++ b/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/ConvexHullGenerator.java @@ -18,6 +18,7 @@ package org.apache.commons.geometry.hull; import java.util.Collection; +import org.apache.commons.geometry.core.ConvexHull; import org.apache.commons.geometry.core.Point; /** diff --git a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/ConvexHull2D.java b/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/ConvexHull2D.java index cf6cf503..a3a7b9ec 100644 --- a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/ConvexHull2D.java +++ b/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/ConvexHull2D.java @@ -21,10 +21,10 @@ import java.util.Collection; import java.util.Collections; import java.util.List; +import org.apache.commons.geometry.core.ConvexHull; import org.apache.commons.geometry.euclidean.twod.ConvexArea; import org.apache.commons.geometry.euclidean.twod.Vector2D; import org.apache.commons.geometry.euclidean.twod.path.LinePath; -import org.apache.commons.geometry.hull.ConvexHull; import org.apache.commons.numbers.core.Precision; /**
[commons-geometry] 20/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit b87f6399edf6a037440190492c16415cd892efd5 Author: Andreas AuthorDate: Sat Aug 12 20:27:15 2023 +0200 GEOMETRY-144 Cases are not needed since the given Collection of points is a PointSet. --- .../geometry/euclidean/twod/hull/ConvexHull2D.java| 15 +++ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java index 62ec349e..1ae6381f 100644 --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java @@ -378,11 +378,6 @@ public final class ConvexHull2D implements ConvexHull { hullVertices.add(upperHull.get(idx)); } -// special case: if the lower and upper hull may contain only 1 point if all are identical -if (hullVertices.isEmpty() && !lowerHull.isEmpty()) { -hullVertices.add(lowerHull.get(0)); -} - return hullVertices; } @@ -401,14 +396,10 @@ public final class ConvexHull2D implements ConvexHull { final double offset = Lines.fromPoints(p1, p2, precision).offset(point); if (precision.eqZero(offset)) { // the point is collinear to the line (p1, p2) + // Calculate distance to both points. + final double distanceToCurrent = p1.distance(point); + final double distanceToLast = p1.distance(p2); -final double distanceToCurrent = p1.distance(point); -if (precision.eqZero(distanceToCurrent) || precision.eqZero(p2.distance(point))) { -// the point is assumed to be identical to either p1 or p2 -return; -} - -final double distanceToLast = p1.distance(p2); if (includeCollinearPoints) { final int index = distanceToCurrent < distanceToLast ? size - 1 : size; hull.add(index, point);
[commons-geometry] 06/25: Rename ConvexHull2D in euclidean to ConvexHull2DTemp
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 428d887af67562907c6e27b38203b14037772454 Author: Andreas Goß AuthorDate: Thu Jul 20 21:17:54 2023 +0200 Rename ConvexHull2D in euclidean to ConvexHull2DTemp --- .../euclidean/twod/hull/{ConvexHull2D.java => ConvexHull2DTemp.java} | 0 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2DTemp.java similarity index 100% rename from commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java rename to commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2DTemp.java
[commons-geometry] 09/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 519c19fed40eeb94d6664d6e5eedf0563a2d8b48 Author: Andreas Goß AuthorDate: Thu Jul 20 21:25:03 2023 +0200 GEOMETRY-144 Add Builder to ConvexHull2D which uses the logic of AklToussainHeuristic, AbstractVonvexHullGenerator2D and MonotoneChain. --- .../geometry/euclidean/twod/hull/ConvexHull2D.java | 364 - 1 file changed, 363 insertions(+), 1 deletion(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java index a3a7b9ec..099abd29 100644 --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java @@ -14,15 +14,19 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.commons.geometry.hull.euclidean.twod; + +package org.apache.commons.geometry.euclidean.twod.hull; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; +import java.util.Iterator; import java.util.List; import org.apache.commons.geometry.core.ConvexHull; +import org.apache.commons.geometry.euclidean.EuclideanCollections; import org.apache.commons.geometry.euclidean.twod.ConvexArea; +import org.apache.commons.geometry.euclidean.twod.Lines; import org.apache.commons.geometry.euclidean.twod.Vector2D; import org.apache.commons.geometry.euclidean.twod.path.LinePath; import org.apache.commons.numbers.core.Precision; @@ -104,4 +108,362 @@ public final class ConvexHull2D implements ConvexHull { .appendVertices(vertices) .build(closeLoop); } + +/** Class used to build convex hulls. The builder is based on the Akl-Toussaint + * heuristic to construct the hull. The heuristic is based on the idea of a + * convex quadrilateral, which is formed by four points with the lowest and + * highest x / y coordinates. Any point that lies inside this quadrilateral can + * not be part of the convex hull and can thus be safely discarded before + * generating the convex hull itself. + * + * The complexity of the operation is O(n), and may greatly improve the time it + * takes to construct the convex hull afterwards, depending on the point + * distribution. + * + * @see http://en.wikipedia.org/wiki/Convex_hull_algorithms#Akl-Toussaint_heuristic;> + * Akl-Toussaint heuristic (Wikipedia) + */ +public static final class Builder { + +/** Corner of triangle with minimal x coordinate. */ +private Vector2D minX; + +/** Corner of triangle with maximal x coordinate. */ +private Vector2D maxX; + +/** Corner of triangle with minimal y coordinate. */ +private Vector2D minY; + +/** Corner of triangle with maximal y coordinate. */ +private Vector2D maxY; + +/** Collection of all remaining candidates for a convex hull. */ +private final Collection candidates; + +/** A precision context for comparing points. */ +private final Precision.DoubleEquivalence precision; + +/** Indicates if collinear points on the hull shall be present in the output. + * If {@code false}, only the extreme points are added to the hull. + */ +private final boolean includeCollinearPoints; + +/**Return a {@link Builder} instance configured with the given precision + * context. The precision context is used when comparing points. + * + * @param builderPrecision precision context to use when building a convex + * hull from raw vertices; may be null if raw + * vertices are not used. + * @param includeCollinearPoints whether collinear points shall be added as hull + * vertices + */ +public Builder(final boolean includeCollinearPoints, final Precision.DoubleEquivalence builderPrecision) { +this.precision = builderPrecision; +this.includeCollinearPoints = includeCollinearPoints; +candidates = EuclideanCollections.pointSet2D(builderPrecision); +} + +/** Appends the given point to a collection of possible hull points, if and only + * if the given point is outside of a constructed quadrilateral of extreme properties. + * + * @param point a given point. + * @return this instance. + */ +public Builder append(Vector2D po
[commons-geometry] 12/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 3ce548d478c422413be8930df6598809fb140c31 Author: Andreas Goß AuthorDate: Thu Jul 20 22:16:38 2023 +0200 GEOMETRY-144 Add whitespace after if. --- .../org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java index 565f68fb..a4a0787f 100644 --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java @@ -252,7 +252,7 @@ public final class ConvexHull2D implements ConvexHull { * @param point a given point. */ private void checkCorners(Vector2D point) { -if(minX == null) { +if (minX == null) { minX = minY = maxX = maxY = point; candidates.add(point); return;
[commons-geometry] 07/25: Move ConvexHull2D from hull module to euclidean
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit a1995c4994c687a087266ab3bc7f53d36e16e600 Author: Andreas Goß AuthorDate: Thu Jul 20 21:18:46 2023 +0200 Move ConvexHull2D from hull module to euclidean --- .../org/apache/commons/geometry/euclidean/twod/hull}/ConvexHull2D.java| 0 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java similarity index 100% rename from commons-geometry-hull/src/main/java/org/apache/commons/geometry/hull/euclidean/twod/ConvexHull2D.java rename to commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java
[commons-geometry] 08/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit c9426db03180d6237fed1abd31afaf15bb0a Author: Andreas Goß AuthorDate: Thu Jul 20 21:22:42 2023 +0200 GEOMETRY-144 Delete temporary file. --- .../euclidean/twod/hull/ConvexHull2DTemp.java | 469 - 1 file changed, 469 deletions(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2DTemp.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2DTemp.java deleted file mode 100644 index 099abd29.. --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2DTemp.java +++ /dev/null @@ -1,469 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.commons.geometry.euclidean.twod.hull; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.Iterator; -import java.util.List; - -import org.apache.commons.geometry.core.ConvexHull; -import org.apache.commons.geometry.euclidean.EuclideanCollections; -import org.apache.commons.geometry.euclidean.twod.ConvexArea; -import org.apache.commons.geometry.euclidean.twod.Lines; -import org.apache.commons.geometry.euclidean.twod.Vector2D; -import org.apache.commons.geometry.euclidean.twod.path.LinePath; -import org.apache.commons.numbers.core.Precision; - -/** - * This class represents a convex hull in two-dimensional Euclidean space. - */ -public final class ConvexHull2D implements ConvexHull { - -/** Vertices for the convex hull, in order. */ -private final List vertices; - -/** Polyline path for the convex hull. */ -private final LinePath path; - -/** Simple constructor; no validation is performed. - * @param vertices the vertices of the convex hull; callers are responsible for ensuring that - * the given vertices are in order, unique, and define a convex hull. - * @param precision precision context used to compare floating point numbers - */ -ConvexHull2D(final Collection vertices, final Precision.DoubleEquivalence precision) { -this.vertices = Collections.unmodifiableList(new ArrayList<>(vertices)); -this.path = buildHullPath(vertices, precision); -} - -/** {@inheritDoc} */ -@Override -public List getVertices() { -return vertices; -} - -/** Get a path defining the convex hull. The path will contain - * - * zero segments if the hull consists of only a single point, - * one segment if the hull consists of two points, - * three or more segments defining a closed loop if the hull consists of more than - * two non-collinear points. - * - * @return polyline path defining the convex hull - */ -public LinePath getPath() { -return path; -} - -/** {@inheritDoc} */ -@Override -public ConvexArea getRegion() { -return path.isClosed() ? -ConvexArea.convexPolygonFromPath(path) : -null; -} - -/** {@inheritDoc} */ -@Override -public String toString() { -final StringBuilder sb = new StringBuilder(); -sb.append(getClass().getSimpleName()) -.append("[vertices= ") -.append(getVertices()) -.append(']'); - -return sb.toString(); -} - -/** Build a polyline representing the path for a convex hull. - * @param vertices convex hull vertices - * @param precision precision context used to compare floating point values - * @return path for the convex hull defined by the given vertices - */ -private static LinePath buildHullPath(final Collection vertices, -final Precision.DoubleEquivalence precision) { -if (vertices.size() < 2) { -return LinePath.empty(); -} - -final boolean closeLoop = vertices.size() > 2; - -return LinePath.builder(precision)
[commons-geometry] 23/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit 0c3329de2d634e61f3d898fbb9848b57d4ef13ed Author: Andreas AuthorDate: Wed Aug 23 18:41:44 2023 +0200 GEOMETRY-144 Better caching for quadrilateral and parameter quadrilateralPoints --- .../geometry/euclidean/twod/hull/ConvexHull2D.java | 35 ++ 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java index 711538e7..16a77fcc 100644 --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java @@ -178,10 +178,11 @@ public final class ConvexHull2D implements ConvexHull { public Builder append(Vector2D point) { // Checks if the given point supersedes one of the corners. -checkCorners(point); - +if (checkCorners(point)) { +//build quadrilateral if any of the corners has changed. +buildQuadrilateral(minY, maxX, maxY, minX); +} -buildQuadrilateral(minY, maxX, maxY, minX); // if the quadrilateral is not well formed, e.g. only 2 points, do not attempt to reduce if (quadrilateral.size() < 3) { // Point cannot yet be dismissed. @@ -191,7 +192,7 @@ public final class ConvexHull2D implements ConvexHull { // check all points if they are within the quadrilateral // in which case they can not be part of the convex hull -if (!insideQuadrilateral(point, quadrilateral)) { +if (!insideQuadrilateral(point)) { candidates.add(point); } @@ -247,44 +248,52 @@ public final class ConvexHull2D implements ConvexHull { } } -/** Checks if the given point supersedes one of the corners. If it does the old +/** + * Checks if the given point supersedes one of the corners. If it does the old * corner is removed and the point added to the collection of points. * * @param point a given point. + * @return {@code true} if any of the corners changed as a result of the check, + * {@code false} otherwise. */ -private void checkCorners(Vector2D point) { +boolean checkCorners(Vector2D point) { +boolean hasBeenModified = false; if (minX == null) { minX = minY = maxX = maxY = point; candidates.add(point); -return; +return true; } if (point.getX() < minX.getX()) { minX = point; candidates.add(point); +hasBeenModified = true; } if (point.getX() > maxX.getX()) { maxX = point; candidates.add(point); +hasBeenModified = true; } if (point.getY() < minY.getY()) { minY = point; candidates.add(point); +hasBeenModified = true; } if (point.getY() > maxY.getY()) { maxY = point; candidates.add(point); +hasBeenModified = true; } +return hasBeenModified; } /** Checks if the given point is located within the convex quadrilateral. * @param point the point to check - * @param quadrilateralPoints the convex quadrilateral, represented by 4 points * @return {@code true} if the point is inside the quadrilateral, {@code false} otherwise */ -private boolean insideQuadrilateral(final Vector2D point, final List quadrilateralPoints) { +private boolean insideQuadrilateral(final Vector2D point) { -Vector2D v1 = quadrilateralPoints.get(quadrilateralPoints.size() - 1); -Vector2D v2 = quadrilateralPoints.get(0); +Vector2D v1 = quadrilateral.get(quadrilateral.size() - 1); +Vector2D v2 = quadrilateral.get(0); if (point.equals(v1) || point.equals(v2)) { return true; @@ -299,11 +308,11 @@ public final class ConvexHull2D implements ConvexHull { return false; } -final int size = quadrilateralPoints.size(); +final int size = quadrilateral.size(); // loop through the rest of the vertices for (int i = 1; i < size; i++) { v1 = v2; -
[commons-geometry] 21/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit edfea212a2766fbaa540d24cd5dad13af234fd5c Author: Andreas AuthorDate: Sat Aug 12 20:49:17 2023 +0200 GEOMETRY-144 Checkstyle fix. --- .../geometry/euclidean/twod/hull/ConvexHull2D.java | 13 ++-- .../euclidean/twod/hull/ConvexHullBuilderTest.java | 84 +++--- 2 files changed, 48 insertions(+), 49 deletions(-) diff --git a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java index 1ae6381f..e6084e7e 100644 --- a/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java +++ b/commons-geometry-euclidean/src/main/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHull2D.java @@ -142,7 +142,7 @@ public final class ConvexHull2D implements ConvexHull { /** Collection of all remaining candidates for a convex hull. */ private final PointSet candidates; -/** Points are tested against this quadrilateral */ +/** Points are tested against this quadrilateral. */ private final List quadrilateral; /** A precision context for comparing points. */ @@ -184,8 +184,8 @@ public final class ConvexHull2D implements ConvexHull { buildQuadrilateral(minY, maxX, maxY, minX); // if the quadrilateral is not well formed, e.g. only 2 points, do not attempt to reduce if (quadrilateral.size() < 3) { - //Point cannot yet be dismissed. - candidates.add(point); +// Point cannot yet be dismissed. +candidates.add(point); return this; } @@ -237,7 +237,6 @@ public final class ConvexHull2D implements ConvexHull { * coordinates). * * @param points the respective points with min/max x/y coordinate - * @return the quadrilateral */ private void buildQuadrilateral(final Vector2D... points) { quadrilateral.clear(); @@ -396,9 +395,9 @@ public final class ConvexHull2D implements ConvexHull { final double offset = Lines.fromPoints(p1, p2, precision).offset(point); if (precision.eqZero(offset)) { // the point is collinear to the line (p1, p2) - // Calculate distance to both points. - final double distanceToCurrent = p1.distance(point); - final double distanceToLast = p1.distance(p2); +// Calculate distance to both points. +final double distanceToCurrent = p1.distance(point); +final double distanceToLast = p1.distance(p2); if (includeCollinearPoints) { final int index = distanceToCurrent < distanceToLast ? size - 1 : size; diff --git a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHullBuilderTest.java b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHullBuilderTest.java index 249ee015..cd82e59b 100644 --- a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHullBuilderTest.java +++ b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/hull/ConvexHullBuilderTest.java @@ -232,39 +232,39 @@ class ConvexHullBuilderTest { @Test void testCollinearPointsIncludedColinearToFirstSide() { - // arrange - final Collection points = new ArrayList<>(); - points.add(Vector2D.of(1, 1)); - points.add(Vector2D.of(2, 4)); - points.add(Vector2D.of(10, 1)); - points.add(Vector2D.of(1.5, 2.5)); - - // act - ConvexHull2D.Builder builder = createConvexHullGenerator(true); - builder.append(points); - final ConvexHull2D hull = builder.build(); - - // assert - checkConvexHull(points, hull, true); +// arrange +final Collection points = new ArrayList<>(); +points.add(Vector2D.of(1, 1)); +points.add(Vector2D.of(2, 4)); +points.add(Vector2D.of(10, 1)); +points.add(Vector2D.of(1.5, 2.5)); + +// act +ConvexHull2D.Builder builder = createConvexHullGenerator(true); +builder.append(points); +final ConvexHull2D hull = builder.build(); + +// assert +checkConvexHull(points, hull, true); } @Test void testCollinearPointsExcludedColinearToFirstSide() { - // arrange - final Collection points = new ArrayList<>(); - points.add(Vector2D.of(1, 1)); - poi
[commons-geometry] 15/25: GEOMETRY-144
This is an automated email from the ASF dual-hosted git repository. mattjuntunen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-geometry.git commit a1cf5f0914f68e0890e06196ec96d13a0054be5b Author: Andreas Goß AuthorDate: Fri Jul 21 20:57:33 2023 +0200 GEOMETRY-144 Fix Documentation test as the order of vertices changed. --- .../commons/geometry/euclidean/DocumentationExamplesTest.java | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/DocumentationExamplesTest.java b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/DocumentationExamplesTest.java index e514bc2b..b86ef8ca 100644 --- a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/DocumentationExamplesTest.java +++ b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/DocumentationExamplesTest.java @@ -496,10 +496,10 @@ class DocumentationExamplesTest { // --- Assertions.assertEquals(4, vertices.size()); -EuclideanTestUtils.assertCoordinatesEqual(Vector2D.ZERO, vertices.get(0), TEST_EPS); -EuclideanTestUtils.assertCoordinatesEqual(Vector2D.of(1, 0), vertices.get(1), TEST_EPS); -EuclideanTestUtils.assertCoordinatesEqual(Vector2D.of(1, 1), vertices.get(2), TEST_EPS); -EuclideanTestUtils.assertCoordinatesEqual(Vector2D.of(0, 1), vertices.get(3), TEST_EPS); +EuclideanTestUtils.assertCoordinatesEqual(Vector2D.of(1, 0), vertices.get(0), TEST_EPS); +EuclideanTestUtils.assertCoordinatesEqual(Vector2D.of(1, 1), vertices.get(1), TEST_EPS); +EuclideanTestUtils.assertCoordinatesEqual(Vector2D.of(0, 1), vertices.get(2), TEST_EPS); +EuclideanTestUtils.assertCoordinatesEqual(Vector2D.ZERO, vertices.get(3), TEST_EPS); Assertions.assertTrue(containsAll); }