|
From: | Auto mailings of changes to Lily Issues via Testlilyissues-auto |
Subject: | [Lilypond-auto] [LilyIssues-auto] [testlilyissues:issues] #5922 Rewrite Skyline code |
Date: | Wed, 29 Apr 2020 07:47:42 -0000 |
Comment:
setting to needs_work for now; this needs to be performance neutral at the very least.
[issues:#5922] Rewrite Skyline code
Status: Started
Created: Sun Apr 19, 2020 09:42 PM UTC by Han-Wen Nienhuys
Last Updated: Tue Apr 28, 2020 07:43 AM UTC
Owner: Han-Wen Nienhuys
Do not use contiguous buildings. Instead, Y=-infinity is represented
by simply omitting the building. This reduces memory requirements
(for example, an empty skyline needs no buildings at all.), and
obviates the Skyline::normalize() call which takes ~1 % of CPU.
Buildings store Y coordinate of the left edge, rather than the
intercept at x==0.0. This avoid excessive rounding problems when X
is large, and lets us compute building.height_at(x[LEFT]) cheaply.
Avoid using infinity and NaN. We only let the X coordinates at the
be infinite (which is only necessary if a minimum height is
specified)
Aggressively prune zero width
buildings. Adjust input/regression/skyline-point-extent to match
this behavior
Simplify the merge code, using less nested if statements.
Add a unittest for the Skyline code
Debug output is produced with Lookup::segments_to_line_stencil()
https://codereview.appspot.com/547980044
Sent from sourceforge.net because address@hidden is subscribed to https://sourceforge.net/p/testlilyissues/issues/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/testlilyissues/admin/issues/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.
_______________________________________________ Testlilyissues-auto mailing list address@hidden https://lists.sourceforge.net/lists/listinfo/testlilyissues-auto
[Prev in Thread] | Current Thread | [Next in Thread] |