<html><head></head><body><div class="ydp6033a6byahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;"><div></div>
        <div dir="ltr" data-setdir="false">Apparently according to the email archive this never made it to the list. Retrying<br></div><div><br></div>
        
        </div><div id="ydp8b04763dyahoo_quoted_7198781843" class="ydp8b04763dyahoo_quoted">
            <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                
                <div>
                    Op woensdag 23 februari 2022 08:58:47 CET schreef Frans Meulenbroeks <fransmeulenbroeks@yahoo.com>:
                </div>
                <div><br></div>
                <div><br></div>
                <div><div id="ydp8b04763dyiv6029176273"><div><div style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;" class="ydp8b04763dyiv6029176273yahoo-style-wrap"><div dir="ltr"><span>Hi,</span></div><div dir="ltr"><span><br></span></div><div dir="ltr"><span>I'm trying to draw a polyline using the following C++ code:</span></div><div dir="ltr"><span><br></span></div><div dir="ltr"><div dir="ltr"><div dir="ltr">    std::vector<Position> points; // Position is just a struct with <x,y> coordinates<br></div> <div>    points2.emplace_back(Position{3, 0});<br>    points2.emplace_back(Position{5, 1});<br>    points2.emplace_back(Position{9, 2});<br>    points2.emplace_back(Position{8, 3});<br>    points2.emplace_back(Position{4, 4});<br>    points2.emplace_back(Position{0, 5});<br>    points2.emplace_back(Position{7, 6});<br>    points2.emplace_back(Position{6, 7});</div><div><br></div><div><br></div></div></div><div dir="ltr"><div dir="ltr"><div dir="ltr">    cairo_set_antialias(_cr, CAIRO_ANTIALIAS_NONE);  // my context is named _cr, not cr<br></div><div>    cairo_set_source_rgba(_cr, 1.0, 1.0, 0.0, 1.0);</div>    cairo_set_line_width(_cr, lineWidth);<br><br>    cairo_move_to(_cr, startpos.x + points[0].x + 0.5, startpos.y + points[0].y + 0.5);<br>    for (int i = 1; i < points.size(); i++)<br>    {<br>        cairo_line_to(_cr, startpos.x + points[i].x + 0.5, startpos.y + points[i].y + 0.5);<br>    }<br>    cairo_stroke(_cr);</div></div><div dir="ltr"><br></div><div dir="ltr">startpos.x indicating the location where I want to draw the polyline is 800. y is 200<br></div><div dir="ltr"><br></div><div dir="ltr">However when I look at the resulting image I get things like the image below.<br><span><div>E.g. I am not very happy with the pixel at 798, 205 as I am drawing no lines with x < 800 at all.</div></span><div>As these are measurement results I would like to see less overshoot.</div><div>As you can see from the code above I already added 0.5 to the coordinates.</div><div dir="ltr"><div>Is there a way to improve this? Or where is my expectation wrong?<br></div><div><br></div><div dir="ltr"><br></div><div dir="ltr">Thanks! Frans</div><div dir="ltr"><br></div><div dir="ltr">PS: this is all rendered using an ARGB32 surface of 1920x1080 pixels<br></div><div><br></div></div></div><div dir="ltr"> <span></span><img title="Inline-afbeelding" alt="Inline-afbeelding" src="cid:R7lEiiMqhPAcSAXs7ZrO" style="max-width:800px;width:100%;" class="ydp8b04763dyiv6029176273yahoo-inline-image" data-id="<688597a8-2bcc-4cbe-26fd-639fa86eb85c@yahoo.com>"><br><div><br></div></div><div dir="ltr"><div><br></div><div><br></div></div></div></div></div></div>
            </div>
        </div></body></html>