Health/Assets/Scripts/PoseCheck/HeadTurnDown.cs

24 lines
754 B
C#

using OpenCVForUnity.CoreModule;
using System.Collections.Generic;
public class HeadTurnDown : PoseBase
{
public override bool CheckPose(List<Point> points)
{
// 必须包含 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;
if (noseBaseMagnitude > noseMagnitude * 1.1f)
return true;
return false;
}
}