android.graphics.Camera

android.graphics.Camera:

camera默认位置:

camera.getLocationX() = 0;

camera.getLocationY() = 0;

camera.getLocationZ() = -8;



1、applyToCanvas(Canvas canvas) 根据当前的变换计算出相应的矩阵,然后应用到制定的画布上去,注意是由画布来设置矩阵的。
2、rotateX(float degree) 绕着x轴旋转degree个度数
3、rotateY(float degree) 绕着y轴旋转degree个度数
4、rotateZ(float degree) 绕着z轴旋转degree个度数
5、translate(float x,float y,float z) 在x、y、z坐标轴上执行变换操作
6、save()和restore() 保存原状态,操作完之后,恢复到原状态

7、camera.getMatrix(matrix) 获取camera变换后的矩阵

8、要想实现3D效果,还要借助Animation类的配合,因为这个类正是动画类,提供了对象变换的平台




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
package com.example.ocr; import androidx.activity.result.ActivityResultLauncher; import androidx.activity.result.contract.ActivityResultContracts; import androidx.appcompat.app.AppCompatActivity; import android.content.ContentValues; import android.graphics.Bitmap; import android.net.Uri; import android.os.Bundle; import android.provider.MediaStore; import android.widget.ImageView; import com.example.ocr.util.BitmapUtil; import com.example.ocr.util.DateUtil; public class MainActivity extends AppCompatActivity { private final static String TAG = "PhotoTakeActivity"; private ImageView iv_photo; private Uri mImageUri; private ActivityResultLauncher launcherThumbnail; private ActivityResultLauncher launcherOriginal; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); iv_photo = findViewById(R.id.iv_photo); launcherThumbnail = registerForActivityResult( new ActivityResultContracts.TakePicturePreview(),bitmap ->iv_photo.setImageBitmap(bitmap)); findViewById(R.id.btn_thumbnail).setOnClickListener(v -> launcherThumbnail.launch(null)); launcherOriginal = registerForActivityResult( new ActivityResultContracts.TakePicture(),result -> { if (result){ Bitmap bitmap = BitmapUtil.getAutoZoomImage(this,mImageUri); } }); findViewById(R.id.btn_original).setOnClickListener(v -> takeOriginalPhoto()); } private void takeOriginalPhoto(){ ContentValues values = new ContentValues(); values.put(MediaStore.Images.Media.DISPLAY_NAME,"photo_"+ DateUtil.getNowDateTime()); values.put(MediaStore.Images.Media.MIME_TYPE,"image/jpeg"); mImageUri = getContentResolver().insert( MediaStore.Images.Media.EXTERNAL_CONTENT_URI,values); launcherOriginal.launch(mImageUri); } }打开安卓相机闪退
06-12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值