save code

This commit is contained in:
xsl
2026-01-08 21:52:28 +08:00
parent 60b40bfd5f
commit 496d56f9c6
3 changed files with 16 additions and 3 deletions
@@ -4,12 +4,20 @@ import org.json.JSONObject;
public class InitArg { public class InitArg {
public int action_fps; public int action_fps;
public float zoom; public float zoom;
public float r;
public float g;
public float b;
public float radius;
public String toJson() { public String toJson() {
try { try {
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
jsonObject.put("action_fps", action_fps); jsonObject.put("action_fps", action_fps);
jsonObject.put("zoom", zoom); jsonObject.put("zoom", zoom);
jsonObject.put("r", r);
jsonObject.put("g", g);
jsonObject.put("b", b);
jsonObject.put("radius", radius);
return jsonObject.toString(); return jsonObject.toString();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
@@ -19,7 +19,7 @@ class MakeupActivity : FaceActivity()
lateinit var motionMgr: MotionManager lateinit var motionMgr: MotionManager
private var updateJob: Job? = null private var updateJob: Job? = null
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
motionMgr = MotionManager(this, 10, 1.5f) motionMgr = MotionManager(this, 10, 1.5f, 0f,0f,1f,240f)
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
// 启动一个生命周期感知的协程, 每10ms 调用一次,可以通过update 来处理业务的逻辑 // 启动一个生命周期感知的协程, 每10ms 调用一次,可以通过update 来处理业务的逻辑
updateJob = lifecycleScope.launch { updateJob = lifecycleScope.launch {
@@ -8,6 +8,7 @@ import com.hmwl.face_sdk.Frame
import com.hmwl.face_sdk.InitArg import com.hmwl.face_sdk.InitArg
import com.hmwl.face_sdk.Motion import com.hmwl.face_sdk.Motion
import com.hmwl.face_sdk.MotionList import com.hmwl.face_sdk.MotionList
import org.checkerframework.checker.units.qual.radians
import org.json.JSONObject import org.json.JSONObject
import java.io.BufferedReader import java.io.BufferedReader
import java.io.InputStreamReader import java.io.InputStreamReader
@@ -15,11 +16,15 @@ import java.io.InputStreamReader
class MotionManager { class MotionManager {
var faceActivity:FaceActivity var faceActivity:FaceActivity
constructor(activity: FaceActivity, fps: Int, z: Float) { constructor(activity: FaceActivity, fps: Int, z: Float, r: Float, g: Float, b: Float, radius: Float) {
faceActivity = activity faceActivity = activity
val initArg = InitArg().apply { val initArg = InitArg().apply {
action_fps = fps action_fps = fps
zoom = z this.zoom = z
this.r = r
this.g = g
this.b = b
this.radius = radius
} }
activity.SetInitArg(initArg.toJson()) activity.SetInitArg(initArg.toJson())
existMotions = readMotionsFromAssets(activity, "pic/motion_data_ex.json") existMotions = readMotionsFromAssets(activity, "pic/motion_data_ex.json")