From b45aee859b2a86cdb48111d88dea84c36ee049e1 Mon Sep 17 00:00:00 2001 From: jackfiled Date: Sun, 5 Mar 2023 22:26:01 +0800 Subject: [PATCH] =?UTF-8?q?feature:=20=E6=B7=BB=E5=8A=A0z=E8=BD=B4?= =?UTF-8?q?=E5=8E=8B=E7=BC=A9=E5=A4=84=E7=90=86=E7=B1=BB=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E4=BA=86=E8=BA=AB=E4=BD=93=E5=89=8D=E5=80=BE=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Behaviours/BoneBehaviour.cs | 4 ++-- .../PoseTransformHandlers/ZAxisHandler.cs | 20 +++++++++++++++++++ .../ZAxisHandler.cs.meta | 3 +++ 3 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 Assets/Utils/PoseTransformHandlers/ZAxisHandler.cs create mode 100644 Assets/Utils/PoseTransformHandlers/ZAxisHandler.cs.meta diff --git a/Assets/Behaviours/BoneBehaviour.cs b/Assets/Behaviours/BoneBehaviour.cs index 63d7275..1a8437e 100644 --- a/Assets/Behaviours/BoneBehaviour.cs +++ b/Assets/Behaviours/BoneBehaviour.cs @@ -8,7 +8,7 @@ namespace Behaviours public class BoneBehaviour : MonoBehaviour { private readonly UdpListener _listener = new UdpListener(); - private PoseTransform[] _transforms = new PoseTransform[PoseLandmarkType.MaxValue]; + private readonly PoseTransform[] _transforms = new PoseTransform[PoseLandmarkType.MaxValue]; private Animator _animator; @@ -18,7 +18,7 @@ private void Start() for (var i = 0; i < PoseLandmarkType.MaxValue; i++) { - _transforms[i] = new PoseTransform(i, new NormalHandler()); + _transforms[i] = new PoseTransform(i, new ZAxisHandler()); } _listener.AddHandler(OnReceive); diff --git a/Assets/Utils/PoseTransformHandlers/ZAxisHandler.cs b/Assets/Utils/PoseTransformHandlers/ZAxisHandler.cs new file mode 100644 index 0000000..00d523e --- /dev/null +++ b/Assets/Utils/PoseTransformHandlers/ZAxisHandler.cs @@ -0,0 +1,20 @@ +using Models; +using UnityEngine; + +namespace Utils.PoseTransformHandlers +{ + public class ZAxisHandler : IPoseTransformHandler + { + private Vector3 _result; + + public void ReceivePoseLandmark(PoseLandmark landmark) + { + _result = new Vector3(landmark.X, landmark.Y, landmark.Z * 0.5f); + } + + public Vector3 GetResultPosition() + { + return _result; + } + } +} \ No newline at end of file diff --git a/Assets/Utils/PoseTransformHandlers/ZAxisHandler.cs.meta b/Assets/Utils/PoseTransformHandlers/ZAxisHandler.cs.meta new file mode 100644 index 0000000..31f7c86 --- /dev/null +++ b/Assets/Utils/PoseTransformHandlers/ZAxisHandler.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 12369669a7fc44eaae881f89678649b1 +timeCreated: 1678024599 \ No newline at end of file