empress icon indicating copy to clipboard operation
empress copied to clipboard

Precompute constant in arc approximation function

Open fedarko opened this issue 3 years ago • 0 comments

Discussed with @kwcantrell earlier today. In the following function:

https://github.com/biocore/empress/blob/26f1b02caa004c7db5e4e281681804b34f124622/empress/support_files/js/empress.js#L595-L598

It should be possible to rewrite the first line as

var numSamples = Math.floor(Math.abs(19.09859 * totalAngle));

... since the 60 / pi value will always be the same. This may save us some time, since in theory this function is called once for every internal node when doing the circular layout; Kalen brought up that if JS' interpreter is smart enough it may already be doing this behind the scenes, but at least this way we will make the code a bit clearer.

When we make this change, we should also add a comment explaining things / linking to this issue so the person reading the code knows where the 19.09859... figure came from.

fedarko avatar Oct 29 '20 07:10 fedarko