RFR: 8089009: TableView with CONSTRAINED_RESIZE_POLICY incorrectly displays a horizontal scroll bar. [v2]

Andy Goryachev angorya at openjdk.org
Thu Aug 11 22:01:09 UTC 2022


On Thu, 11 Aug 2022 20:51:50 GMT, Marius Hanl <mhanl at openjdk.org> wrote:

>> I am also for declaring a constant
>> 
>> 
>> private static final double EPSILON = .0000001;
>> 
>> 
>> and using it in on lines 226 and  251.
>
> Just a question out of curiosity, is there some kind of recommended value for epsilon? 
> I remember we also have very small epsilon in `Region` for snapping.

This is a *good* question.
In this case, we are summing column widths, so we can estimate the worst case scenario by simply adding max errors accumulated after each addition:

sum(N * 2 * ε * |w|)

where
N = number of columns
ε = upper bound for rounding error, or epsilon which is about 1e-16 [0]
w = column width

So, plugging a 100 columns of 200 px wide we get something to the order of 1e-12 .. 1e-11.

On a side note, we could have used Unicode here

private static final double ε = .0000001;


[0] https://en.wikipedia.org/wiki/Machine_epsilon
[1] https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html

-------------

PR: https://git.openjdk.org/jfx/pull/848


More information about the openjfx-dev mailing list