biocore/empress

Precompute constant in arc approximation function

開放

#438 建立於 2020年10月29日

 (0 則留言) (0 個反應) (0 位負責人)JavaScript (32 個分叉)auto 404
good first issueperformance

倉庫指標

星標
 (56 顆星)
PR 合併指標
 (30 天內沒有已合併 PR)

描述

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.

貢獻者指南