[
https://issues.apache.org/jira/browse/GEOMETRY-23?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16658134#comment-16658134
]
Gilles commented on GEOMETRY-23:
--------------------------------
bq. Things seem considerably cleaner so it feels like a good choice
Well, it shows that the library's existing functionality did not need the added
layer of complexity. Let's hope that we won't regret it later on. ;)
bq. matches the design of most other geometry libraries I've seen.
Thanks for looking; it's certainly a good hint.
When you say "most"... Did you explore why the design of the non-matching
libraries was as it was?
bq. some documentation explaining the decision
Seems pretty sensible, I think.
Consequently to the changes, I'd prefer the factory method in {{Vector3D}} to
be renamed {{ofCartesian}} (even if the implementation is with Cartesian
coordinates).
Do you agree?
> 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
(v7.6.3#76005)