fix: правки типов отверстий по ревью Codex
- глухая цековка: проверка depth > spotDepth (несовместимая геометрия) — P2 - описание sinkAngle: строго 0 < sinkAngle < 180 (соответствие валидации) — P3 - описание hole_counterbore: требование depth > spotfaceDepth для глухого
This commit is contained in:
@@ -40,6 +40,8 @@ public sealed class HoleService
|
||||
throw new ArgumentOutOfRangeException(nameof(spotDiameter), "Диаметр цековки должен быть больше диаметра отверстия.");
|
||||
if (!double.IsFinite(spotDepth) || spotDepth <= 0)
|
||||
throw new ArgumentOutOfRangeException(nameof(spotDepth), "Глубина цековки должна быть > 0.");
|
||||
if (!throughAll && double.IsFinite(depth) && depth <= spotDepth)
|
||||
throw new ArgumentOutOfRangeException(nameof(depth), "Глубина глухого отверстия должна быть больше глубины цековки.");
|
||||
HoleCore(x, y, z, diameter, depth, throughAll, ksHoleTypeEnum.ksHTCounterbore, hole =>
|
||||
{
|
||||
var p = hole.HoleParameters as ISpotfacingHoleParameters
|
||||
|
||||
@@ -213,7 +213,7 @@ public sealed class FeatureTools(KompasSession session, PartModeler modeler, Hol
|
||||
}
|
||||
|
||||
[McpServerTool(Name = "hole_counterbore")]
|
||||
[Description("Отверстие с ЦЕКОВКОЙ (цилиндрическое уширение сверху — под винт с цилиндрической головкой) на грани в точке (x,y,z — центр). diameter — диаметр отверстия (мм). depth/throughAll — как у hole. spotfaceDiameter — диаметр цековки (мм, больше diameter), spotfaceDepth — глубина цековки (мм). Направление в тело — авто.")]
|
||||
[Description("Отверстие с ЦЕКОВКОЙ (цилиндрическое уширение сверху — под винт с цилиндрической головкой) на грани в точке (x,y,z — центр). diameter — диаметр отверстия (мм). depth/throughAll — как у hole (для глухого depth должен быть больше spotfaceDepth). spotfaceDiameter — диаметр цековки (мм, больше diameter), spotfaceDepth — глубина цековки (мм). Направление в тело — авто.")]
|
||||
public async Task<string> HoleCounterbore(
|
||||
double x, double y, double z,
|
||||
[Description("Диаметр отверстия, мм")] double diameter,
|
||||
@@ -229,7 +229,7 @@ public sealed class FeatureTools(KompasSession session, PartModeler modeler, Hol
|
||||
}
|
||||
|
||||
[McpServerTool(Name = "hole_countersink")]
|
||||
[Description("Отверстие с ЗЕНКОВКОЙ (коническое уширение сверху — под винт с потайной головкой) на грани в точке (x,y,z — центр). diameter — диаметр отверстия (мм). depth/throughAll — как у hole. sinkDiameter — диаметр зенковки (мм, больше diameter), sinkAngle — угол конуса зенковки (градусы, 0..180; типично 90). Направление в тело — авто.")]
|
||||
[Description("Отверстие с ЗЕНКОВКОЙ (коническое уширение сверху — под винт с потайной головкой) на грани в точке (x,y,z — центр). diameter — диаметр отверстия (мм). depth/throughAll — как у hole. sinkDiameter — диаметр зенковки (мм, больше diameter), sinkAngle — угол конуса зенковки (градусы, строго 0 < sinkAngle < 180; типично 90). Направление в тело — авто.")]
|
||||
public async Task<string> HoleCountersink(
|
||||
double x, double y, double z,
|
||||
[Description("Диаметр отверстия, мм")] double diameter,
|
||||
|
||||
Reference in New Issue
Block a user