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

Matt Juntunen commented on NUMBERS-90:
--------------------------------------

{quote}Is the "thickness" (*absolute* tolerance) the same for small coordinates 
as for very large ones?
{quote}
It's set by the caller for each object. Normally, you would use the same value 
for all of the objects that you're working with at the time to keep things 
consistent. For example, you'd choose a relatively large epsilon if you expect 
your coordinate value range to be large and a smaller one if you expect it to 
be small.
{quote}Unless I'm missing something, I don't think it should be for figuring 
out whether two points are close.
{quote}
Are there other options?

> DoublePrecisionContext
> ----------------------
>
>                 Key: NUMBERS-90
>                 URL: https://issues.apache.org/jira/browse/NUMBERS-90
>             Project: Commons Numbers
>          Issue Type: New Feature
>            Reporter: Matt Juntunen
>            Priority: Blocker
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> We should add a new class to commons-numbers-core that encapsulates 
> configurable strategies for comparing doubles. This is required for 
> GEOMETRY-11. Here is what I'm picturing:
> {code:java}
> // abstract class for the general concept of comparisons
> public abstract class DoublePrecisionContext implements Comparator<Double> {
>     public abstract boolean equals(double a, double b);
>     public int compare(double a, double b) { /* ... */ }
>     public int compare(Double a, Double b) { /* ... */ }
> }
> // ...
> // concrete class implementing a specific strategy
> public class EpsilonUlpDoublePrecisionContext extends DoublePrecisionContext {
>     public EpsilonUlpDoublePrecisionContext(double eps, double maxUlps) { /* 
> ... */ }
>     @Override
>     public boolean equals(double a, double b) { /* ... */ }
> } {code}
> Pull request: https://github.com/apache/commons-numbers/pull/28



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to