Re: [Gimp-developer] Rotation for brushes

2008-03-18 Thread Joao S. O. Bueno
On Tue 18 Mar 2008 09:38:26 jbaker wrote:
> it would also be nice to tie in scale and rotate (and any other changes)
> with gimp-python...

That part comes last - when it is implemented in the core, calls for this 
should be added to te PDB (there are missing PDB calls for controling brush 
scale, and paint parameters as jitter currently).

Once it is in the PDB, they wod be available from python, but also, I am 
working in implementing gimp brushes as python objects, and it would be 
trivial to add rotation support there once it is in the core.


As for the User Interface for this, I think mapping curves from input 
parameters to brush/tool properties is the way to go. (that is,  I can think 
of a curve mapping painting angle to brush angle  :-)   )

http://wiki.gimp.org/gimp/SummerOfCode2008ideas
http://bugzilla.gnome.org/show_bug.cgi?id=119240

js
-><-

> ___
> Gimp-developer mailing list
> Gimp-developer@lists.XCF.Berkeley.EDU
> https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-18 Thread jbaker
it would also be nice to tie in scale and rotate (and any other changes) 
with gimp-python...
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-18 Thread Sven Neumann
Hi,

On Sat, 2008-03-15 at 23:02 -0700, David G. wrote:
> Add a option to rotate brushes to compliment the scaling.

In case someone wants to start working on this, here's a rough outline
of what needs to be done:

(1) Rename the scale() method of GimpBrush to transform().
(2) Add an angle parameter to the transform method.
(3) Implement the rotation for all derived brush classes.
The difficult part is to do the rotation, efficiently,
for pixmap brushes.

When we are this far, we can start to consider how the angle should be
controlled by the user. As a start one would add methods to GimpContext
to rotate the current brush so that keyboard shortcuts can be added for
this. Later we can add more sophisticated things then.

The next logical step after adding rotation would be to change the
GimpBrush::transform method to take a GimpMatrix3 parameter and to allow
for arbitrary affine transformations (that includes shearing). I am sure
that there is some efficient code for this out there that we could
use...


Sven


___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-17 Thread David Gowers
On Mon, Mar 17, 2008 at 11:35 PM, Alexandre Prokoudine
<[EMAIL PROTECTED]> wrote:
> On Mon, Mar 17, 2008 at 1:37 AM, Bill Skaggs wrote:
>  > David G. wrote:
>  >  >
>  >  >  Add a option to rotate brushes to compliment the scaling.
>  >  >  I don't know if this has been requested but it would be very
>  >  > helpful than creating a layer + using the rotation tool.
>  >
>  >  Wouldn't be all that hard to do.  How often do you think this
>  >  would be used?  What kind of brushes would you want to
>  >  use it for?
>
>  How much wrong would I be to suppose that this feature is a must for
>  supporting rotation of wacom pen? ;-)

Or mice? mice.. you know.. have a movement direction too.. and wacom
tilt does not map in an obvious way to rotation.
(as far as i understand, tilt makes sense as a way to apply biased
paint -- so it might work as an aspect ratio + scale + rotation
modifier. I think we could do something nice automatically here.. as
long as we still allowed GIH brushpipes to implement custom behaviour.
Brushpipes currently support things such as selection based on angle,
velocity, X and Y tilt, which are highly useful.
They need to be made easier to create and edit, as they will be always
more capable than any automatic modification we can devise.

something else to consider is, it's helpful for one input to map to
one output -- if rotation maps to movement angle (and I believe it
should by default), then it would be confusing for another factor to
effect the rotation.
)

Anyway, the proposition of David G related only to manual setting of
brush angle, rather than modification during a stroke according to
things like direction and tilt. so to be correct, such a behaviour
(manually setting and drawing with a rotation) is entirely independent
of the particular device being used.
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-17 Thread Alexandre Prokoudine
On Mon, Mar 17, 2008 at 1:37 AM, Bill Skaggs wrote:
> David G. wrote:
>  >
>  >  Add a option to rotate brushes to compliment the scaling.
>  >  I don't know if this has been requested but it would be very
>  > helpful than creating a layer + using the rotation tool.
>
>  Wouldn't be all that hard to do.  How often do you think this
>  would be used?  What kind of brushes would you want to
>  use it for?

How much wrong would I be to suppose that this feature is a must for
supporting rotation of wacom pen? ;-)

Alexandre
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-17 Thread David G.

This might be a duplicate, did a mistake while sending.
---
I understand very well that GIMP Developers must be cautious implementing
this or any other visual effect that touches the toolboox/interface in
general. Of course I leave this proposal and also suggest as a remedy to use
"hotkeys", sadly the drawback is that the user wouldn't be aware of the
hotkey without any toolbox reference

My "hotkey" proposal for the rotation is using

Shift + Right-Click to use the mouse as a guide.

Sadly, I'm just a normal user who uses GIMP for website/projects and so on.
So I might be confused in some terms. 
-- 
View this message in context: 
http://www.nabble.com/Rotation-for-brushes-tp16075831p16092143.html
Sent from the Gimp Developer mailing list archive at Nabble.com.

___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-16 Thread David Gowers
On Mon, Mar 17, 2008 at 10:59 AM, Bill Skaggs <[EMAIL PROTECTED]> wrote:
> David G. <[EMAIL PROTECTED]> wrote:
>
>
> >  I proposed this because it will actually boost the simplicity
>  > of managing brushes to adapt in effects and splashes, instead
>  > of doing the layer and rotation "technique".  ...
>
>  I gather from this that you would like to be able to pick
>  an arbitrary rotation, and that simply rotating in the
>  direction of motion wouldn't fit your needs.

There are indeed many brushes which would work best with a specific
angle control -- they are mainly 'edge-effect' brushes. Anyway, I've
already stated my belief that if you have directional rotation, a
normative rotation angle control is necessary.

>
>
>
>  >  Maybe in the eyes of a developer this might be considered 'bloat'.
>
>  It isn't a question of bloat, it's a question of keeping the user
>  interface as simple as possible while providing the capabilities
>  that are wanted.  Adding an option that doesn't get used is
>  not harmless:  it makes it harder to find the things that are
>  important.  As an artist, you wouldn't want to have the

I believe that we can reduce the number of
screen-real-estate-occupying options anyway, and
use an interface like the ink tool nib adjuster to simultaneously set
brush normative rotation and aspect ratio.
Also possibly scale -- being able to use the scroll wheel on the nib
adjuster to change brush scale makes sense to me, skew -- ctrl+drag to
skew, flip -- shift-click near a border to flip on that axis, and
aspect -- shift-drag.

(to be congruent with the rest of the GIMP, it would probably be
better to put skew on shift and aspect+flip on control, since shift
typically adds and control typically constrains.)

As far as the backend goes, I would expect values for skew, rotate,
aspect, flip, scale to  be independently stored and modifyable by
keyboard shortcut*, and mostly combined** into one transform matrix
after a value changes.

*by which I mean that they can be shortcutted, not that they are by default.
** looking at the brush code, differently scaled versions of the brush
are cached. If directional rotation was implemented, we'd want to
cache rotations as well, I expect. So the transform might work better
in two steps.


An example of this kind of interface in a raster paint program is in
Pixia (Windows).

>  controls you need buried amongst 20 useless buttons and
>  sliders, would you?  That's why everything like this needs
>  discussion and careful consideration.
>
>
>
>   -- Bill
>  ___
>  Gimp-developer mailing list
>  Gimp-developer@lists.XCF.Berkeley.EDU
>  https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
>
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-16 Thread David Gowers
On Mon, Mar 17, 2008 at 10:45 AM, Bill Skaggs <[EMAIL PROTECTED]> wrote:
> David Gowers wrote:
>
>  >  Myself, I would use it for nearly every non-symmetrical brush (and
>  >  wish for the ability to v- or h-flip it, too), particularly when I'd
>  >  just copied something and was using the clipboard brush.
>  > Every brush that is remotely 'directional' needs this
>  >  (or, possibly the option to rotate the brush to match the movement 
> direction -- that would work fairly well much of the time.)
>
>  If the major usage case is to rotate to match the direction of
>  movement, it would make more sense to support that directly,
>  since it would be a p.i.t.a. for users to have to go into the options
>  to set a direction for each stroke.

I was envisaging it being settable via the keyboard. You can currently
set VBR angle by keyboard shortcuts.

In any case, you seem to have missed that the directional rotation
requires a 'normative' rotation value -- since many brushes, while
asymmetrical, have no obvious 'direction', we might want to allow a
default rotation to be set per brush..
It *would* be necessary to allow normative rotation to be modified, in
order for directional rotation to consistently remain sensible to the
user.


>
>  This shouldn't be too hard in principle:  it is already supported
>  as a mode for "image pipe" brushes.  In practice it hasn't worked
>  all that well, because it's not so easy to cleanly estimate the
>  direction of motion -- especially at turning points or the start
>  of a stroke -- so it has been hard to avoid getting anomalies
>  every so often.  The new motion-smoothing code that Alexia
I think that we need some trickery to happen -- for example, the right
thing for the start of a stroke is probably to match the angle for the
first event to the angle of the following event, so we would need to
draw the first dab, and then redraw it if the user continues the
stroke.

>  recently contributed might actually make this work better --
>  this should be investigated.
Because it's inertia-based, it does..  as long as there is *some*
smoothing happening, angle is much more coherent.
(note: I'm currently using 2.4.2, rather than SVN trunk, sadly.
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-16 Thread Bill Skaggs
David G. <[EMAIL PROTECTED]> wrote:

>  I proposed this because it will actually boost the simplicity
> of managing brushes to adapt in effects and splashes, instead
> of doing the layer and rotation "technique".  ...

I gather from this that you would like to be able to pick
an arbitrary rotation, and that simply rotating in the
direction of motion wouldn't fit your needs.


>  Maybe in the eyes of a developer this might be considered 'bloat'.

It isn't a question of bloat, it's a question of keeping the user
interface as simple as possible while providing the capabilities
that are wanted.  Adding an option that doesn't get used is
not harmless:  it makes it harder to find the things that are
important.  As an artist, you wouldn't want to have the
controls you need buried amongst 20 useless buttons and
sliders, would you?  That's why everything like this needs
discussion and careful consideration.

  -- Bill
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-16 Thread Bill Skaggs
David Gowers wrote:

>  Myself, I would use it for nearly every non-symmetrical brush (and
>  wish for the ability to v- or h-flip it, too), particularly when I'd
>  just copied something and was using the clipboard brush.
> Every brush that is remotely 'directional' needs this
>  (or, possibly the option to rotate the brush to match the movement direction 
> -- that would work fairly well much of the time.)

If the major usage case is to rotate to match the direction of
movement, it would make more sense to support that directly,
since it would be a p.i.t.a. for users to have to go into the options
to set a direction for each stroke.

This shouldn't be too hard in principle:  it is already supported
as a mode for "image pipe" brushes.  In practice it hasn't worked
all that well, because it's not so easy to cleanly estimate the
direction of motion -- especially at turning points or the start
of a stroke -- so it has been hard to avoid getting anomalies
every so often.  The new motion-smoothing code that Alexia
recently contributed might actually make this work better --
this should be investigated.

  -- Bill
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-16 Thread David G.



Bill Skaggs wrote:
> 
> David G. <[EMAIL PROTECTED]> wrote:
>>
>>  Add a option to rotate brushes to compliment the scaling.
>>  I don't know if this has been requested but it would be very
>> helpful than creating a layer + using the rotation tool.
>>
> 
> Wouldn't be all that hard to do.  How often do you think this
> would be used?  What kind of brushes would you want to
> use it for?
> 
>   -- Bill
> ___
> Gimp-developer mailing list
> Gimp-developer@lists.XCF.Berkeley.EDU
> https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
> 
> 

Alright, I'll try to be brief as possible. I proposed this because it will
actually boost the simplicity of managing brushes to adapt in effects and
splashes, instead of doing the layer and rotation "technique". There are so
many floral/grunge/splatter brushes that have been added in the GIMP. (ex
http://gimp-tutorials.net/vinal-gimp-brushes ) 

How often will it be used? Well that's hard to calculate, globally speaking.
An artist/amateur/customizer will probably use this, I dare to say they
would use the rotation a lot.

Maybe in the eyes of a developer this might be considered 'bloat'. 
-- 
View this message in context: 
http://www.nabble.com/Rotation-for-brushes-tp16075831p16086105.html
Sent from the Gimp Developer mailing list archive at Nabble.com.

___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-16 Thread GSR - FR
Hi,
[EMAIL PROTECTED] (2008-03-16 at 1537.58 -0700):
> David G. <[EMAIL PROTECTED]> wrote:
> >
> >  Add a option to rotate brushes to compliment the scaling.
> >  I don't know if this has been requested but it would be very
> > helpful than creating a layer + using the rotation tool.
> >
> 
> Wouldn't be all that hard to do.  How often do you think this
> would be used?  What kind of brushes would you want to
> use it for?

Ohh, no, please, not yet another duplication. The system should avoid
this, and try to unify instead. You can scale brush in one place (by
means of a factor, so try and error) or two if the brush is editable
(pixel size). It would be better thinking how to get things in one
single place, with controls that are direct, instead of too many
places, too many conditionals and too many indirect controls. I never
understood why pixmaps were not made a possible source for the brush
editor when it was added, and then all the ops that make sense
(rotation, resizing, aspect...) be applied to them (from user PoV at
least, even if internally it means different processing) for example.

GSR
 
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-16 Thread David Gowers
Hi,

On Mon, Mar 17, 2008 at 9:07 AM, Bill Skaggs <[EMAIL PROTECTED]> wrote:
> David G. <[EMAIL PROTECTED]> wrote:
>  >
>  >  Add a option to rotate brushes to compliment the scaling.
>  >  I don't know if this has been requested but it would be very
>  > helpful than creating a layer + using the rotation tool.
>  >
>
>  Wouldn't be all that hard to do.  How often do you think this
>  would be used?  What kind of brushes would you want to
>  use it for?
Myself, I would use it for nearly every non-symmetrical brush (and
wish for the ability to v- or h-flip it, too), particularly when I'd
just copied something and was using the clipboard brush. Every brush
that is remotely 'directional' needs this
(or, possibly the option to rotate the brush to match the movement
direction -- that would work fairly well much of the time.)

Making aspect ratio controls independent of brush type also makes
sense to me.  "hardness' also makes sense independent of brush type
(hardness specifying the middle point of a curve, 0 would be a linear
curve, .5 would be a gamma-ish curve where  a majority of midpoint
values become much more opaque, -.5 would be a gamma-ish curve where a
majority os midpoint values become  much less opaque.

I may be getting a little OT, I believe that those controls do not
belong in the VBR brush editor.
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Rotation for brushes

2008-03-16 Thread Bill Skaggs
David G. <[EMAIL PROTECTED]> wrote:
>
>  Add a option to rotate brushes to compliment the scaling.
>  I don't know if this has been requested but it would be very
> helpful than creating a layer + using the rotation tool.
>

Wouldn't be all that hard to do.  How often do you think this
would be used?  What kind of brushes would you want to
use it for?

  -- Bill
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


[Gimp-developer] Rotation for brushes

2008-03-15 Thread David G.

Add a option to rotate brushes to compliment the scaling. I don't know if
this
has been requested but it would be very helpful than creating a layer +
using
the rotation tool.

This is a from http://bugzilla.gnome.org/show_bug.cgi?id=522705
-- 
View this message in context: 
http://www.nabble.com/Rotation-for-brushes-tp16075831p16075831.html
Sent from the Gimp Developer mailing list archive at Nabble.com.

___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer