poly line issue
Per Dalgas Jakobsen
pdj at knaldgas.dk
Tue Nov 10 08:09:58 UTC 2020
On 11/10/20 1:43 AM, Sam Varshavchik wrote:
> libxcb has no involvement with actual drawing or rendering. It's sole
> function is to transmit requests, and all their parameters, to the X
> server which then executes them. libxcb is really just a very thin
> mapping layer between a functional API and X protocol messages.
Great, then we can rule out any XCB issues.
>> xcb_poly_line (connection, XCB_COORD_MODE_ORIGIN, window,
>> foreground, 5, diamond);
> This would be the PolyLine request:
Thanks, I've now read the polyline section thoroughly, some other
sections not as thoroughly, and skimmed the rest of the document.
> Note the nuanced detail of how various coordinates get interpreted and
> the meticulous detail in defining the actual drawn pixels.
Yes, the documentation is pretty exact in many aspects.
> You're going to have to sift through the specification, to get the
> details of what happens. That's just one example (whose answer I don't
> recall off the top of my head), you'll have to decipher what's
> happening in your case similarly.
I can't find anything that reasonably will account for the behaviour I
see, although I have not yet fully comprehended the protocol.
>From the polyline section: "The lines join correctly at all intermediate
points, and if the first and last points coincide, the first and last
lines also join correctly." - Even without defining "join correctly" my
example on my machine joins the lines differently.
My diamonds are looking like this (missing right corner pixel):
Except when starting and ending at the right corner, in which case my
diamonds look like this:
My reasoning is: Entire shape is within clipping/bounding (as far as I
can see at least), the line joins should "join correctly", the polylines
consist of the same points (another test I made) but still the diamond
is only rendered correctly if the rightmost corner is first/last.
To me this seems inconsistent. How does it render on your machine?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the xorg