Removed Rectangle from LocationContainer

mapped-ids-then-whole-percentages-to-location-container

save-extracted-face

save-extracted-java-script-object-notation
This commit is contained in:
2025-07-06 10:45:59 -07:00
parent 2c9b1a68c0
commit 05fb8685d9
13 changed files with 327 additions and 208 deletions

View File

@ -5,11 +5,6 @@ namespace View_by_Distance.Shared.Models.Stateless;
public interface ILocation
{
RectangleF? TestStatic_GetPercentagesRectangle(DistanceSettings distanceSettings, int wholePercentages) =>
GetPercentagesRectangle(distanceSettings, wholePercentages);
static RectangleF? GetPercentagesRectangle(DistanceSettings distanceSettings, int wholePercentages) =>
Location.GetPercentagesRectangle(distanceSettings, wholePercentages);
Models.Location TestStatic_GetTrimBound(double detectionConfidence, Rectangle rectangle, int width, int height, int facesCount) =>
TrimBound(detectionConfidence, rectangle, width, height, facesCount);
static Models.Location TrimBound(double detectionConfidence, Rectangle rectangle, int width, int height, int facesCount) =>

View File

@ -1,6 +1,4 @@
using System.Drawing;
namespace View_by_Distance.Shared.Models.Stateless;
namespace View_by_Distance.Shared.Models.Stateless;
internal abstract class Location
{
@ -47,32 +45,4 @@ internal abstract class Location
return result;
}
internal static RectangleF? GetPercentagesRectangle(DistanceSettings distanceSettings, int wholePercentages)
{
RectangleF? result;
string wp = wholePercentages.ToString();
int length = (distanceSettings.LocationDigits - 1) / 4;
string[] segments =
[
wp[..1],
wp.Substring(1, length),
wp.Substring(3, length),
wp.Substring(5, length),
wp.Substring(7, length)
];
if (string.Join(string.Empty, segments) != wp)
result = null;
else
{
if (!int.TryParse(segments[1], out int xWholePercent) || !int.TryParse(segments[2], out int yWholePercent) || !int.TryParse(segments[3], out int wWholePercent) || !int.TryParse(segments[4], out int hWholePercent))
result = null;
else
{
float factor = 100;
result = new(xWholePercent / factor, yWholePercent / factor, wWholePercent / factor, hWholePercent / factor);
}
}
return result;
}
}