我试图根据角度旋转视频显示。
我得到了4角0,-90,90,180。
我按照以下方式进行轮换:
if(videoAngle == 180)
{
videoDisplay.rotation = 180;
}
else if(videoAngle == 90)
{
videoDisplay.rotation = -90;
}
else if(videoAngle == -90)
{
videoDisplay.rotation = 90;
}
它会轮换videoDisplay
,但它的x和y位置会发生变化,height
和width
也会发生变化。
我尝试过很多东西,但没有成功。
有没有解决方案?
答案 0 :(得分:1)
视频对象的旋转点位于左上方,因此您需要将此视频放入容器(MC或Sprite)中,并使用' x'并且' y'在视频中心。
您可以在fla中执行此操作,但也可以在代码中执行此操作:
-D OPENCV_EXTRA_MODULES_PATH=</path/to/opencv_contrib>/modules
现在你旋转这个容器而不是&#34; videoDisplay&#34;
function putInCenter(display:DisplayObject):Sprite {
var box:Sprite = new Sprite()
display.parent.addChild(box)
box.x = display.x + display.width / 2
box.y = display.y + display.height / 2
box.addChild(display)
display.x = -display.width / 2
display.y = -display.height / 2
return box
}
var videoBox:Sprite = putInCenter(videoDisplay)