mirror of
https://github.com/SimpleMobileTools/Simple-Camera.git
synced 2025-02-12 09:20:46 +01:00
move the aspect ratio check in a Size extension
This commit is contained in:
parent
60f2cf9e1a
commit
0fe47acc4e
@ -27,7 +27,6 @@ class Preview : ViewGroup, SurfaceHolder.Callback, MediaScannerConnection.OnScan
|
||||
var mCamera: Camera? = null
|
||||
private val TAG = Preview::class.java.simpleName
|
||||
private val FOCUS_AREA_SIZE = 100
|
||||
private val RATIO_TOLERANCE = 0.2f
|
||||
|
||||
lateinit var mSurfaceHolder: SurfaceHolder
|
||||
lateinit var mSurfaceView: SurfaceView
|
||||
@ -158,20 +157,12 @@ class Preview : ViewGroup, SurfaceHolder.Callback, MediaScannerConnection.OnScan
|
||||
}
|
||||
|
||||
private fun refreshPreview() {
|
||||
mIsSixteenToNine = isSixteenToNine()
|
||||
mIsSixteenToNine = getSelectedResolution().isSixteenToNine()
|
||||
mSetupPreviewAfterMeasure = true
|
||||
requestLayout()
|
||||
invalidate()
|
||||
}
|
||||
|
||||
private fun isSixteenToNine(): Boolean {
|
||||
val selectedSize = getSelectedResolution()
|
||||
val selectedRatio = Math.abs(selectedSize.width / selectedSize.height.toFloat())
|
||||
val checkedRatio = 16 / 9.toFloat()
|
||||
val diff = Math.abs(selectedRatio - checkedRatio)
|
||||
return diff < RATIO_TOLERANCE
|
||||
}
|
||||
|
||||
private fun getSelectedResolution(): Camera.Size {
|
||||
val index = getResolutionIndex()
|
||||
val resolutions = if (mIsVideoMode) {
|
||||
|
@ -0,0 +1,12 @@
|
||||
package com.simplemobiletools.camera.extensions
|
||||
|
||||
import android.hardware.Camera
|
||||
|
||||
private val RATIO_TOLERANCE = 0.2f
|
||||
|
||||
fun Camera.Size.isSixteenToNine(): Boolean {
|
||||
val selectedRatio = Math.abs(width / height.toFloat())
|
||||
val checkedRatio = 16 / 9.toFloat()
|
||||
val diff = Math.abs(selectedRatio - checkedRatio)
|
||||
return diff < RATIO_TOLERANCE
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user