Jump to content

Rounded box drawing issues


rabryan

Recommended Posts

I'm developing some code running on an Embest-STM32-DMSTF4BB board with SSD2119 LCD that draws a lot of rounded rectangles. I had been working off the master branch from a commit in early October. I just recently updated to the latest commit on master (bca78196) and the drawing of the rounded edges of the rectangles has degraded somewhat. For each edge, the drawing of the arc is not complete -- it skips a pixel just before rejoining the right angled lines of the rectangle. This results in 4 blank pixels in each rounded rectangle. Its not a resolution issue either since the missing pixels are colinear with the straight edges of the rectangle (i.e. they're on the same row or column of the straight edge line).

Have there been changes to the gdispDrawRoundedBox() or gdispDrawArc() code that would account for this?

Link to comment
Share on other sites

The old arc routines were significantly broken and have definitely been updated for the new code.

Arc's on the old system were VERY problematic and almost never got it right. Filled arc's previously did not even fill the arc area properly leaving a moire type pattern of gaps.

It is however quite probable that there are some boundary cases which my testing didn't include. Can you please upload me a short demo program that demonstrates the problem. Replace any variable numbers with absolutes (for example replace things like gfxGetWidth()/2 with an actual number) as the problem could be location and size specific.

I will get right on to fixing the problem for you.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...