Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
ofn-stroke-fill-paths
#1
Following EsperMachine's remarks, I'm going to upgrade the script formerly known as stroke-fill-visible-paths. The changes I envision are:
  • add a "reverse gradient" option
  • add stroke in "line" mode for cleaner results
  • possibly split the stroke/fill choices in two different menu entries

Anything else?
Reply
#2
I think my idea was to basically get rid of 'Background Fill' and 'Layer Name' (and perhaps 'Opacity' if a Layer Group is possible).
Add a 'Reverse Gradient Option'.
Change 'Layers' to 'Multiple' or 'Layer Group'.

Plus, it would be nice to improve on the confusion i had with the 'Generate Intermediate Paths' script and the z-order.
Just call it Top and Bottom path instead of Beginning and End.
That would make it more intuitive.
Reply
#3
(06-23-2018, 01:40 PM)Espermaschine Wrote: I think my idea was to basically get rid of 'Background Fill' and 'Layer Name' (and perhaps 'Opacity' if a Layer Group is possible).
Add a 'Reverse Gradient Option'.
Change 'Layers' to 'Multiple' or 'Layer Group'.

Plus, it would be nice to improve on the confusion i had with the 'Generate Intermediate Paths' script and the z-order.
Just call it Top and Bottom path instead of Beginning and End.
That would make it more intuitive.



EDIT:
i was also able to replicate the bug i was experiencing
  • Background fill is necessary in many cases (even if I could make transparency the default)
  • Layer name maybe an unnecessary complexity
  • A frequent use case of te script is animations. "Beginning" and "End" refer to the time flow in the animation, which is bottom to top in the layer stack. This is why layers/paths are generated in that order.
  • Reverse gradient will be included
  • Having the option to put the layers in a group is a good idea but I keep the other two options (Single and Multliple) because animations require the layers to be at the top level.
  • Thanks for the bug report. Replicated and fixed. The code was setting the FG color for the fill before creating the layer, so if you want the layer background with the FG color you get the same color as what you are going to fill the selection with.

Reply
#4
(06-23-2018, 05:00 PM)Ofnuts Wrote:
  • A frequent use case of te script is animations. "Beginning" and "End" refer to the time flow in the animation, which is bottom to top in the layer stack. This is why layers/paths are generated in that order.

I still cant wrap my head around the concept.

So if i want to make 3D text, i start with the base text and then downscale for the perspective extrusion.
Which of the paths is the beginning and which is the end ?

Is the smaller one the beginning, because you build a "house" from the ground up and not down from the roof to the base ?

Another confusing thing about the intermediate paths script is when you call it up for the first time, there is only an option for the end path.
Only when you call it up a second time there will also be an option for the beginning path.
Reply
#5
(06-23-2018, 05:08 PM)Espermaschine Wrote:
(06-23-2018, 05:00 PM)Ofnuts Wrote:
  • A frequent use case of te script is animations. "Beginning" and "End" refer to the time flow in the animation, which is bottom to top in the layer stack. This is why layers/paths are generated in that order.

I still cant wrap my head around the concept.

So if i want to make 3D text, i start with the base text and then downscale for the perspective extrusion.
Which of the paths is the beginning and which is the end ?

Is the smaller one the beginning, because you build a "house" from the ground up and not down from the roof to the base ?

Another confusing thing about the intermediate paths script is when you call it up for the first time, there is only an option for the end path.
Only when you call it up a second time there will also be an option for the beginning path.
  • The 3D must be generated back-to-front, in other words,"front" is the last layer produced, at the top of the Layers stack.
  • Layers are generated by stroke-fill in the same stack order as the paths, so the "front" path should be the top one.
  • The paths are also generated bottom to top in the path stack, this means that starting from the paths in path-inbetweener, the "begin" path is the one in the back/at the bottom.
  • When one defines a Python plugin where the first argument is a path, this argument is implicitly taken as the active path when the script is called. So if you call path-inbetweener by right-clicking on a path in the Paths lists that path is implicitly the "Begin" one so the one you have to enter is the one for the end/top/front. When you replay the script there is no implicit argument so you are able to enter both paths.
You could be making things harder than they areSmile

TL;DR:
  • bottom=begin=back (mnemonic: the three "B"s)
  • top=end=front

Reply
#6
(06-23-2018, 07:52 PM)Ofnuts Wrote: When one defines a Python plugin where the first argument is a path, this argument is implicitly taken as the active path when the script is called. So if you call path-inbetweener by right-clicking on a path in the Paths lists that path is implicitly the "Begin" one so the one you have to enter is the one for the end/top/front. When you replay the script there is no implicit argument so you are able to enter both paths.

You could be making things harder than they are Smile

coder versus artist perspective
aka user friendliness
Reply
#7
(06-23-2018, 08:08 PM)Espermaschine Wrote: coder versus artist perspective
aka user friendliness

The current behavior is animation-artist-friendly; assuming I have some 'Espermaschine' option to work the other way, where does it go? when doing the paths or when doing the layers (I assume that we agree that in the end, the top layer is the front of the 3D).
Reply
#8
All im asking for is a user friendly script, no extra Esper option required.
I swear, next week i have forgotten everything we just discussed.

If your code perspective beats my 3D needs because animation has the priority, then fine, but perhaps the script interface could be designed in a way, that makes everything obvious, so in the future i dont have to check the manual or this thread again.

TBH, even after having this conversation with you, i can hardly remember how it works.

Do i really have to check a seven page gimpchat thread, to understand how to use a fairly simple effect ?
And im not even the weakest link in the chain here. Think of the 78 year old moms ! Big Grin
Reply
#9
@ofnuts, as far as i can tell you havent updated the script yet, have you ?

Even if you dont want to update the interface, it would be nice to have the bug fixed, i posted.
Reply
#10
(06-30-2018, 07:15 PM)Espermaschine Wrote: @ofnuts, as far as i can tell you havent updated the script yet, have you ?

Even if you dont want to update the interface, it would be nice to have the bug fixed, i posted.

Not yet, I'm a bit busy these days. As far as I can tell, the bug you mention is easily circumvented if you fill the layers background with anything but the foreground color (in most cases that means to set the background color and use it instead).
Reply


Forum Jump: