From 23d245fd789b2825809a022d1cc2812974da254b Mon Sep 17 00:00:00 2001 From: Shahovalov MIkhail Date: Wed, 27 May 2026 14:45:48 +0300 Subject: [PATCH] =?UTF-8?q?docs:=20handoff=20=E2=80=94=20=D0=B2=D0=B5?= =?UTF-8?q?=D1=85=D0=B0=202D-=D1=87=D0=B5=D1=80=D1=82=D1=91=D0=B6=20=D0=BD?= =?UTF-8?q?=D0=B0=D1=87=D0=B0=D1=82=D0=B0=20(drawing=5Fcreate=5Fstandard?= =?UTF-8?q?=5Fviews=20=D0=B3=D0=BE=D1=82=D0=BE=D0=B2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/superpowers/NEXT-SESSION.md | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/docs/superpowers/NEXT-SESSION.md b/docs/superpowers/NEXT-SESSION.md index 2b6602b..360a105 100644 --- a/docs/superpowers/NEXT-SESSION.md +++ b/docs/superpowers/NEXT-SESSION.md @@ -14,7 +14,16 @@ затем ЧЕРТЁЖ. ## Текущее состояние (main, синхронизирован с origin) -- 72 MCP-инструмента, 156 тестов зелёных (98 unit + 58 integration). +- 73 MCP-инструмента, 177 тестов зелёных (116 unit + 61 integration). +- **ВЕХА 2 (2D-ЧЕРТЁЖ) НАЧАТА:** `drawing_create_standard_views(partFilePath, scale, x, y)` СДЕЛАН + (инкремент 1) — стандартные ассоциативные виды (спереди/сверху/слева) детали/сборки на активном + чертеже (API7, `DrawingService`, namespace `Kompas.Mcp.Core.Drawings`). Workflow: + `doc2d.ViewsAndLayersManager.Views.AddStandartViews(path, "#Спереди", object[]{1,3,5}, x, y, scale, + 20, 20)`. Эмпирика: `object[]`→SAFEARRAY VT_I4 ОК; новый чертёж стартует с Count=1 (системный вид), + 3 проекции → Count=4; ObjectCount>0 сразу (rebuild не нужен); проверка `created==3` + непустота по + новым видам (разница `IView.Number`) + откат `IView.Delete`. Спек: + `2026-05-27-drawing-standard-views-design.md`. **СЛЕДУЮЩЕЕ — инкремент 2 чертежа: оформление + (размеры/обозначения на видах, рамка, основная надпись).** - **СБОРКИ: инкременты 1 и 2 СДЕЛАНЫ** (API7, `AssemblyService`, namespace `Kompas.Mcp.Core.Assemblies`): - `assembly_add_component(filePath, x, y, z)` — вставка детали/подсборки из `.m3d`/`.a3d` с позицией. Workflow: `IParts7.AddFromFile(path,true,true)` → `part.Placement.SetOrigin(x,y,z)` → @@ -94,13 +103,19 @@ FirstLevel=false)` (мировые координаты с учётом placemen вида (`LineSegments`/`Circles`/… — как в разведке параметрики). Рекомендуемые инкременты: -1. `drawing_create_standard_views(partFilePath, scale)` — чертёж со стандартными видами детали. - Тест: построить деталь → сохранить → создать чертёж → `AddStandartViews` → проверить - `Views.Count > 0` (виды созданы). Объёмом не проверить — считать виды/объекты. -2. Размеры/обозначения на видах (линейные/диаметральные), рамка/основная надпись — по мере надобности. +1. ✅ **СДЕЛАНО:** `drawing_create_standard_views(partFilePath, scale, x, y)` — стандартные виды + (спереди/сверху/слева) детали/сборки на чертеже. `AddStandartViews(path, "#Спереди", + object[]{1,3,5}, x, y, scale, 20, 20)`; проверено `created==3` + непустота. Память: + `kompas-drawing-api7`. +2. **СЛЕДУЮЩЕЕ:** оформление чертежа — размеры/обозначения на видах (линейные/диаметральные), + рамка/основная надпись. Точки входа: отдельный вид `IViews.Add(LtViewType)`; геометрия/размеры — + через контейнер вида (`IDrawingContainer`/`LineSegments`/`Circles`/размерные интерфейсы 2D-API). + **Сначала рефлексия + `kompas-sdk-research`** по интерфейсам простановки размеров на чертеже + (возможны тонкости, сделай спайк до спека). Тест — число объектов/размеров на виде. Тонкости: чертёж проверяется не объёмом, а числом видов/объектов; ассоциативные виды требуют -сохранённого `.m3d`-файла детали. Уточни workflow через `kompas-sdk-research`. +сохранённого `.m3d`/`.a3d`-файла. Коды видов `ksRelativeProjectionTypeEnum`: `ksPtFront=1`, +`ksPtUp=3`, `ksPtLeft=5`, `ksPtIsoXYZ=7` и т.д. ## Процесс на каждую операцию (отлажен в прошлых сессиях) Сборки/чертёж — это НЕ `PartModeler` (он API5-деталь). Заводи НОВЫЕ сервисы (`AssemblyService`,