.CooCoo
3debdb13fc
prepress: one wide curve no longer slows region cleanup for every other curve
...
* prepress: one wide curve no longer slows region cleanup for every other curve
The flattener's region cleanup looks up the input curves whose bounds hold
both ends of an output piece. The lookup searched back from a point by the
width of the widest input curve, so one curve as wide as the page made every
lookup scan nearly every input curve, and the cleanup grew quadratically with
the number of curves.
The curves are now grouped by bounds width, each group within a factor of two,
and each group is searched within its own widest bounds. The lookup returns
the same curves in the same order as before, so the regions are unchanged.
* prepress: region cleanup keeps a curve held just inside its right edge
Far from the origin, `x - width` can round above the left edge of a curve
whose bounds hold `x`, and the width-group search then skipped that curve.
The search's left edge is now rounded outward.
---------
Co-authored-by: dotCooCoo <RobertLeeLW@gmail.com >
2026-11-12 10:08:20 -05:00
..
2026-11-12 07:49:33 -05:00
2026-11-11 19:01:12 -05:00
2026-11-11 17:42:11 -05:00
2026-11-11 18:08:00 -05:00
2026-11-12 09:12:40 -05:00
2026-11-11 21:38:01 -05:00
2026-11-12 06:25:55 -05:00
2026-11-11 19:19:03 -05:00
2026-11-11 20:17:35 -05:00
2026-11-11 20:19:00 -05:00
2026-11-01 12:03:49 -05:00
2026-11-11 18:07:00 -05:00
2026-11-11 20:51:12 -05:00
2026-10-28 16:49:37 -04:00
2026-11-07 15:48:07 +01:00
2026-11-11 22:43:11 -05:00
2026-11-02 21:52:51 -05:00
2026-11-11 21:36:33 -05:00
2026-11-11 18:38:46 -05:00
2026-11-12 05:35:48 -05:00
2026-11-12 07:25:00 -05:00
2026-11-03 05:56:54 -08:00
2026-11-11 18:39:42 -05:00
2026-11-11 20:07:35 -05:00
2026-11-11 19:46:19 -05:00
2026-11-11 20:25:48 -05:00
2026-11-12 06:26:14 -05:00
2026-11-11 20:05:20 -05:00
2026-11-12 10:05:07 -05:00
2026-11-11 20:41:34 -05:00
2026-11-11 19:20:26 -05:00
2026-10-27 09:21:01 -04:00
2026-11-07 01:58:39 -08:00
2026-11-12 10:06:20 -05:00
2026-11-11 17:07:37 -05:00
2026-11-11 17:29:14 -05:00
2026-11-11 20:43:12 -05:00
2026-11-11 18:41:32 -05:00
2026-11-11 21:58:39 -05:00
2026-11-11 21:33:47 -05:00
2026-11-11 06:17:52 -05:00
2026-11-11 19:30:23 -05:00
2026-11-11 20:35:11 -05:00
2026-11-11 19:45:03 -05:00
2026-11-11 07:37:06 -05:00
2026-10-31 21:02:31 -07:00
2026-11-11 17:46:14 -05:00
2026-11-11 19:48:05 -05:00
2026-11-11 20:58:36 -05:00
2026-11-11 18:47:08 -05:00
2026-11-11 20:46:15 -05:00
2026-11-11 21:30:41 -05:00
2026-11-11 21:39:55 -05:00
2026-11-11 19:46:48 -05:00
2026-11-03 23:06:04 -05:00
2026-11-12 06:26:09 -05:00
2026-11-11 22:07:26 -05:00
2026-11-11 15:26:10 -05:00
2026-11-11 21:57:52 -05:00
2026-11-11 20:17:35 -05:00
2026-11-11 21:39:13 -05:00
2026-11-11 20:16:51 -05:00
2026-11-11 18:43:46 -05:00
2026-11-11 21:01:51 -05:00
2026-11-12 09:10:41 -05:00
2026-11-11 19:48:05 -05:00
2026-11-07 15:44:13 +01:00
2026-11-11 22:44:59 -05:00
2026-11-12 06:26:30 -05:00
2026-11-11 20:59:00 -05:00
2026-11-12 09:45:31 -05:00
2026-11-11 16:12:06 -05:00
2026-11-11 17:29:14 -05:00
2026-11-12 05:35:48 -05:00
2026-11-11 18:55:20 -05:00
2026-11-12 10:08:20 -05:00
2026-11-12 10:05:25 -05:00
2026-11-04 18:11:37 +01:00
2026-11-11 21:37:35 -05:00
2026-11-11 18:43:21 -05:00
2026-10-25 21:59:22 -04:00
2026-11-12 03:20:05 -05:00
2026-11-12 06:22:37 -05:00
2026-11-11 22:44:19 -05:00
2026-11-02 22:48:25 -05:00
2026-11-11 21:58:16 -05:00
2026-11-11 21:07:34 -05:00
2026-11-11 06:40:49 -05:00
2026-11-11 20:30:38 -05:00
2026-11-11 20:41:56 -05:00
2026-11-12 06:26:19 -05:00
2026-11-11 16:40:42 -05:00
2026-11-11 19:19:30 -05:00
2026-11-11 18:39:14 -05:00
2026-11-11 19:43:41 -05:00
2026-11-12 05:48:58 -05:00
2026-11-12 10:05:16 -05:00
2026-11-12 10:05:38 -05:00
2026-11-11 18:50:38 -05:00
2026-11-07 15:43:45 +01:00
2026-11-11 16:23:23 -05:00
2026-11-12 09:11:48 -05:00
2026-11-12 10:06:13 -05:00
2026-11-05 10:29:52 +01:00
2026-11-11 21:30:17 -05:00
2026-10-31 16:20:44 +01:00
2026-11-11 21:32:31 -05:00
2026-11-12 06:26:24 -05:00
2026-11-11 20:54:41 -05:00
2026-11-11 22:44:39 -05:00
2026-11-11 20:46:37 -05:00
2026-11-11 18:44:44 -05:00
2026-11-11 19:48:05 -05:00