Ticks
This commit is contained in:
@ -12,5 +12,6 @@ public interface IClosest
|
||||
const int Digits = 3;
|
||||
const int Factor = 1000;
|
||||
const int MaximumPer = 50;
|
||||
const double Tolerance = 0.6d;
|
||||
|
||||
}
|
@ -7,6 +7,5 @@ public interface IFaceDistance
|
||||
|
||||
const int HiddenImageFactor = 2;
|
||||
const int MaximumPer = 9999;
|
||||
const double Tolerance = 0.6d;
|
||||
|
||||
}
|
@ -5,7 +5,7 @@ internal abstract class Closest
|
||||
|
||||
private static int Get(List<double> faceDistances) => (int)(Math.Round(faceDistances.Average(), Stateless.IClosest.Digits) * Stateless.ILocation.Factor);
|
||||
|
||||
private static Models.Closest Get(Models.Face face, DateTime minimumDateTime, FaceDistance faceDistance)
|
||||
private static Models.Closest Get(Models.PersonBirthday personBirthday, Models.Face face, DateTime minimumDateTime, FaceDistance faceDistance)
|
||||
{
|
||||
Models.Closest result;
|
||||
int average = Get(faceDistance.Distances);
|
||||
@ -19,16 +19,18 @@ internal abstract class Closest
|
||||
if (faceDistance.MinimumDateTime < faceDistance.Mapping.PersonBirthday.Value)
|
||||
ticksDelta *= 2;
|
||||
}
|
||||
if (minimum > Stateless.IClosest.Tolerance)
|
||||
faceDistance.Mapping.SetPersonBirthday(personBirthday);
|
||||
if (face.Location?.NormalizedPixelPercentage is null)
|
||||
throw new NullReferenceException(nameof(face.Location.NormalizedPixelPercentage));
|
||||
result = new(average, face.Location.NormalizedPixelPercentage.Value, faceDistance.IsWrongYear, faceDistance.Mapping, minimum, faceDistance.MinimumDateTime, ticksDelta);
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static Models.Closest[] GetCollection(Models.Face face, DateTime minimumDateTime, List<FaceDistance> faceDistances)
|
||||
internal static Models.Closest[] GetCollection(Models.PersonBirthday personBirthday, Models.Face face, DateTime minimumDateTime, List<FaceDistance> faceDistances)
|
||||
{
|
||||
Models.Closest[] results;
|
||||
Models.Closest[] closestCollection = (from l in faceDistances select Get(face, minimumDateTime, l)).ToArray();
|
||||
Models.Closest[] closestCollection = (from l in faceDistances select Get(personBirthday, face, minimumDateTime, l)).ToArray();
|
||||
results = (from l in closestCollection orderby l.Average, l.TicksDelta.HasValue, l.TicksDelta select l).ToArray();
|
||||
return results;
|
||||
}
|
||||
|
@ -5,6 +5,6 @@ public interface IClosest
|
||||
|
||||
Models.Closest[] TestStatic_Get(List<FaceDistance> faceDistances);
|
||||
|
||||
static Models.Closest[] GetCollection(Models.Face face, DateTime minimumDateTime, List<FaceDistance> faceDistances) => Closest.GetCollection(face, minimumDateTime, faceDistances);
|
||||
static Models.Closest[] GetCollection(Models.PersonBirthday personBirthday, Models.Face face, DateTime minimumDateTime, List<FaceDistance> faceDistances) => Closest.GetCollection(personBirthday, face, minimumDateTime, faceDistances);
|
||||
|
||||
}
|
@ -20,6 +20,11 @@ public interface IPersonBirthday
|
||||
static DateTime? GetDateTime(string personKey) =>
|
||||
PersonBirthday.GetDateTime(personKey);
|
||||
|
||||
Models.PersonBirthday TestStatic_GetPersonBirthday(long ticks) =>
|
||||
new(new(ticks));
|
||||
static Models.PersonBirthday GetPersonBirthday(long ticks) =>
|
||||
new(new(ticks));
|
||||
|
||||
string TestStatic_GetFileName(Models.PersonBirthday personBirthday) =>
|
||||
PersonBirthday.GetFileName(personBirthday);
|
||||
static string GetFileName(Models.PersonBirthday personBirthday) =>
|
||||
|
Reference in New Issue
Block a user