Short: TVPaint Image-sequence transport scripts Author: jojon@jojon.net (Jonny Johansson) Uploader: jojon jojon net (Jonny Johansson) Type: gfx/misc Version: 0.2 Architecture: generic This is a small set of simple scripts that provide rudimentary image sequence transport control in TVPaint. By assigning these scripts to Function keys in TVPaint, you gain DeluxePaint-like anim transport control, between a series of TVPaint project files within a directory. Requires: RexxReqTools.library Archive contents: ----------------- AnimFile.rx - Here you open, close and export picture sequences. Read more under "How it works" below. AnimNextFrame.rx - Steps one frame forward. If you try to move past the last frame, the script will indicate this by locking and unlocking the display a few times in succession. AnimPreviousFrame.rx - Steps one frame back. If you try to move past the first frame, the script will indicate this by locking and unlocking the display a few times in succession. AnimGotoFrame.rx - Opens a number requester, where you specify which frame to jump to. AnimPlay.rx - Loads all frames in succession. When done, reloads the current frame. AnimAddFrames.rx - Adds as many frames as you specify. The frames will be copies of the current frame and follow it immediately. AnimDeleteFrames.rx - Deletes As many frames as you specify in the numeric requester that pops up, starting with the current one. TVPAnimRexxCommand.tvp - TVPaint Script settings, with these scripts assigned to SHIFT+F1-F7 - load this file from the TVPaint ARexx window. How it works: ------------- A project here, is simply a directory, containing a handful of numbered TVPaint project files. When you open a project, three ARexx clips will be set, holding the path to this directory, the number of the currently shown picture and of the last one in the sequence, so that the different scripts can fetch them, when run. Closing a project, simply saves the current frame and clears these clips. As you move between frames, the frame you leave will be automatically saved, before the next one is loaded. The layer that is active on the frame you leave wil be activated on the frame you go to. ...and that just about sums it up. Opening a project, new or old: ------------------------------ · First, if this is a new project, set up the page size and number of layers, also pick the active layer you want to begin with. There is nothing global about these things (you can have frames with different sizes and numbers of layers) and changing each and every picture in the sequence afterwards could be cumbersome. ...you could, of course, write a new script that does this. :7 · Remember: One project = one directory containing one sequence of pictures, following a given naming scheme. · Execute the AnimFile script and press the "Open project" button. A directory requester will pop up, asking you to pick a project directory. If you enter a directory (project, remember?) that does not exist, ReqTools will create it for you, after asking. Alas the TVPaint Display screen is not a public screen, so all ReqTools requesters, used by the scripts will pop up on the default pubscreen. On the plus side, this means you can drag and drop icons into the file requesters. · If there is already a file named "img.00000.pro" in the specified directory, the pictures will be counted and off you go -- you have now opened an existing project. · If there is no such file, you will be asked whether you want to begin by importing an existing sequence of pictures, maybe a series of scanned cartoon frames that you have drawn and need to retouch, or frames exported from MovieShop... - If you choose not to do this, you will find yourself at the first and only frame. Your new project has been started. - If you do import, you will get a multi-select file requester. select ALL frames that are to be imported (hold down SHIFT to multiselect, or simply press the "all" button" - they will be loaded in the order they appear in the requester. These pictures will be loaded to the active layer and there will be no resizing or any other adaptions. Importing Frames: ----------------- This works like the procedure in the last step above. Again the pictures will be loaded to the currently active layer. Import will start at the current frame in the open project and end at the last one. If you try to import more frames than there is room for, you will be asked whether you want to extend the project to fit them all. Exporting a project: -------------------- Not a whole lot of applications can read the IFF DEEP based project files that TVPaint use, so you will, at some point, need to save your frames in some other format. · Rexxecute the AnimFile script and press the Export button. · You will be asked in which format the pictures should be saved. · When the file requester pops up, pick a path and a name for the files to be saved. The frame number will be appended to the name, padded with zeros to five characters. If you want a dot, or something between the base name and the number, make that part of the name. · The last requester asks you whether to also append an identifying extension to the file name, i.e. '.iff', '.jpg', '.gif' - you get the picture... History: -------- 2006-02-23 Bugfix: When importing frames to a project too small to hold them, so that it had to have frames added at the end - the imported frames would load to the active layer of the last frame, rather than the current one. Fixed. Here's hoping someone finds use for the thing. Kind regards, /The author