- Use CultureInfo.InvariantCulture in CoordinateFormatter, SpeedClassifier, and CincinnatiPreambleWriter to prevent locale-dependent G-code output - Make CincinnatiPostConfig sealed per spec - Fix SpeedClassifier.Classify threshold to >= (matching spec) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
25 lines
690 B
C#
25 lines
690 B
C#
namespace OpenNest.Posts.Cincinnati
|
|
{
|
|
public sealed class CoordinateFormatter
|
|
{
|
|
private readonly int _accuracy;
|
|
private readonly string _format;
|
|
|
|
public CoordinateFormatter(int accuracy)
|
|
{
|
|
_accuracy = accuracy;
|
|
_format = "0." + new string('#', accuracy);
|
|
}
|
|
|
|
public string FormatCoord(double value)
|
|
{
|
|
return System.Math.Round(value, _accuracy)
|
|
.ToString(_format, System.Globalization.CultureInfo.InvariantCulture);
|
|
}
|
|
|
|
public static string Comment(string text) => $"( {text} )";
|
|
|
|
public static string InlineComment(string text) => $"({text})";
|
|
}
|
|
}
|