Files
OpenNest/OpenNest.Core/Size.cs
2026-03-06 12:51:16 -05:00

56 lines
1.2 KiB
C#

using System;
namespace OpenNest
{
public struct Size
{
public Size(double width, double height)
{
Height = height;
Width = width;
}
public double Height;
public double Width;
public static Size Parse(string size)
{
var a = size.ToUpper().Split('X');
if (a.Length > 2)
throw new FormatException("Invalid size format.");
var height = double.Parse(a[0]);
var width = double.Parse(a[1]);
return new Size(width, height);
}
public static bool TryParse(string s, out Size size)
{
try
{
size = Parse(s);
}
catch
{
size = new Size(0, 0);
return false;
}
return true;
}
public override string ToString()
{
return string.Format("{0} x {1}", Height, Width);
}
public string ToString(int decimalPlaces)
{
return string.Format("{0} x {1}", System.Math.Round(Height, decimalPlaces), System.Math.Round(Width, decimalPlaces));
}
}
}