[Gimp-developer] ANNOUNCE: GIMP 2.3.14 development release

2007-01-24 Thread Sven Neumann
Moin,

gimp-2.3.14.tar.bz2 is available from ftp://ftp.gimp.org/pub/gimp/v2.3. 

Changes in GIMP 2.3.14
==

- added actions to control brush spacing
- polished appearance of image window
- scale the brush's spacing when scaling the brush
- save tool presets when they are changed
- improved handling of vectors in the Python bindings
- allow for auto-cropping the result of the transform tools
- added GimpRatioEntry widget and use it in the rectangle tool options
- added functions to transform between preview and image coordinates
- added PDB functions to validate display, drawable, image and vectors
  IDs
- added HSL color model to Decompose and Compose plug-ins
- further improved status bar messages for tools
- on systems with D-Bus build gimp-remote functionality into gimp
  executable
- bug fixes and code cleanup


The release notes for the development branch, in case you haven't read
them yet, are here: http://gimp.org/release-notes/gimp-2.3.html

We want to get GIMP 2.4 out of the door, but there are still a couple of
show-stoppers and we need all the help we can get. Please have a look at
the list of bugs on the 2.4 milestone:
http://bugzilla.gnome.org/buglist.cgi?product=GIMPbug_status=UNCONFIRMEDbug_status=NEWbug_status=ASSIGNEDbug_status=NEEDINFObug_status=REOPENEDtarget_milestone=2.4


Sven


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


[Gimp-developer] add mouse action for brush scaling

2007-01-24 Thread Alexander Rabtchevich
Currently scalable brush can be scaled with [ ] by default, what is very 
fine. Could a mouse scroll wheel + some key modifier be used to act the 
same as [ ] buttons?

I'm a right-handed person, so when I retouch a photo most of my actions 
are connected with mouse movements and some left hand actions: Ctr+H, 
Ctrl+C, Ctrl+wheel, Shift+wheel, Space. Rather often brush needs to be 
scaled, so I have to left mouse and press [ or ] several times. The left 
side of the keyboard is mostly taken with shotcuts.

I suggest adding Alt + wheel to act like [ ] for brush scaling. It could 
be very convenient to a user not to leave a mouse for keyboard and due 
the wheel is very well controllable and intuitive for scaling purposes.

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


Re: [Gimp-developer] ANNOUNCE: GIMP 2.3.14 development release

2007-01-24 Thread Salvatore De Paolis
On Wed, 24 Jan 2007 10:01:26 +0100
Sven Neumann [EMAIL PROTECTED] wrote:

 Moin,
 
 gimp-2.3.14.tar.bz2 is available from
 ftp://ftp.gimp.org/pub/gimp/v2.3. 

Running well on GNU/Linux Debian Etch/Sid
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


[Gimp-developer] Regular expression in gimp-buffers-get-list ?

2007-01-24 Thread Bart

Hi all,

i wrote this Paste as Layer script (registred as Image/Edit/Paste 
as/Paste as Layer; its based on a script of Jonathan Stipe), it just 
need a tweak to lower the the pasted layer to the last selected on.
But i got a problem with (buffers (gimp-buffers-get-list *)).
I use this to check wether the clipboard is empty or not, so when the 
user run this script on empty clipboard no error message will appear.

on buffers (gimp-buffers-get-list * the filter (*) is a optional 
regular expression, but without * i always get an error message and 
with * it didn't work correct.

What is the correct regular expression for exepting anything? here is 
the base of the script:

(gimp-image-undo-group-start img )
(let* (
   (draw (car (gimp-image-get-active-drawable img )))
   (buffers (gimp-buffers-get-list *))
   (num-buffers (car buffers))
   (buffer-array (cadr buffers))
)
(if ( num-buffers 0) ;if clipvoard is empty nothing will be done
   (if (not (= (car (gimp-drawable-is-layer draw )) 0 ))
 (gimp-floating-sel-to-layer (car (gimp-edit-paste draw 1 )))
 (if (not (= (car (gimp-drawable-is-layer-mask draw )) 0 ))
   (gimp-floating-sel-to-layer (car (gimp-edit-paste (car
(gimp-image-get-active-layer img )) 1 )))
   (if (not (= (car (gimp-drawable-is-channel draw)) 0))
  (gimp-floating-sel-to-layer (car (gimp-edit-paste (aref (cadr 

  (gimp-image-get-layers img )) 0 ) 1 )))
   )
 )
)
)
)
(gimp-displays-flush)


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


Re: [Gimp-developer] add mouse action for brush scaling

2007-01-24 Thread Alexander Rabtchevich
Thorsten Wilms wrote:
 On Wed, Jan 24, 2007 at 11:32:03AM +0200, Alexander Rabtchevich wrote:
 
 
 Currently scalable brush can be scaled with [ ] by default, what is very 
 fine. Could a mouse scroll wheel + some key modifier be used to act the 
 same as [ ] buttons?
 
 I couldn't find it in the shortcut editor (maybe I overlooked it).
 It should be listed there, right?
  
build
As I understand, it appeared there by default in 2.3.11 or other build 
close to it . Before it was possible to assign these keys manually in 
developers branch (and I did it).


 
 I'm a right-handed person, so when I retouch a photo most of my actions 
 are connected with mouse movements and some left hand actions: Ctr+H, 
 Ctrl+C, Ctrl+wheel, Shift+wheel, Space. Rather often brush needs to be 
 scaled, so I have to left mouse and press [ or ] several times. The left 
 side of the keyboard is mostly taken with shotcuts.

 I suggest adding Alt + wheel to act like [ ] for brush scaling. It could 
 be very convenient to a user not to leave a mouse for keyboard and due 
 the wheel is very well controllable and intuitive for scaling purposes.
 
 
 Hmm, Alt + wheel is mapped to opacity.
 Ctrl + wheel zooms.
 Shift + wheel scrolls sideways.
Ctrl+wheel, wheel itself, shift+wheel and space form a pretty complete 
set of picture movement and scaling. I like it and suffer then any other 
program doesn't provide wheel and Ctrl+wheel.

 
 Preferences - Input Controlers allows to map mouse wheel events 
 to actions, but I don't see actions for changing brush size.
 
Thank you for solution to the problem. I've assigned Alt+wheel to 
context-brush-radius-decrease and context-brush-radius-increase and 
feel myself happy for now :).


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


[Gimp-developer] improving bicubic interpolation

2007-01-24 Thread gg
In my on-going research to reduce the filter artifacts noted in  
http://bugzilla.gnome.org/show_bug.cgi?id=166130 , I found many references  
to a promising improvement on the cubic convolution kernel approach I have  
been using.

As noted in the bug report using a convolution kernel entirely removes the  
somewhat obvious staircasing produced by the current interpolation at the  
expence of a slight softening of the image.

In all the research I have done I have come up constantly to references to  
work done by R.G. Keys where he uses 6 point spline fitting instead of the  
usual four, but despite extensive efforts I have not been able to find any  
reference to the actual piecewise polynomials he derives.

Since the way this technique fits into the code is virtually identical to  
the lanczos implementation a six-point approach would envolve exactly the  
same calculation effort as lanczos and the larger window and the increased  
order of convergence would almost certainly improve the quality and  
precision of the filter.

It would seem reasonable to assume this would bring us close to a best of  
both worlds situation, a clean interpolaton without the softening.

http://64.233.183.104/search?q=cache:pcUIULp7cboJ:ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19870013008_1987013008.pdf+fourth-order+convergence+catmull-romhl=enct=clnkcd=3client=opera

Keys’ cubic is a local, six-point inter-
polant whose interpolation function is again given by
piecewise cubic polynomials. However, in contrast to
PCC, there are no free parameters. The algorithm is
fourth order convergent (ref.
8) which is the highest
order which can be achieved with cubic polynomials;


All references to Keys' work seem to lead to papers published by IEEE and  
available on a per article subscription. I assume the charge for one or  
two articles would be fairly nominal. Would this be a good use of some of  
the gimp projects donations fund?

If the idea is acceptable I'll look into the details.

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


[Gimp-developer] using layer/channel as mask

2007-01-24 Thread Kevin Galligan

I've been trying to script something that seems relatively simple, yet I've
spent the better part of today stuck at one little step.  I have started
naming things with curse words, so I figured I'd reach out for help before I
start throwing things.

I have a layer that I want to serve as the mask for another layer.  The
values in the mask layer are white, so in theory, I could do the
following...

;Somehow get the green Channel of the mask layer

(set! greenChannelMask [magicFunctionHere])

(gimp-layer-add-mask myLayer greenChannelMask)

I'm sure there's a more elegant way of doing it.  If so, please let me
know.  However, if the above would work, I just need to know how to get that
channel.  Should be easy, but I have been beating my head agaist a wall.  I
just can't get it.  I tried 'gimp-image-get-channels' in the console just to
see if I could do it the hard way, but it always returns '(0 #()#0)', no
matter what image, which leads me to believe I don't understand how that
function works.  I also tried 'gimp-image-get-active-channel' in the
console, but that comes back with -1.  All the time.

I probably wouldn't be so frustrated if this was a big deal, but should be
easy to get the channel, yet I've burned much of the day and have made no
other progress (other than, of course, having nowhere else to look).

Thanks in advance,
-Kevin
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] using layer/channel as mask

2007-01-24 Thread David Gowers

On 1/23/07, Kevin Galligan [EMAIL PROTECTED] wrote:


I've been trying to script something that seems relatively simple, yet
I've spent the better part of today stuck at one little step.  I have
started naming things with curse words, so I figured I'd reach out for help
before I start throwing things.



Sounds familiar .. although that's happened much less to me since I started
using Python-Fu instead of Script-Fu.

I have a layer that I want to serve as the mask for another layer.  The

values in the mask layer are white, so in theory, I could do the
following...

;Somehow get the green Channel of the mask layer

(set! greenChannelMask [magicFunctionHere])


(gimp-layer-add-mask myLayer greenChannelMask)


I'm sure there's a more elegant way of doing it.  If so, please let me
know.  However, if the above would work, I just need to know how to get that
channel.  Should be easy, but I have been beating my head agaist a wall.  I
just can't get it.  I tried 'gimp-image-get-channels' in the console just to
see if I could do it the hard way, but it always returns '(0 #()#0)', no
matter what image, which leads me to believe I don't understand how that
function works.  I also tried 'gimp-image-get-active-channel' in



The function returns a list of channels. ie. What you see in the bottom part
of the Channels dialog.

Anyway, you don't really need to get the green values, just get the
intensity.
The way to do this is:

* Copy the mask layer (as in gimp-edit-copy -- or gimp-edit-named-copy if
you want to preserve the clipboard)
* Add a mask to the target layer *if needed*
* Paste onto the mask
* Anchor

the console, but that comes back with -1.  All the time.


I probably wouldn't be so frustrated if this was a big deal, but should be
easy to get the channel, yet I've burned much of the day and have made no
other progress (other than, of course, having nowhere else to look).

Thanks in advance,
-Kevin


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


Re: [Gimp-developer] using layer/channel as mask

2007-01-24 Thread David Gowers

On 1/25/07, Kevin Galligan [EMAIL PROTECTED] wrote:


I settled on that route after some wrestling...

*** CODE HERE ***
(set! shadowMask (car(gimp-layer-create-mask shadowLayer ADD-ALPHA-MASK)))
(gimp-layer-add-mask shadowLayer shadowMask)

(gimp-selection-all inImage)
(gimp-edit-copy inDrawable)
(set! floatingSel (car (gimp-edit-paste shadowMask FALSE)))
(gimp-floating-sel-anchor floatingSel)

(gimp-layer-remove-mask shadowLayer MASK-APPLY)



Is it your intention to apply the mask incrementally? Every time you apply
the mask, that will reduce the alpha of the pixels in shadowlayer.
in short, outAlpha = inAlpha  * maskValue.

*** ***


I hate scheme.  I had to do scheme while in school for a class, and I just
never, ever liked it.  However, I don't think my problem here was with
scheme (after, obviously, the initial refresher).  It was getting my head
around the api.  I still don't know how to get a reference to the color
channel (green, blue, or red.  Didn't matter.  Just needed the values).



You cannot.
If you want to use the 'decompose' plugin to separate the component of an
image, or use Python's advanced slicing to extract data for one component
from the entire pixel data, you can do that.

Do you have a good link to coding python and gimp?  I found some stuff, but

it seemed old, and I wound up sticking with scheme.



On Windows it is slightly more complicated to get Gimp working with
Python-Fu. On Linux, it's pretty simple -- just run
./configure with the --enable-python switch (this is enabled by default in
recent versions), then rebuild and reinstall.
Then you can write plugins and put them in your gimp plugins directory.
A simple plugin is attached.
#!/usr/bin/env python
import gimp,gimpplugin
from gimpfu import PLUGIN, PF_INT, PF_IMAGE, PF_DRAWABLE

# this is the usual thing to do, to make pdb more easy to access
# most plugins would make use of the pdb, though this one doesn't.
pdb = gimp.pdb

class Simple (gimpplugin.plugin):
def query (self):
	# I didn't want to bother with specifying author, copyright etc just for this example,
	# so here's a default string to use
	d = ''
	gimp.install_procedure ('plug_in_simple', d,d,d,d,d,'Image/File/Simple_Test', '*',PLUGIN, [(PF_INT, 'run_mode', run mode),(PF_IMAGE, 'image', 'Image'), (PF_DRAWABLE, 'drawable', 'Drawable')], [])

# must have class methods corresponding to the pdb entries you register.
# script-fu etc. see this as 'plug-in-simple'
def plug_in_simple (self, run_mode, image, drawable):
	return 

def start (self):
	gimpplugin.plugin.start (self)
	
def quit (self):
	#cleanup here -- usually defining this is unnecessary
	pass
	
if __name__ == '__main__':
Simple ().start ()___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] improving bicubic interpolation

2007-01-24 Thread Sven Neumann
Hi,

On Mon, 2007-01-22 at 10:13 +0100, [EMAIL PROTECTED] wrote:

 All references to Keys' work seem to lead to papers published by IEEE and  
 available on a per article subscription. I assume the charge for one or  
 two articles would be fairly nominal. Would this be a good use of some of  
 the gimp projects donations fund?

That sounds like very reasonable use of the money. Please try to find
out which papers would be important for your work and how much is being
charged for them.


Sven


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