在 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;
我正在尝试将实时摄像头旋转 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;