[jira] [Commented] (GEOMETRY-23) Remove Euclidean Point Classes

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

[jira] [Commented] (GEOMETRY-23) Remove Euclidean Point Classes

JIRA jira@apache.org

    [ https://issues.apache.org/jira/browse/GEOMETRY-23?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16678197#comment-16678197 ]

Gilles commented on GEOMETRY-23:

 Let's assume that within this library, the term "vector" means "Cartesian".
 Then please
 * remove the {{ofSpherical}} and {{toSpherical}} methods in order to remove the circular dependency between {{Vector3D}} and {{SphericalCoordinates}} (since {{Vector3D}} is the low-level object, conversion to and from it should be handled in the higher-level object),
 * ditto for the {{ofPolar}} and {{toPolar}} in {{Vector2D}},
 * rename {{ofArray}} to {{of}}.

Side note: The RAT report signals license non-compliances in module {{commons-geometry-euclidean}} in the "test" area (python code). Could you please look whether a header can be added; if not, the files should be removed from the RAT check in the POM file. Thanks.

> Remove Euclidean Point Classes
> ------------------------------
>                 Key: GEOMETRY-23
>                 URL: https://issues.apache.org/jira/browse/GEOMETRY-23
>             Project: Apache Commons Geometry
>          Issue Type: Improvement
>            Reporter: Matt Juntunen
>            Priority: Major
>              Labels: pull-request-available
> Based on discussion of the current Point/Vector API in GEOMETRY-14 and research into other geometric libraries, I think we should remove the Euclidean Point?D classes and make Vector?D also implement Point. This will end up being similar to the previous commons-math design but avoids the issue raised in MATH-1284 since the Point and Vector interfaces are not related. They just happen to be implemented by the same class, which we're calling Vector?D since a vector can be used to indicate a point (by adding it to the origin).
> In the course of trying this out this design, I ended up removing 7 classes and simplifying several methods. I think that's a good indicator that this is a good design choice.
> Pull request: https://github.com/apache/commons-geometry/pull/15

This message was sent by Atlassian JIRA