Removed both
faceDistanceLength.Length.Value / distanceTolerance and confidence / rangeFaceConfidence[1] Removed ReviewLocationContainerDistanceTolerance Added MoveToDecade IFaceDistance.MappingFromFilterPost ISorting.CanReMap
This commit is contained in:
@ -9,29 +9,31 @@ public record class FaceDistance : Properties.IFaceDistance
|
||||
public int? ConfidencePercent { init; get; }
|
||||
public DateTime DateTimeOriginalThenMinimumDateTime { init; get; }
|
||||
public object? Encoding { init; get; }
|
||||
public int Id { init; get; }
|
||||
public MappingFromFilterPost? MappingFromFilterPost { init; get; }
|
||||
public int? Id { init; get; }
|
||||
public bool? IsWrongYear { init; get; }
|
||||
public double? Length { init; get; }
|
||||
public int? WholePercentages { init; get; }
|
||||
|
||||
[JsonConstructor]
|
||||
public FaceDistance(int? confidencePercent, DateTime dateTimeOriginalThenMinimumDateTime, object? encoding, int id, bool? isWrongYear, double? length, int? wholePercentages)
|
||||
public FaceDistance(int? confidencePercent, DateTime dateTimeOriginalThenMinimumDateTime, object? encoding, MappingFromFilterPost? mappingFromFilterPost, int? id, bool? isWrongYear, double? length, int? wholePercentages)
|
||||
{
|
||||
ConfidencePercent = confidencePercent;
|
||||
DateTimeOriginalThenMinimumDateTime = dateTimeOriginalThenMinimumDateTime;
|
||||
Encoding = encoding;
|
||||
MappingFromFilterPost = mappingFromFilterPost;
|
||||
Id = id;
|
||||
IsWrongYear = isWrongYear;
|
||||
Length = length;
|
||||
WholePercentages = wholePercentages;
|
||||
}
|
||||
|
||||
public FaceDistance(int? confidencePercent, DateTime dateTimeOriginalThenMinimumDateTime, object? encoding, int id, bool? isWrongYear, int? wholePercentages) :
|
||||
this(confidencePercent, dateTimeOriginalThenMinimumDateTime, encoding, id, isWrongYear, null, wholePercentages)
|
||||
public FaceDistance(int? confidencePercent, DateTime dateTimeOriginalThenMinimumDateTime, object? encoding, MappingFromFilterPost? mappingFromFilterPost, int id, bool? isWrongYear, int? wholePercentages) :
|
||||
this(confidencePercent, dateTimeOriginalThenMinimumDateTime, encoding, mappingFromFilterPost, id, isWrongYear, null, wholePercentages)
|
||||
{ }
|
||||
|
||||
public FaceDistance(FaceDistance faceDistance, double length) :
|
||||
this(faceDistance.ConfidencePercent, faceDistance.DateTimeOriginalThenMinimumDateTime, null, faceDistance.Id, faceDistance.IsWrongYear, length, faceDistance.WholePercentages)
|
||||
this(faceDistance.ConfidencePercent, faceDistance.DateTimeOriginalThenMinimumDateTime, null, faceDistance.MappingFromFilterPost, faceDistance.Id, faceDistance.IsWrongYear, length, faceDistance.WholePercentages)
|
||||
{ }
|
||||
|
||||
public FaceDistance(object encoding) => Encoding = encoding;
|
||||
|
@ -12,29 +12,33 @@ public class Mapping : Properties.IMapping
|
||||
public string? _SegmentC;
|
||||
protected SortingContainer? _SortingContainer;
|
||||
public int? By => _By;
|
||||
public MappingFromFilterPost MappingFromFilterPost { init; get; }
|
||||
public MappingFromFilterPre MappingFromFilterPre { init; get; }
|
||||
public MappingFromItem MappingFromItem { init; get; }
|
||||
public MappingFromFilter MappingFromFilter { init; get; }
|
||||
public MappingFromLocation? MappingFromLocation { init; get; }
|
||||
public List<MappingFromPhotoPrism>? MappingFromPhotoPrismCollection { init; get; }
|
||||
public MappingFromPerson? MappingFromPerson => _MappingFromPerson;
|
||||
public List<MappingFromPhotoPrism>? MappingFromPhotoPrismCollection { init; get; }
|
||||
public string? SegmentC => _SegmentC;
|
||||
public SortingContainer? SortingContainer => _SortingContainer;
|
||||
|
||||
[JsonConstructor]
|
||||
public Mapping(int? by, MappingFromItem mappingFromItem, MappingFromFilter mappingFromFilter, MappingFromLocation? mappingFromLocation, List<MappingFromPhotoPrism>? mappingFromPhotoPrismCollection, MappingFromPerson? mappingFromPerson, string? segmentC, SortingContainer? sortingContainer)
|
||||
public Mapping(int? by, MappingFromFilter mappingFromFilter, MappingFromFilterPost mappingFromFilterPost, MappingFromFilterPre mappingFromFilterPre, MappingFromItem mappingFromItem, MappingFromLocation? mappingFromLocation, MappingFromPerson? mappingFromPerson, List<MappingFromPhotoPrism>? mappingFromPhotoPrismCollection, string? segmentC, SortingContainer? sortingContainer)
|
||||
{
|
||||
_By = by;
|
||||
_SegmentC = segmentC;
|
||||
MappingFromItem = mappingFromItem;
|
||||
MappingFromFilter = mappingFromFilter;
|
||||
MappingFromFilterPost = mappingFromFilterPost;
|
||||
MappingFromFilterPre = mappingFromFilterPre;
|
||||
MappingFromItem = mappingFromItem;
|
||||
MappingFromLocation = mappingFromLocation;
|
||||
MappingFromPhotoPrismCollection = mappingFromPhotoPrismCollection;
|
||||
_MappingFromPerson = mappingFromPerson;
|
||||
MappingFromPhotoPrismCollection = mappingFromPhotoPrismCollection;
|
||||
_SortingContainer = sortingContainer;
|
||||
}
|
||||
|
||||
public Mapping(MappingFromItem mappingFromItem, MappingFromFilter mappingFromFilter, MappingFromLocation? mappingFromLocation, List<MappingFromPhotoPrism>? mappingFromPhotoPrismCollection) :
|
||||
this(null, mappingFromItem, mappingFromFilter, mappingFromLocation, mappingFromPhotoPrismCollection, null, null, null)
|
||||
public Mapping(MappingFromFilter mappingFromFilter, MappingFromFilterPost mappingFromFilterPost, MappingFromFilterPre mappingFromFilterPre, MappingFromItem mappingFromItem, MappingFromLocation? mappingFromLocation, List<MappingFromPhotoPrism>? mappingFromPhotoPrismCollection) :
|
||||
this(null, mappingFromFilter, mappingFromFilterPost, mappingFromFilterPre, mappingFromItem, mappingFromLocation, null, mappingFromPhotoPrismCollection, null, null)
|
||||
{ }
|
||||
|
||||
public override string ToString()
|
||||
|
23
Shared/Models/MappingFromFilterPost.cs
Normal file
23
Shared/Models/MappingFromFilterPost.cs
Normal file
@ -0,0 +1,23 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public record MappingFromFilterPost(bool? CanReMap,
|
||||
bool? InSkipCollection,
|
||||
bool? IsFocusPerson)
|
||||
{
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, MappingFromFilterPostGenerationContext.Default.MappingFromFilterPost);
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||
[JsonSerializable(typeof(MappingFromFilterPost))]
|
||||
public partial class MappingFromFilterPostGenerationContext : JsonSerializerContext
|
||||
{
|
||||
}
|
23
Shared/Models/MappingFromFilterPre.cs
Normal file
23
Shared/Models/MappingFromFilterPre.cs
Normal file
@ -0,0 +1,23 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public record MappingFromFilterPre(bool? InSkipCollection,
|
||||
bool? IsFocusModel,
|
||||
bool? IsFocusRelativePath)
|
||||
{
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, MappingFromFilterPreGenerationContext.Default.MappingFromFilterPre);
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||
[JsonSerializable(typeof(MappingFromFilterPre))]
|
||||
public partial class MappingFromFilterPreGenerationContext : JsonSerializerContext
|
||||
{
|
||||
}
|
@ -5,7 +5,6 @@ namespace View_by_Distance.Shared.Models.Methods;
|
||||
public interface IDistance<T>
|
||||
{
|
||||
|
||||
void ReviewLocationContainerDistanceTolerance(float locationContainerDistanceTolerance, ReadOnlyCollection<LocationContainer<T>> locationContainers);
|
||||
void SaveMappedForOutputResolutions(string a2PeopleContentDirectory, string eDistanceContentDirectory, float[] rangeDistanceTolerance, ReadOnlyCollection<LocationContainer<T>> locationContainers, string personKeyFormatted, string? displayDirectoryName);
|
||||
void SaveMappedForOutputResolutions(string a2PeopleContentDirectory, string eDistanceContentDirectory, float locationContainerDistanceTolerance, ReadOnlyCollection<LocationContainer<T>> locationContainers, long personKey, bool isCounterPersonYear, string personKeyFormatted, string? displayDirectoryName);
|
||||
|
||||
}
|
@ -6,7 +6,8 @@ public interface IFaceDistance
|
||||
public int? ConfidencePercent { init; get; }
|
||||
public DateTime DateTimeOriginalThenMinimumDateTime { init; get; }
|
||||
public object? Encoding { init; get; }
|
||||
public int Id { init; get; }
|
||||
public MappingFromFilterPost? MappingFromFilterPost { init; get; }
|
||||
public int? Id { init; get; }
|
||||
public bool? IsWrongYear { init; get; }
|
||||
public double? Length { init; get; }
|
||||
public int? WholePercentages { init; get; }
|
||||
|
@ -4,11 +4,13 @@ public interface IMapping
|
||||
{
|
||||
|
||||
public int? By { get; }
|
||||
public string? SegmentC { get; }
|
||||
public MappingFromFilterPost MappingFromFilterPost { init; get; }
|
||||
public MappingFromFilterPre MappingFromFilterPre { init; get; }
|
||||
public MappingFromItem MappingFromItem { init; get; }
|
||||
public MappingFromLocation? MappingFromLocation { init; get; }
|
||||
public List<MappingFromPhotoPrism>? MappingFromPhotoPrismCollection { init; get; }
|
||||
public MappingFromPerson? MappingFromPerson { get; }
|
||||
public List<MappingFromPhotoPrism>? MappingFromPhotoPrismCollection { init; get; }
|
||||
public string? SegmentC { get; }
|
||||
public SortingContainer? SortingContainer { get; }
|
||||
|
||||
}
|
@ -3,6 +3,7 @@ namespace View_by_Distance.Shared.Models.Properties;
|
||||
public interface ISorting
|
||||
{
|
||||
|
||||
public bool CanReMap { init; get; }
|
||||
public int DaysDelta { init; get; }
|
||||
public int DistancePermyriad { init; get; }
|
||||
public int Id { init; get; }
|
||||
|
@ -6,6 +6,7 @@ namespace View_by_Distance.Shared.Models;
|
||||
public record class Sorting : Properties.ISorting
|
||||
{
|
||||
|
||||
public bool CanReMap { init; get; }
|
||||
public int DaysDelta { init; get; }
|
||||
public int DistancePermyriad { init; get; }
|
||||
public int Id { init; get; }
|
||||
@ -13,17 +14,18 @@ public record class Sorting : Properties.ISorting
|
||||
public int WholePercentages { init; get; }
|
||||
|
||||
[JsonConstructor]
|
||||
public Sorting(int daysDelta, int distancePermyriad, int id, bool older, int wholePercentages)
|
||||
public Sorting(bool canReMap, int daysDelta, int distancePermyriad, int id, bool older, int wholePercentages)
|
||||
{
|
||||
CanReMap = canReMap;
|
||||
DaysDelta = daysDelta;
|
||||
DistancePermyriad = distancePermyriad;
|
||||
Id = id;
|
||||
WholePercentages = wholePercentages;
|
||||
Older = older;
|
||||
WholePercentages = wholePercentages;
|
||||
}
|
||||
|
||||
public Sorting(Mapping mapping, MappingFromLocation mappingFromLocation) :
|
||||
this(0, 0, mapping.MappingFromItem.Id, false, mappingFromLocation.WholePercentages)
|
||||
this(false, 0, 0, mapping.MappingFromItem.Id, false, mappingFromLocation.WholePercentages)
|
||||
{ }
|
||||
|
||||
public override string ToString()
|
||||
|
@ -45,10 +45,10 @@ public interface ILocation
|
||||
static string GetLeftPadded(int locationDigits, string value) =>
|
||||
Location.GetLeftPadded(locationDigits, value);
|
||||
|
||||
int TestStatic_GetConfidencePercent(int faceConfidencePercent, float[] rangeFaceConfidence, double confidence) =>
|
||||
GetConfidencePercent(faceConfidencePercent, rangeFaceConfidence, confidence);
|
||||
static int GetConfidencePercent(int faceConfidencePercent, float[] rangeFaceConfidence, double confidence) =>
|
||||
Location.GetConfidencePercent(faceConfidencePercent, rangeFaceConfidence, confidence);
|
||||
int TestStatic_GetConfidencePercent(int faceConfidencePercent, double confidence) =>
|
||||
GetConfidencePercent(faceConfidencePercent, confidence);
|
||||
static int GetConfidencePercent(int faceConfidencePercent, double confidence) =>
|
||||
Location.GetConfidencePercent(faceConfidencePercent, confidence);
|
||||
|
||||
string TestStatic_GetLeftPadded(int locationDigits, int value) =>
|
||||
GetLeftPadded(locationDigits, value);
|
||||
|
@ -8,9 +8,9 @@ public interface ISorting
|
||||
static Models.Sorting[] Sort(List<Models.Sorting> collection) =>
|
||||
(from l in collection orderby l.DistancePermyriad, l.DaysDelta select l).ToArray();
|
||||
|
||||
Models.Sorting TestStatic_Get(int faceDistancePermyriad, float distanceTolerance, Models.FaceDistance faceDistanceEncoding, Models.FaceDistance faceDistanceLength) =>
|
||||
Get(faceDistancePermyriad, distanceTolerance, faceDistanceEncoding, faceDistanceLength);
|
||||
static Models.Sorting Get(int faceDistancePermyriad, float distanceTolerance, Models.FaceDistance faceDistanceEncoding, Models.FaceDistance faceDistanceLength) =>
|
||||
Sorting.Get(faceDistancePermyriad, distanceTolerance, faceDistanceEncoding, faceDistanceLength);
|
||||
Models.Sorting TestStatic_Get(int faceDistancePermyriad, Models.FaceDistance faceDistanceEncoding, Models.FaceDistance faceDistanceLength) =>
|
||||
Get(faceDistancePermyriad, faceDistanceEncoding, faceDistanceLength);
|
||||
static Models.Sorting Get(int faceDistancePermyriad, Models.FaceDistance faceDistanceEncoding, Models.FaceDistance faceDistanceLength) =>
|
||||
Sorting.Get(faceDistancePermyriad, faceDistanceEncoding, faceDistanceLength);
|
||||
|
||||
}
|
@ -114,9 +114,9 @@ internal abstract class Location
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static int GetConfidencePercent(int faceConfidencePercent, float[] rangeFaceConfidence, double confidence)
|
||||
internal static int GetConfidencePercent(int faceConfidencePercent, double confidence)
|
||||
{
|
||||
int result = (int)(confidence / rangeFaceConfidence[1] * faceConfidencePercent);
|
||||
int result = (int)(confidence * faceConfidencePercent);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -3,9 +3,11 @@ namespace View_by_Distance.Shared.Models.Stateless.Methods;
|
||||
internal abstract class Sorting
|
||||
{
|
||||
|
||||
internal static Models.Sorting Get(int faceDistancePermyriad, float distanceTolerance, Models.FaceDistance faceDistanceEncoding, Models.FaceDistance faceDistanceLength)
|
||||
internal static Models.Sorting Get(int faceDistancePermyriad, Models.FaceDistance faceDistanceEncoding, Models.FaceDistance faceDistanceLength)
|
||||
{
|
||||
Models.Sorting result;
|
||||
if (faceDistanceLength.Id is null)
|
||||
throw new NotSupportedException();
|
||||
if (faceDistanceLength.Length is null)
|
||||
throw new NotSupportedException();
|
||||
if (faceDistanceLength.WholePercentages is null)
|
||||
@ -13,8 +15,9 @@ internal abstract class Sorting
|
||||
TimeSpan timeSpan = new(faceDistanceLength.DateTimeOriginalThenMinimumDateTime.Ticks - faceDistanceEncoding.DateTimeOriginalThenMinimumDateTime.Ticks);
|
||||
bool older = timeSpan.TotalMilliseconds < 0;
|
||||
int daysDelta = (int)Math.Round(Math.Abs(timeSpan.TotalDays), 0);
|
||||
int distancePermyriad = (int)(faceDistanceLength.Length.Value / distanceTolerance * faceDistancePermyriad);
|
||||
result = new(daysDelta, distancePermyriad, faceDistanceLength.Id, older, faceDistanceLength.WholePercentages.Value);
|
||||
int distancePermyriad = (int)(faceDistanceLength.Length.Value * faceDistancePermyriad);
|
||||
bool canReMap = faceDistanceLength.MappingFromFilterPost?.CanReMap is not null && faceDistanceLength.MappingFromFilterPost.CanReMap.Value;
|
||||
result = new(canReMap, daysDelta, distancePermyriad, faceDistanceLength.Id.Value, older, faceDistanceLength.WholePercentages.Value);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user