Skip navigation
ryankivi
Currently Being Moderated

Recording Transform Actions .. Repeatability

Dec 7, 2012 6:37 AM

Tags: #actions_panel

Good Day,

 

I'm having an issue with recording my transformations, and it repeating what I recorded.

 

I have a square at 0,0.. I want to place it in 10 spots on the artboard.

 

I move it from 0,0 to 2,0, then copy it, and move it to 4,0, then copy it ....

 

So on and so forth.

 

This is not working for me.  It seems to be getting lost in relative versus absolute corrdinate land, but I really don't know much about this recording actions stuff.

 

 

Is it possible to record this action?

 

Using Illustrator CS5

 
Replies
  • Currently Being Moderated
    Dec 7, 2012 7:05 AM   in reply to ryankivi

    Use the numerical transforms from the menu or the transform effect with suitable values.

     

    Mylenium

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 7, 2012 7:25 AM   in reply to ryankivi

    Is it possible to record this action?

    Maybe. But it depends on what steps the Action actually contains, which you have not accurately described. The Actions palette lists the actual steps that it records. With that list, you should be able to see what the problem is.

     

    Actions is just an ordinary macro function. It records, in quite literal fashion, the steps that you perform in the terms of the program. Each step has to be, first, an explicit command built into the program's interface; and second, one of those commands which are recordable by Actions. (Not all are.) But you have not described what you are doing in those terms.:

     

    I have a square at 0,0..

    Some corner or center of a square path is located at 0,0.

     

    I want to place it in 10 spots on the artboard. I move it from 0,0 to 2,0,

    You selected the square and moved it  2 ruler units rightward. (By dragging? By entering a value in the Move dialog? By keying a value into the X position field of the Control Panel or Transform palette?)

     

    then copy it,

    Edit>Copy

     

    and move it to 4,0,

    You selected the square and moved it 2 ruler units rightward.

     

    then copy it ....

    Edit>Copy...

     

    See what I mean? Pretend I'm the Action trying to obey your commands. I can copy them and perform them as you've described them, but doing so, I probably won't do what you have in mind. Here's what I recorded:

     

    Move the active selection 2 units rightward.

    Edit>Copy.

    Move the active selection 2 units rightward.

    Edit>Copy.

     

    Now try it like this:

     

    1. Select something.
    2. Start recording.
    3. DoubleClick the black arrow. In the Move dialog, enter 2 in the horizontal field. Click Copy.
    4. Edit>Transform>TransformAgain.
    5. Edit>Transform>TransformAgain.
    6. Edit>Transform>TransformAgain.
    7. Edit>Transform>TransformAgain.
    8. Edit>Transform>TransformAgain.
    9. Edit>Transform>TransformAgain.
    10. Edit>Transform>TransformAgain.
    11. Edit>Transform>TransformAgain.
    12. Edit>Transform>TransformAgain.
    13. Stop recording.

     

    Now select something else and run the Action.

     

    Works, but seems rather redundant, doesn't it? So you select something and try recording:

    1. Effect>Distort & Transform>Transform. Copies: 9. Horizontal Move: 2.
    2. Expand Appearance.
    3. Ungroup.
    4. Ungroup.

     

     

    But it doesn't work. That's an example of an explicit command in the program's interface that Actions simply can't record. (And that's made obvious by looking at the Action's list of steps; all that will be there is the two Ungroup commands, and running it will return an error stating that Ungroup is not available (unless you happen to have selected a Group.)

     

    So, if it's a frequent need and, for example, requires many more copies than 9 or requires a user-defined number of copies per use, then that's an example of something for which you might consider resorting to writing a script.

     

    JET

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 7, 2012 7:44 AM   in reply to ryankivi

    Read my whole post again. Also, again, always think in terms of what you are actually telling the program to record, in as literal terms as you can imagine. For example:

     

    2.) I copy with ctrl-c, I paste

    You just told the program to Paste in the middle of the window, not in the original object's position.

     

    3.) I select new square...

     

    The Pasted object would already be selected. Moreover, Actions can't record your selecting another object, because in playback it would have no meaningful "handle" by which to identify the next object that you want to select. (You can, in building Actions, provide such a reference by, for example, keying a note into the Attributes panel, and then inserting into your Action the Select Objects... step, available from the Actions flyout menu.)

     

    Pretend you are the program trying to understand the steps you perform. You know nothing but a very limited set of exact command strings. You don't even see things that occur other than those specific commands. But each time you understand something, you write it down in the Actions palette. If you don't see the step in the Action's list, it's a step that won't be played back.

     

    JET

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 7, 2012 7:58 AM   in reply to JETalmage

    I know you're trying to understand behavior of Actions. But there's another related principle you need to think about:

     

    Your specific example (offsetting nine copies of something) is also an example of something for which Actions may not be the appropriate solution. So also always consider whether an Action (or a script) is actually the most expedient way to automate what you want. My first reply contains an example of this. You could accomplish what you've described and make it repeatable with a single click by instead of using an Action, simply apply Transform Effect and store it as a Graphic Style.

     

    JET

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 7, 2012 3:23 PM   in reply to ryankivi

    Ryan,

     

    You don't need a script for this. Just using Transform Effect would do it.

     

    JET

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points