egui/crates/epaint
Emil Ernerfeldt 947b5813d7
Fix visual glitch on the right side of highly rounded rectangles (#4244)
* Part of https://github.com/emilk/egui/issues/4238

When one side of a rectangle is all rounding we need to take care not to
produce duplicated vertices in the rectangle path generator.

The old code only handled three sides, but forgot the last side (the
right side).
The new code handles the right side, and also handles the other sides
more robustly (with a floating point eps) and efficiently (in a single
pass).

The glitch was most notable in shadows with a high blur width.

Examples of the glitch:

<img width="203" alt="Screenshot 2024-03-26 at 20 15 38"
src="https://github.com/emilk/egui/assets/1148717/dc1c0a06-35f0-4fda-a011-0e37d18454a0">

<img width="220" alt="Screenshot 2024-03-27 at 09 48 48"
src="https://github.com/emilk/egui/assets/1148717/c278b28e-c3f9-4c82-ba20-0480621efd2f">

<img width="33" alt="Screenshot 2024-03-27 at 09 49 21"
src="https://github.com/emilk/egui/assets/1148717/379ddf77-6590-4444-9c2e-67ab1e071f0f">
2024-03-27 10:13:49 +01:00
..
benches Parallell tessellation (#3934) 2024-02-01 16:27:59 +01:00
fonts Move all crates into a `crates` directory (#1940) 2022-08-20 10:41:49 +02:00
src Fix visual glitch on the right side of highly rounded rectangles (#4244) 2024-03-27 10:13:49 +01:00
CHANGELOG.md Release 0.27.0 - Nicer menus and new hit test logic 2024-03-26 17:13:57 +01:00
Cargo.toml Put all egui crates as workspace crates (#3976) 2024-02-05 12:59:49 +01:00
README.md Add badges to all crates' README.md 2023-02-12 18:08:13 +01:00

README.md

epaint - egui paint library

Latest version Documentation unsafe forbidden MIT Apache

A bare-bones 2D graphics library for turning simple 2D shapes and text into textured triangles.

Made for egui.