Commit Graph

2 Commits

Author SHA1 Message Date
mikhail b6ca2f7b21 feat: drawing_add_diametral_dimension — упрочнение по ревью Codex реализации
#2: инвариант диаметра value>0 (value<=0||!IsFinite, не Abs<1e-6). #3: сообщение
create_standard_views обобщено (номера видов для инструментов размеров). #4a:
ToRadians проверяет конечность результата (переполнение). #5d: тест viewNumber:999
(вид не найден). #6: комментарий DimensionType переформулирован (COM-дефолт).

Тесты: DrawingDiametralTests 4→5. Итого 141 unit + 77 integration = 218.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 18:38:33 +03:00
mikhail 910d120c8a feat: drawing_add_diametral_dimension — диаметральный размер на виде (API7)
Веха 2D-ЧЕРТЁЖ, инкремент 4. DrawingService.AddDiametralDimensionAsync:
(ISymbols2DContainer)view.DiametralDimensions.Add → Xc/Yc/Radius/Angle(рад) +
AutoNominalValue → Update → Valid → NominalValue (= диаметр 2R). angle в градусах
(DimensionAngles.ToRadians). Новый инструмент drawing_add_diametral_dimension.

Рефактор по ревью Codex: извлечён RequireSymbols2DContainer(viewNumber) (общий для
линейных/диаметральных размеров); AutoNominalValue выставляется явно (как у линейного);
DimensionType — COM-дефолт; ToRadians — чистый helper с unit-тестом.

Валидаторы: RequirePositiveRadius (новый). Тесты: +10 unit (ToRadians,
RequirePositiveRadius), +4 integration (DrawingDiametralTests: диаметр=2R, адресация
вида, radius<=0, нет видов). Итого 141 unit + 76 integration = 217.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 18:30:04 +03:00