4

Is there a way to change the position of the registration point inside a Movie Clip using Flash5 ? I've found stuff online for older Flash versions but not CS5.

Pierre Valade
  • 3,388
  • 3
  • 24
  • 29

3 Answers3

16

I wasn't aware of that.

As far as I know, all you need to do is:

  1. edit the MovieClip(Dobule-click)
  2. move the contents of the MovieClip relative to the crosshair on stage

If you want to match the transform point with the registration point:

  1. Go one level up
  2. Use the Transform Tool(Q)
  3. Double-click Transform Tool's circle.

HTH

George Profenza
  • 50,687
  • 19
  • 144
  • 218
  • And I would have to move the contents for each keyframe right ? – Pierre Valade Sep 13 '10 at 16:06
  • @Pierre Valade You only need to set the registration point once. It's a different story with the Transform point. If you're using a Motion Tween(the new one), there's just one Transform point per tween(regardless of how many keyframes you use). For Classic Tween(the old one), you might need to adjust the Transformation Point for each keyframe. It should be pretty easy to write a jsfl script that does that for you though. – George Profenza Sep 13 '10 at 19:23
  • 1
    ...additionally the [Edit Multiple Frames](http://www.cartoonsolutions.com/store/catalog/Editing-Multiple-Frames-of-Animation-sp-77.html) option should help – George Profenza Jun 18 '15 at 21:35
  • [updated Edit Multiple Frames link](http://web.archive.org/web/20151008222135/http://www.cartoonsolutions.com/store/catalog/Editing-Multiple-Frames-of-Animation-sp-77.html) – George Profenza Dec 07 '17 at 12:18
2

In free transform mode, just move the hollow circle wherever you want and that will set the new registration point.

Brian Mains
  • 50,520
  • 35
  • 148
  • 257
Stan
  • 29
  • 2
0
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Transform;

var rec:Sprite = new Sprite();
rec.graphics.beginFill(0x00FF00, 1);
rec.graphics.drawRect(-50, -50, 100, 100);
addChild(rec);

var tp:Transform = new Transform(rec);
tp.matrix.tx = 0;
tp.matrix.ty = 0;

trace("X: " + rec.x + " Y: " + rec.y);

rec.x = 250;
rec.y = 250;

trace("X: " + rec.x + " Y: " + rec.y);

addEventListener(Event.ENTER_FRAME, onEnterFrame);
function onEnterFrame(event:Event):void
{
rec.rotation += (Math.PI / 0.1);
}
Alain
  • 1
  • 1