fix: 保留涨缩钻带坐标前导零
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace DrillTools.Integration
|
||||
@@ -103,7 +104,7 @@ namespace DrillTools.Integration
|
||||
long xNew = (long)Math.Round(xOrig * kx);
|
||||
long yNew = (long)Math.Round(yOrig * ky);
|
||||
|
||||
return $"X{xNew}Y{yNew}";
|
||||
return $"X{FormatCoordinateValue(xNew)}Y{FormatCoordinateValue(yNew)}";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -148,7 +149,20 @@ namespace DrillTools.Integration
|
||||
long newEndX = cxNew + dx;
|
||||
long newEndY = cyNew + dy;
|
||||
|
||||
return $"X{newStartX}Y{newStartY}G85X{newEndX}Y{newEndY}";
|
||||
return
|
||||
$"X{FormatCoordinateValue(newStartX)}Y{FormatCoordinateValue(newStartY)}" +
|
||||
$"G85X{FormatCoordinateValue(newEndX)}Y{FormatCoordinateValue(newEndY)}";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 将坐标数值格式化为钻带使用的 6 位坐标文本,负数保留负号。
|
||||
/// </summary>
|
||||
private static string FormatCoordinateValue(long value)
|
||||
{
|
||||
if (value < 0)
|
||||
return "-" + Math.Abs(value).ToString("D6", CultureInfo.InvariantCulture);
|
||||
|
||||
return value.ToString("D6", CultureInfo.InvariantCulture);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user