Health/Assets/Scripts/PoseCheck/HeadTurnUp.cs

24 lines
752 B
C#
Raw Normal View History

2023-11-10 07:17:23 +00:00
using OpenCVForUnity.CoreModule;
using System.Collections.Generic;
public class HeadTurnUp : PoseBase
{
public override bool CheckPose(List<Point> points)
{
2023-11-13 02:53:34 +00:00
// 必须包含 Nose 和 LEar 和 Neck 的点位
if (!YogaManager.Instance.ActionCheckPoints(points))
return false;
var basePoint = YogaManager.Instance.Points;
if (!YogaManager.Instance.ActionCheckPoints(basePoint))
return false;
var noseMagnitude = ("Nose".vector(points) - "Neck".vector(points)).magnitude;
var noseBaseMagnitude = ("Nose".vector(basePoint) - "Neck".vector(basePoint)).magnitude;
2023-11-13 06:43:34 +00:00
if (noseBaseMagnitude * 1.1f < noseMagnitude)
2023-11-13 02:53:34 +00:00
return true;
return false;
2023-11-10 07:17:23 +00:00
}
}