seth_spin - Seth Spin
Take one image. Spin it about the horizontal axis, and end up with another image. I made it for easy web buttons.
[PF_DRAWABLE, "destination","Drawable to spin to"], [PF_INT8, "frames", "How many frames to use", 16], [PF_COLOR, "color", "Color to use for background if not transparent", [0,0,0]], [PF_SLIDER, "perspective", "How much perspective effect to get", 40, [0,255,5]], [PF_TOGGLE, "spinback", "Spin back" , 1], [PF_TOGGLE, "indexed", "Convert to indexed", 1],
[PF_IMAGE, "output","Output image"],
Note: Seth has transferred the maintainer `position' to me, so bother me instead of him now :-) - Steinar H. Gunderson <firstname.lastname@example.org> This one's all mine. Well, its GPL/Artistic but I'm the author and creator. You need gimp 1.1 or better for this; too much has changed, and I don't think 1.0.x had a perspective PDB function anyway Here's the working theory on this: There's a function called spinlayer which will spin from a spinlayer to a destlayer. It won't touch those 2 layers at all, and will leave its results on the top of the layer stack. If the user wants to spin back, it will take 1/2 the layers otherwise required per call to the spin_layer, so that the number of total layers comes out the same. The main function makes a new image, copies the source and destination onto it with appropriate offsets, and passes this image with the bottom 2 layers to spin_layer. At the end, remove the original 2 layers, since they won't be needed, and add in some Layer comments for timing your gif. Many thanks to Steinar and Marc, for expressing an interest in the script that kept me going, and to Steinar in particular for helping me track down why the script was crashing gimp (hint - don't make layers of height=0, and if you do make sure you're logging to console since the Gtk messagebox will never show up due to a rapid segfault). Just a comment on that: We fixed the bug, so height=0 no longer segfaults, but gives the error message it should. However, if GIMP segfaults, you should try logging to console to make sure you get all applicable error messages. This will make it _much_ easier to find the bug. - Steinar Revision History: 1.0 - Initial (too early) release 1.1 - Second (still ugly) release: Made the perspective setting actually do something 1.2 - Used some of the convienence functions, and made things a little eaiser from the user's standpoint too. Also moved it from the Filters->Animations-> menu to Xtns->Animations. I think its clearer whats going on this way. It also works w/ any 2 layers now. 1.5 - Some debugging by Steinar and myself to make it work again. 1.6 - Moved some renaming into the main loop, more cleanups. 1.7 - Fixed up set_name to drawable_set_name Seth Burgess <email@example.com>
Seth Burgess <firstname.lastname@example.org>
Distributed under the same terms as Gimp-Perl.