biocore/empress

Precompute constant in arc approximation function

Aperta

#438 aperta il 29 ott 2020

 (0 commenti) (0 reazioni) (0 assegnatari)JavaScript (32 fork)auto 404
good first issueperformance

Metriche repository

Star
 (56 stelle)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

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.

Guida contributor