Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The PolylineGeometry not drawns in some cases with hardware Win32RenderingMode #17536

Open
VladimirDrobyshev opened this issue Nov 17, 2024 · 3 comments
Labels

Comments

@VladimirDrobyshev
Copy link
Contributor

Describe the bug

The filled PolylineGeometry not draws in some points configurations with RenderingMode not equals to Win32RenderingMode.Software.

To Reproduce

Run attached sample, there is only 2 rendered geometries instead of 3.
This geometry is rendered:

    Point[] points = new Point[]
    {
        new(107, 3340),
        // new(263, 1770),
        new(418, 2160),
        new(574, -1340),
        new(730, -2900),
        new(730, 2837452751),
        // new(574, 2837452751),
        new(418, 2837452751),
        new(263, 2837452751),
        new(107, 2837452751)
    };

But if uncomment all points (points3 in sample) the geometry becomes invisible, if comment anoter 2 it showns again.

Than uncomment the following line in the Program.cs file:

//.With(new Win32PlatformOptions { RenderingMode = new [] { Win32RenderingMode.Software } })

Than run sample again, there is all 3 geometries.

Sample: GeometryBug.zip

Expected behavior

All 3 geometries are drawn with any hardware render mode

Avalonia version

11.2.1

OS

Windows

Additional context

With harware render mode:
изображение

With software render mode:
изображение

@VladimirDrobyshev VladimirDrobyshev changed the title DrawingContext.DrawGeometry() method works incorrect with not Win32RenderingMode.Sfotware render mode in some cases PolylineGeometry not drawns in some cases with hardware Win32RenderingMode Nov 17, 2024
@VladimirDrobyshev VladimirDrobyshev changed the title PolylineGeometry not drawns in some cases with hardware Win32RenderingMode The PolylineGeometry not drawns in some cases with hardware Win32RenderingMode Nov 17, 2024
@timunie
Copy link
Contributor

timunie commented Nov 17, 2024

2837452751 👀

@VladimirDrobyshev
Copy link
Contributor Author

2837452751 👀

Yes, it's part of zoomed geometry

@robloo
Copy link
Contributor

robloo commented Nov 26, 2024

There are limits with what the rendering stacks can do. You may need to re-normalize.

That said, the Win32 software mode should be able to use doubles which is even better than Skia which is limited to single precision.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants