App-GUI-Harmonograph

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

    right) or the highlighted letters. When holding the Alt key you can also
    see which Alt + letter combinations trigger which button.

  Pendulum
    Each of the first three tabs contains the settings of two pendula. The
    first tab holds the lateral or linear pendula: X (left right movement)
    and Y (up and down). The second tab shows settings of the epicycle
    pendula E (left right) and F (up down). They also just move in x or y
    direction, but they swing not around the center of the image but around
    the point, where the pencil would have been. The third tab allows you to
    tweak the pendula W (wobble) and R (rotation). W moves the center of the
    paper beneath the pencil in a rotating manner whereas R rotates the
    paper around its center. Each of these 6 pendula have the exact same
    settings which behave all the same, except radius of R, which works as a
    zoom.

    In the left upper corner of each pendulum settings is a checkbox to
    activate or deactivate the pendulum - good to see the pendulums part in
    the pen movement. The rest is organized in 8 rows, which can be divided
    into 3 parts. Row 1 - 4 are about the pendulum frequency in Hertz. Row
    five allows you set the starting point (offset) and the last 3 rows are
    about the radius or amplitude of the pendulum mirroring the rows 1, 3
    and 4 because the work exactly the same way just not for the frequency
    but the radius parameter.

    Row one sets the whole number part of the frequency. This is the part
    you need to generate to generate the famous images which are based on
    integer rations. You can either use the slider the + an - buttons or
    insert a number into the text field (which is true off all slider combo
    widgets). Behind the slider combo in row one is a drop down menu which
    lets you choose a natural constant like Pi or Phi. It gets multiplied
    with the frequency. This allows you to explore the nature of these
    famous constants. Among the constants are also the natural numbers 1, 2
    and 3 in case you need to crank up the frequency up to 300.

    The second row enables you to set values with three decimals. If you for
    instance choose a base frequency of 5 and dial in 15 in the second row,
    the actual frequency will be 5.015 times the natural constant. Behind
    the slider are two checkboxes. One to additionally invert (1/x) the
    frequency value and one to flip the pendulum direction (f = -f).

    The third row lets you dial in a damping value which makes the pendulum
    each round slower (bigger value -> more damping). Behind it is a
    selector. If its on minus the damping will be same each round but set on
    "*" the damping will be proportional to the frequency. Still behind it
    is a checkbox. When selected the frequency is allowed to become negative
    by damping.

    The fourth row is about daming acceleration or with other words, how
    much the damping changes from dot to dot. Beside the c value you have
    this time four types of acceleration. Minus and times work as before and
    plus and divided by are just their opposite.

    The fifth row has a slider that sets the starting position of the
    pendulum along its expected track. If the slider is on max you move the
    pendulum a quater rotation ahead. To add another quarter check the box
    left beside it. The last box adds another half rotation. This allows you
    to flip or mirror the image in meaningful ways.

    The sixth row mirrors the first but with 2 distinctions. Its not about
    integer values but percentage values of the original pendulum length.
    This length will be calculated by the program for opimal display. Thi
    slider helps you only to change the proportions of the amplitude towards
    the other pendula. Natural constants are also here available as a factor
    and behind the on the most right is a button to reset the radius to 100
    percent.

    The seventh row is the amplitude size, which simple allows to make the
    picture larger or smaller depending if the pendulum left the frame or
    doesn't move enough. As with reqency, also the amplitude can be damped
    over time and this damping can accelerated.

    Row eight and nine are exact copies of row three and four, they just
    affect the radius / amplitude.

  Functions
    This tab lets you meddle with the equations that compute the mechanics
    of a pendulum. Because all ten rows are built the same I will explain
    only one. For instance the X pendulum has only influence on the x
    coordinate of a dot, it is computed: "x = radius * cos (time)". The
    first selector allows you to swap out the cosine function. Instead you
    could get sine, tangent, cotangent, secant, cosekcant and the hyperbolic
    twin of the already mentioned functions.

    The second selector has five options: "= + - * /". If you choose the
    first (equal sign) your time variable will be just swapped out with
    another variable. The other four option describe the operation that will
    be applied upon you time value. So e.g. if you select plus the resulting
    formula will be "x = radius * cos (time + (...))". The dots allude to
    whatever you will choose with the next three selectors.

    Selector three and four are just factors. They contain natural numbers
    and natural constants you can multiply the variable with. And last not
    least selector five holds the variables time frequency and
    radus/amplitude of each pendulum. This allows you for instance add the
    (always) current pendulum frequency of pendulum W to the time value of
    Pendulum X resulting in unpredictable shapes. There is lot to explore.

    Pendulum W affects the x and y coordinate, hence it has two rows for
    each case. Even more special is "Pendulum" R - the rotation movement of
    the paper. This is computed by an ordinary 2 x 2 rotation matrix (we are
    in 2D). Each cell of this matrix has here its own row. Its R_11, R_12,
    R_21, R_22. But if you not sure just hover with the mouse and get the
    hints.

    The very last row is different and contains only one switch that will
    determine if W or R pendulum is applied first. Default and what is also
    more comprehensible is that R is apllied first. But the arstist in you
    might can choose here differently.

  Visual Settings
    Due to the section headins, this tab is self explanatory. First choos if
    you want to paint dots or connect them. Please not that pen thickness of
    one is very thin and you might not see any dots in that setting. The pen
    style is more of an gimmick. Most useful are solid and dotted lines. The
    dot density allows you to juggle two extremes. Low density makes for
    fast drawn lines and dots but also pointy curves. So you might want to
    raise the value for smooth curves. The fine tuning of dot density makes
    only sense if you draw dots, becasue even a slight change can produce
    very different dot pattern. The line length is in seconds in minutes so
    you can understand their proportion to the frequencies, which are in
    Hertz (rotation / second).

    The last section on this tab is about the color change or color flow.
    You have 4 types and according to the current type only the widgets
    which have an impact are enabled. When flow type *"no"* in on, you paint



( run in 0.800 second using v1.01-cache-2.11-cpan-39bf76dae61 )