美文网首页
【Android】android.graphics.Camera

【Android】android.graphics.Camera

作者: littlefogcat | 来源:发表于2021-12-20 23:36 被阅读0次

    Camera绕中心旋转的方法

    在使用Camera进行3D旋转的时候,发现转动的中心点是屏幕左上角,并且没有相关方法进行设置。在搜寻之后,找到文章:
    安卓自定义View进阶-Matrix Camera - GcsSloop

    简单来说,就是先将目标Matrix移动到Camera中心处,在变换之后再将Matrix移回原处。

    以下为示例代码:
    其中,三个轴旋转角度为rxryrz,旋转的中心点坐标为cxcy

    val cam = Camera()
    val m = Matrix()
    cam.rotate(rx, ry, rz)
    cam.getMatrix(m)
    m.preTranslate(-cx, -cy) // <===========将Matrix移动到相机中心
    m.postTranslate(cx, cy) // <===========将Matrix移回原处
    

    Matrix学习

    GcsSloop的博客
    GcsSloop的博客 - CSDN
    安卓自定义View进阶-Matrix原理
    安卓自定义View进阶-Matrix详解

    相关文章

      网友评论

          本文标题:【Android】android.graphics.Camera

          本文链接:https://www.haomeiwen.com/subject/gzggfrtx.html