Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
flash中的简单旋转问题_Flash - Fatal编程技术网

flash中的简单旋转问题

flash中的简单旋转问题,flash,Flash,我的三角架有点生锈了,所以我不确定最好的方法是什么 我需要在舞台上放置两个相互关联的电影剪辑 它们不能嵌套 注册点在中心 假设“剪辑B”在“剪辑A”的左侧为50像素,如左图所示,当 “剪辑A”是旋转的,我需要剪辑B跟随(仍然50像素)离开,但与新的 _x和_y相对于“剪辑A”的旋转,如右图所示 任何帮助都会很好 好的,我想你的图表应该在第二部分显示一个旋转的,对吗 基本上,你可以把MovieClip B的中心看作是半径为50的圆上的一个点,并且角度是基于A的角度。这段代码是针对AS3的,但我

我的三角架有点生锈了,所以我不确定最好的方法是什么

  • 我需要在舞台上放置两个相互关联的电影剪辑
  • 它们不能嵌套
  • 注册点在中心
假设“剪辑B”在“剪辑A”的左侧为50像素,如左图所示,当 “剪辑A”是旋转的,我需要剪辑B跟随(仍然50像素)离开,但与新的 _x和_y相对于“剪辑A”的旋转,如右图所示

任何帮助都会很好


好的,我想你的图表应该在第二部分显示一个旋转的,对吗

基本上,你可以把MovieClip B的中心看作是半径为50的圆上的一个点,并且角度是基于A的角度。这段代码是针对AS3的,但我猜您使用的是AS2?您所需要做的就是在MovieClips的x和y前面添加下划线。还要注意,这将顺时针旋转

function rotateA(angleInDegrees:Number):void
{
    a.rotation = angleInDegrees;

    var bx:Number = Math.sin(angleInDegrees*(Math.PI/180))
    var by:Number = -Math.cos(angleInDegrees*(Math.PI/180))

    bx*=50;
    by*=50;

    bx+=a.x;
    by+=a.y;

    b.x = bx;
    b.y = by;
}

好的,我想你的图表应该在第二部分显示一个旋转的,对吗

基本上,你可以把MovieClip B的中心看作是半径为50的圆上的一个点,并且角度是基于A的角度。这段代码是针对AS3的,但我猜您使用的是AS2?您所需要做的就是在MovieClips的x和y前面添加下划线。还要注意,这将顺时针旋转

function rotateA(angleInDegrees:Number):void
{
    a.rotation = angleInDegrees;

    var bx:Number = Math.sin(angleInDegrees*(Math.PI/180))
    var by:Number = -Math.cos(angleInDegrees*(Math.PI/180))

    bx*=50;
    by*=50;

    bx+=a.x;
    by+=a.y;

    b.x = bx;
    b.y = by;
}

这很有魅力!祝你好运!是的,我猜这个图表没有反映a是旋转的——当然,我是用一个在旋转参数中传递的函数来拍摄的。三叉戟慢慢地回来了-再次感谢你,这就像一个魔咒!祝你好运!是的,我猜这个图表没有反映a是旋转的——当然,我是用一个在旋转参数中传递的函数来拍摄的。三叉戟慢慢地回来了-再次感谢