在 Actionscript 3 中旋转相机源

Rotating a camera feed in Actionscript 3

我正在尝试将实时摄像头旋转 90 度以使其方向正确。这是我到目前为止所拥有的,但它不会对轮换做任何事情。

      public function setupCamera(param1:int, param2:int) : void
      {
         camera = Camera.getCamera("1");
         camera.addEventListener(StatusEvent.STATUS,camStatusHandler);
         camera.setMode(param1,param2,stage.frameRate);
         video = new Video(param1,param2);
         video.scaleX = -1;
       video.rotation = 90;
         video.x = video_placement.x + video_placement.width;
         video.y = video_placement.y;
         video.attachCamera(camera);
         addChildAt(video,0);
      }

很可能,轮换正在起作用。问题是,当您旋转 90 度时,registration/anchor 点现在实际上是右上角(因此,如果它位于 0,0 位置,视频将出现在屏幕外,看起来好像不起作用)。

您可以通过将视频的宽度添加到它的位置来进行补偿:

video.x = video.width + video_placement.x;

以同样的方式,将比例设置为 -1 会反转注册点,并且由于您已经旋转了对象,您需要通过将视频的高度添加到它的位置来在 y 平面上对其进行补偿:

video.y = video.height + video_placement.y;