It is currently 03 Aug 2020, 14:47

• Featuring Members' Works (Image Attachments) •
1: member
2: member
3: member
4: member
5: member

GIMP/GL:  Tutorials | Tips | Questions | Interests | Script Requests
Recommendations:  Index | Top 10
Resources:  🡆 Python-Fu Plug-ins | Scheme-Fu Scripts | GIMP
Python:  Lessons | Questions | Exercises
The Arts:  GIMPed | GIMPed Photos | Other | Contests | Public Domain Images | Isolated Images | Blender
Inkscape
Social:  Say Hello | Anything Goes | Shares | FCSP

Path Scale Copy Rotate Shift Walk for Gimp 2.10 Update to Version 0.03

Share your Python Fu Scripts/plug-ins for GIMP here
skinnyhouse
Script Coder

Path Scale Copy Rotate Shift Walk for Gimp 2.10 Update to Version 0.03

Post#1 by skinnyhouse » 11 Jul 2020, 13:46


Copy_Rotate_Shift_Scale_Walk_v003.py
(30.34 KiB) Downloaded 25 times
Download and add the filter to your user plug-ins folder. Look for it in the main Filters menu.

The main feature in the update is to provide an option to use the currently selected brush to stroke paths. It also adds an option to adjust the positioning of the repeated paths to evenly spaced or with a compensation adjustment (as used in the previous version).
Dialog_Coded.jpg
Dialog_Coded.jpg (73.49 KiB) Viewed 734 times
The number of repetitions can now be set to just one - the copy path will be placed half way along the walk path before being manipulated. Possibly a useful feature for mandala work.

The following examples were created using the paths shown in the screenshot below:
Paths_Used.jpg
Paths_Used.jpg (125.75 KiB) Viewed 734 times
The output using the default settings with Number of Repeats set to 1:
1 rep no scaling.jpg
1 rep no scaling.jpg (10.61 KiB) Viewed 734 times
Output scaled up:
1 rep 0.5 scaling.jpg
1 rep 0.5 scaling.jpg (14.26 KiB) Viewed 734 times
Output scaled down:
1 rep -0.5 scaling.jpg
1 rep -0.5 scaling.jpg (8.13 KiB) Viewed 734 times
The next set of images illustrate the spacing option.
Firstly 5 repeats without scaling (evenly spaced):
Even space no scale.jpg
Even space no scale.jpg (20.71 KiB) Viewed 734 times
5 repeats scaled down evenly spaced:
even space scaled down.jpg
even space scaled down.jpg (15.64 KiB) Viewed 734 times
5 repeats scaled down using compensation:
comp spacing scaled down.jpg
comp spacing scaled down.jpg (15.48 KiB) Viewed 734 times
Repeats scaled up with even spacing:
even spacing scaled up.jpg
even spacing scaled up.jpg (35.78 KiB) Viewed 734 times
Repeats scaled up using compensation:
comp spacing scaled up.jpg
comp spacing scaled up.jpg (35.82 KiB) Viewed 734 times
Brush stroking can be set from the 'Stroke path method' option. Obviously brush size spacing and dynamics will have a huge effect on the appearance of the stroked path. The examples are not particularly inspiring but choice of brush and colour and brush settings can make all the difference. It all works for me at least.

Here using a soft brush with a path width of 20:
soft brush width 10.jpg
soft brush width 10.jpg (21.08 KiB) Viewed 734 times
Here using a flower pipe brush:
flower pipe brush.jpg
flower pipe brush.jpg (33.36 KiB) Viewed 734 times
Same brush with increased spacing.
flower pipe brush more spacing.jpg
flower pipe brush more spacing.jpg (37.46 KiB) Viewed 734 times
And with more spacing and some dynamics thrown in:
flower pipe brush even more spacing.jpg
flower pipe brush even more spacing.jpg (33.43 KiB) Viewed 734 times
Have fun.
Last edited by skinnyhouse on 14 Jul 2020, 20:06, edited 1 time in total.
0

Issabella
Script Tester

Post#2 by Issabella » 11 Jul 2020, 16:04


Thank you so much Skinnyhouse for this new version. Here some of my results.
Attachments
Dialog_Coded1.jpg
Dialog_Coded1.jpg (116.19 KiB) Viewed 718 times
Dialog_Coded2.jpg
Dialog_Coded2.jpg (72.81 KiB) Viewed 718 times
Dialog_Coded3.jpg
Dialog_Coded3.jpg (85.3 KiB) Viewed 718 times
Dialog_Coded4.jpg
Dialog_Coded4.jpg (136.44 KiB) Viewed 718 times
Issabella

Don’t be afraid to start over. It’s a new chance to rebuild what you want.
0

skinnyhouse
Script Coder

Post#3 by skinnyhouse » 13 Jul 2020, 08:30


I definitely prefer this play with the brush option Issa. There seems to be a lot of play and adjustment needed to the brush settings to get what you want.
0

skinnyhouse
Script Coder

Post#4 by skinnyhouse » 13 Jul 2020, 09:02


Teapot asked on GimpChat about using the multiplier options - since they didn't seem to have much effect on the outcome of path stroking.

I will try to explain in greater detail how they work, using some of the examples I have, but the main point to bear in mind is that the effects are not so noticeable when applied to paths that use only rotation to generate shapes - the basic mandala shapes for example.

Skip down to the images if you would prefer nor to read the boring bits.

General Information

The multiplier options, which in development were called modifier options, provide a means of adding small variations to the paths produced and drawn by PSCRSW. Why provide them? Well it seemed like a good idea at the time and anyway what is Gimp if it is not our toy to play about with.

The multipliers will only take affect if one of the ‘Pattern Multiplier Options’ is selected. These options allow you to apply various patterns of incremental values to the positioning and/or rotation of the path that creates the patterns. I tend to call this path the ‘copy’ path since it is the path that is repeatedly copied (although the actual path name is of no use in the filter.

The multiplier values are set by the user in the filter dialog. Start with small values and gradually increase these until you find an effect that pleases you. If you increase the value of the y offset multiplier but select a ‘Pattern multiplier option’ that uses the x offset you will not be able to see any difference in the filter output: Make sure that your pattern and multiplier types match.

The Multiplier pattern type describes the pattern that is used to apply the incremental values up to its maximum extent (this is set with the ‘Pattern multiplier steps’ value).

The Multiplier Patterns

Ripple pattern: adds a value that increases incrementally from zero up to the maximum and then decreases to the minimum (a value of 0 – the multiplier value) and then increases back to zero before repeating.

Ascend Jump pattern: adds a value that increases incrementally from zero up to the maximum and then jumps back to zero before repeating.

Descend Jump pattern: The opposite of Ascend Jump.

Zigzag Small pattern: The values yo-yo between zero and the maximum value.

Zigzag Large pattern: The values yo-yo between the maximum value and its minus equivalent.


Some example outputs on paths using the angle modifier with full revolution applied:

The copy path used in this section and the output without using multipliers:
Rotation_Multipliers_Path.jpg
Rotation_Multipliers_Path.jpg (27.09 KiB) Viewed 675 times
The outputs have been overlaid to show the slightly different variations produced by each multiplier pattern:
Rotation_Multipliers_Overlaid.jpg
Rotation_Multipliers_Overlaid.jpg (130.36 KiB) Viewed 675 times

The effects of the patterns can be seen more clearly when using the x and/or y multipliers.

First image shows the simple path used in the following examples and the output without multipliers using the default filter settings and an X offset of 5 px. Note the even spacing between the lines, formed by the copy path, that make up the pattern:
X_offset_Multipliers_Path.jpg
X_offset_Multipliers_Path.jpg (13.59 KiB) Viewed 675 times
The output using the Ripple pattern:
X_offset_Multipliers_Ripple.jpg
X_offset_Multipliers_Ripple.jpg (33.66 KiB) Viewed 675 times
The output using the Ascend Jump pattern:
X_offset_Multipliers_AscendJump.jpg
X_offset_Multipliers_AscendJump.jpg (39.14 KiB) Viewed 675 times
The output using the Descend Jump pattern:
X_offset_Multipliers_DescendJump.jpg
X_offset_Multipliers_DescendJump.jpg (40.94 KiB) Viewed 675 times
And the output using one of the Zigzag patterns (not my favourite output):
X_offset_Multipliers_Zigzag.jpg
X_offset_Multipliers_Zigzag.jpg (46.11 KiB) Viewed 675 times
A final example with and without the use of multipliers using the copy path with 37 rotations:

No multipliers:

X_offset_Multipliers_None_37.jpg
X_offset_Multipliers_None_37.jpg (47.57 KiB) Viewed 675 times

With the Ripple pattern:

X_offset_Multipliers_Ripple_37.jpg
X_offset_Multipliers_Ripple_37.jpg (51.57 KiB) Viewed 675 times

Conclusion:

Play play play
0

Krikor
Forum Member

Post#5 by Krikor » 14 Jul 2020, 15:59


Hi Skinnyhouse,

With this version 0.02 I am getting an error that I don't get when I use the previous version and using the same paths.

I created a zero length 'walk' path for constraining the copy path. Then I created a copy path.

This structure works well using the script in the previous version as seen in the image below.
With the previous version, it creates the figure on the left (black shape on a white background). With version 0.02 it displays the error window on the right and does not create any figures.
Krikor - PSCRSW error V0.02
Krikor - PSCRSW error V0.02
pscrswV02ERROR.jpg (54.53 KiB) Viewed 641 times
But it doesn't work and displays an error when running this version, and using the same configuration as in the two scripts.
"I feel that in both art and music, it's not the success that matters but the pleasure it gives you. Focus on the pleasure and the learning will come naturally." - Brian Weston
0

skinnyhouse
Script Coder

Post#6 by skinnyhouse » 14 Jul 2020, 20:04


Thanks Krikor - good spot.
As soon as I saw your post I knew what I must have done.
Fixed in version 0.03 now at the top.
0

Krikor
Forum Member

Post#7 by Krikor » 15 Jul 2020, 00:59


Hi @skinnyhouse ,
skinnyhouse wrote:
14 Jul 2020, 20:04
Thanks Krikor - good spot.
As soon as I saw your post I knew what I must have done.
Fixed in version 0.03 now at the top.
Wow! Perfect, now it's working properly when I create a zero length 'walk' path. :thumbsup:

But ...
Somehow when I use 'Force full revolution' I feel that the plug-in no longer correctly correlates the number of copies for each repetition.

If I choose 'YES', the smaller the rotation angle, the greater the generated extension (number of copies), regardless of the number of copies I define in the 'Number of copies for each repeat' option.

In the previous version, version 0.01, even with the YES option selected, it was possible to control the number of copies for each repetition.
Krikor - PSCRSW number copies what?
Krikor - PSCRSW number copies what?
pscrswV03.jpg (115.44 KiB) Viewed 623 times
"I feel that in both art and music, it's not the success that matters but the pleasure it gives you. Focus on the pleasure and the learning will come naturally." - Brian Weston
0

skinnyhouse
Script Coder

Post#8 by skinnyhouse » 15 Jul 2020, 06:44


:thumbsup:
One bug squashed anyway.

Will have a look at the other issue.

Whilst I have not altered anything to affect this between the versions I did change the way that open and closed paths calculate the spacing along the walk path so that open paths use their full length to be walked along. This may be down to a rounding error somewhere so could take a while to track down.

Another good spot!
0

skinnyhouse
Script Coder

Post#9 by skinnyhouse » 15 Jul 2020, 20:13


Krikor:

Have just re-read your post again - having more time to absorb the content I think that the plug-in is behaving in the way that I intended it to.

Force full revolution option was always meant to set the 'number of copies for each repeat' to the number required to rotate the path through 360 degrees (and over-ride the number set by that option value) thus saving the user from having to work out the number of repeats.

So (here teaching granny to suck eggs I know) obviously with a Rotation Angle set to 10 degrees there would be 36 copies needed and a Rotation Angle set to 5 degrees would require 72 repeated copies.

If this didn't happen in version 0.01 then I have corrected that bug too.

I think I may provide an option in the future to allow the user to enter the angle of rotation at which to begin the repeat.
0

teapot
Forum Member

Post#10 by teapot » 17 Jul 2020, 04:25


Thank you very much for the detailed explanations of the multiplier options skinnyhouse.
GIMP Learn rocks...
0


GIMP/GL:  Tutorials | Tips | Questions | Interests | Script Requests
Recommendations:  Index | Top 10
Resources:  🡆 Python-Fu Plug-ins | Scheme-Fu Scripts | GIMP
Python:  Lessons | Questions | Exercises
The Arts:  GIMPed | GIMPed Photos | Other | Contests | Public Domain Images | Isolated Images | Blender
Inkscape
Social:  Say Hello | Anything Goes | Shares | FCSP

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Who is online

Users browsing this forum: No registered users and 15 guests