[Interest] sin wave with QPainterPath between two points

Elvis Stansvik elvstone at gmail.com
Thu Jul 20 10:28:17 CEST 2017


2017-07-20 10:23 GMT+02:00 Jean-Michaël Celerier
<jeanmichael.celerier at gmail.com>:
> You can just compute the sine directly :
>
>    for(int i = 0; i < width; i++)
>    {
>      int x = i;
>      int y = height / 2 + amplitude * std::sin(2 * M_PI * freq * i / width +
> phase);
>      path.lineTo(x, y);
>    }

I think he wanted to avoid an approximation with straight lines and
use cubic beziers.

Jean-Michaël: There seems to be many pages explaining the theory
behind sine approximation using Beziers if you Google.

Elvis

>
>
>
>
>
> -------
> Jean-Michaël Celerier
> http://www.jcelerier.name
>
> On Thu, Jul 20, 2017 at 9:47 AM, Patrick Stinson <patrickkidd at gmail.com>
> wrote:
>>
>> Hello! I want to figure out how to draw a sin wave between two QPointF’s
>> using QPainterPath. Calculating the cubic control points seems like the best
>> way, but I am far from mastering that theory.
>>
>> This is a diagramming app and the goal is to get a squiggly line between
>> two objects.
>>
>> Thanks!
>> _______________________________________________
>> Interest mailing list
>> Interest at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/interest
>>
>
>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>



More information about the Interest mailing list