From 3b9cbd90a1dc2e91fc275e79b66df74739264b25 Mon Sep 17 00:00:00 2001 From: Hakan Seven Date: Fri, 3 Apr 2026 21:56:18 +0300 Subject: [PATCH] Remove ROADMAP.md from tracking (was in .gitignore) --- ROADMAP.md | 276 ----------------------------------------------------- 1 file changed, 276 deletions(-) delete mode 100644 ROADMAP.md diff --git a/ROADMAP.md b/ROADMAP.md deleted file mode 100644 index e54e3279e..000000000 --- a/ROADMAP.md +++ /dev/null @@ -1,276 +0,0 @@ -# H7CAD — Roadmap - -acadrust 0.3.1 referans alınarak hazırlanmıştır. - ---- - -## Mevcut Durum (Özet) - -### Entity Desteği - -| Durum | Entity'ler | -|-------|-----------| -| **Tam** (render + grips + props + transform) | Point, Line, Circle, Arc, Ellipse, Spline, LwPolyline, Polyline, Polyline2D, Polyline3D, Ray, XLine, Text, MText, Leader, MultiLeader, RasterImage, Wipeout, AttributeDefinition, AttributeEntity, MLine, Table, Tolerance, Face3D, PolygonMesh, PolyfaceMesh | -| **Özel render, kısmi** | Dimension *(tessellate_dimension — grips yok)*, Hatch *(GPU HatchModel — grips yok)*, Insert *(explode_from_document)*, Viewport *(border render)* | -| **Hiç yok** | Solid *(2D dolu katı)*, Solid3D/Region/Body *(ACIS)*, Underlay *(PDF/DWF/DGN)*, Shape *(font glyph)* | - -### I/O -- DWG okuma/yazma: R14 → R2018 (AC1032) -- DXF okuma/yazma -- PDF export (PlotSettings entegreli, rotation, offset, scale, window) - -### Komutlar -203 benzersiz komut string — çizim, düzenleme, katman, görünüm, annotasyon, yardımcı. - -### acadrust Tablo/Object Kullanımı -Kullanılan: `layers`, `linetypes`, `text_styles`, `dim_styles`, `views`, `ucss`, `vports`, `block_records`, `Layout`, `Group`, `PlotSettings`, `SortEntitiesTable` -Kullanılmayan: `MLineStyle`, `TableStyle`, `ImageDefinition` - ---- - -## Kalan İşler - -### 1 — Entity Tamamlama - -#### 1.1 Dimension Grips ✅ -**Öncelik: Yüksek** — **TAMAMLANDI** - -- [x] DimLinear: definition point, dim line, text grips -- [x] DimAligned: aynı -- [x] DimAngular: vertex + extension grips -- [x] DimRadius / DimDiameter: center + radius point grip -- [x] Grip ile dimension text konumu düzenleme - -**Dosyalar:** `src/entities/dimension.rs` - ---- - -#### 1.2 Hatch Boundary Grips ✅ -**Öncelik: Orta** — **TAMAMLANDI** - -- [x] Her boundary loop köşesi için grip (Polyline, Line, Arc, EllipticArc, Spline) -- [x] Grip sürükleme → boundary vertex güncelleme → hatch yeniden tessellate - -**Dosyalar:** `src/entities/hatch.rs`, `src/scene/mod.rs` - ---- - -#### 1.3 Solid Entity (2D) ✅ -**Öncelik: Düşük** — **TAMAMLANDI** - -- [x] `TruckConvertible`: wireframe çevre + GPU solid-fill (hatch pipeline) -- [x] Grips: 4 köşe -- [x] Properties: 4 köşe koordinatı, thickness -- [x] `Transformable` - -**Dosyalar:** `src/entities/solid.rs` - ---- - -#### 1.4 Underlay (PDF/DWF/DGN Referans) -**Öncelik: Düşük** - -- [ ] Wireframe sınır kutusu render (RasterImage gibi) -- [ ] Fade/contrast/clip properties -- [ ] `UNDERLAY` komutu (dosya seçimi olmadan — sadece mevcut entity düzenleme) - -**Dosyalar:** yeni `src/entities/underlay.rs` - ---- - -### 2 — Viewport & Kağıt Uzayı - -#### 2.1 VPCLIP -**Öncelik: Düşük** | **Bloker: acadrust `Viewport` struct'ında `clip_boundary` alanı yok** - -- [ ] Özel overlay ile polygon clip sınırı çizimi -- [ ] VPCLIP komutu -- [ ] Clip boundary grip düzenlemesi - ---- - -#### 2.2 Yeni Viewport Default Freeze Listesi -**Öncelik: Düşük** | **Bloker: acadrust VPLAYER NEWFRZ desteği yok** - -- [ ] MVIEW ile oluşturulan yeni viewport'lara dondurulmuş layer listesi uygulanması - ---- - -#### 2.3 Per-Viewport Arka Plan Rengi -**Öncelik: Düşük** - -- [ ] Viewport entity'sine arka plan rengi alanı (custom veya overlay) -- [ ] wgpu pipeline'da per-viewport clear color - ---- - -#### 2.4 Layer UI — Per-Viewport Görünürlük -**Öncelik: Düşük** - -- [ ] Layer panelinde her viewport için ayrı freeze/thaw göstergesi - ---- - -#### 2.5 Plot Style Table (CTB/STB) -**Öncelik: Orta** - -- [ ] CTB (color-based) dosya okuma/yazma -- [ ] STB (named) dosya okuma/yazma -- [ ] PDF export sırasında plot style renk/kalınlık dönüşümü -- [ ] PlotSettings'e CTB/STB referansı - ---- - -#### 2.6 PDF Shade Plot (Hidden Line Removal) -**Öncelik: Düşük** - -- [ ] PDF export sırasında shade_plot_mode = Hidden → arka taraftaki kenarları gizle -- [ ] Depth sorting + backface culling (wireframe model için) - ---- - -### 3 — Koordinat Sistemi - -#### 3.1 WCS ↔ UCS Dönüşüm -**Öncelik: Orta** - -Şu an tüm komutlar WCS (world) koordinatında çalışıyor. - -- [ ] Aktif UCS matrisini komutlara entegre (giriş noktaları UCS → WCS dönüşümü) -- [ ] Snap grid'i UCS düzlemine hizala -- [ ] `UCS` komutu ile gerçek koordinat sistemi geçişi - -**Dosyalar:** `src/scene/mod.rs`, `src/app/commands.rs` - ---- - -#### 3.2 UCS Icon Render ✅ -**Öncelik: Düşük** — **TAMAMLANDI** - -- [x] Model space sol alt köşesinde XYZ eksen oku çizimi (iced canvas overlay) -- [x] Kamera rotasyonuna göre eksen yönleri dinamik olarak hesaplanıyor -- [x] `UCSICON` komutu ile toggle (ON/OFF) - ---- - -### 4 — Style Yöneticileri (UI Dialogları) - -#### 4.1 DimStyle Dialog -**Öncelik: Orta** - -`DIMSTYLE LIST/NEW/SET` komutları mevcut; tam UI yok. - -- [ ] Tüm DimStyle özelliklerini gösteren panel/dialog -- [ ] Ok tipi seçici (DIMBLK/DIMBLK1/DIMBLK2) — acadrust `dimblk` alanı var -- [ ] Tolerans format ayarları (DIMTOL, DIMLIM) -- [ ] Preview ile gerçek zamanlı önizleme - -**Dosyalar:** yeni `src/ui/dimstyle_dialog.rs` - ---- - -#### 4.2 TextStyle Font Browser -**Öncelik: Düşük** - -`STYLE LIST/NEW/FONT/WIDTH/OBLIQUE` komutları mevcut; dosya browser yok. - -- [ ] Sistem font listesi -- [ ] SHX font listesi (assets/fonts/) -- [ ] Önizleme metni - -**Dosyalar:** yeni `src/ui/textstyle_dialog.rs` - ---- - -#### 4.3 MLineStyle Yöneticisi -**Öncelik: Düşük** - -`MLineStyle` acadrust'ta mevcut (`objects/mline_style.rs`) ama H7CAD hiç kullanmıyor. - -- [ ] MLineStyle oluştur/düzenle (çizgi sayısı, offset, renk, linetype) -- [ ] Caps (başlangıç/bitiş çizgi, yay) -- [ ] MLINE komutuna stil seçimi entegre - -**Dosyalar:** yeni `src/ui/mlinestyle_dialog.rs` - ---- - -#### 4.4 TableStyle Yöneticisi -**Öncelik: Düşük** - -`TableStyle` acadrust'ta mevcut (`objects/table_style.rs`) ama kullanılmıyor. - -- [ ] Başlık satırı, veri satırı, sütun başlığı stilleri -- [ ] Font, renk, kenarlık, hizalama -- [ ] TABLE komutuna stil seçimi entegre - ---- - -### 5 — Render İyileştirmeleri - -#### 5.1 Wipeout Gerçek Maskeleme -**Öncelik: Düşük** - -Şu an sadece wireframe sınır çiziliyor. - -- [ ] SortEntitiesTable draw order entegrasyonu ile beyaz/arka plan renkli dolgu -- [ ] Polygon şeklini doldur (hatch solid benzeri) - ---- - -#### 5.2 Tolerance GD&T Box Render -**Öncelik: Düşük** - -Şu an sadece ham metin gösteriliyor. - -- [ ] Gerçek feature control frame kutuları (bölmeli dikdörtgen) -- [ ] GD&T sembol seçici (Φ, ⊕, ○, □ vb.) - ---- - -#### 5.3 IMAGE Komutu / Raster Pipeline -**Öncelik: Düşük** - -RasterImage entity render yok (sadece sınır kutusu + X). - -- [ ] PNG/JPEG/BMP decode (image crate) -- [ ] GPU texture upload + quad render -- [ ] `IMAGE` komutu: dosya seçimi dialog -- [ ] `ImageDefinition` object yönetimi - ---- - -### 6 — 3D / ACIS - -#### 6.1 Solid3D / Region / Body (ACIS) -**Öncelik: Çok Düşük** | **Bloker: SAT/SAB parser gerektirir** - -acadrust `Solid3D`, `Region`, `Body` entity'lerini parse ediyor ama ACIS kernel yok. - -- [ ] SAT text parse → B-rep half-edge yapısı -- [ ] Basit tessellation (flat shading, display-only) -- [ ] ACIS primitives: Box, Cylinder, Cone, Sphere, Torus - ---- - -## Hızlı Referans — Kalan İşler Öncelik Sırası - -| # | Özellik | Öncelik | Zorluk | -|---|---------|---------|--------| -| 1 | Dimension grips | Yüksek | Orta | -| 2 | WCS↔UCS dönüşüm | Orta | Yüksek | -| 3 | DimStyle dialog | Orta | Orta | -| 4 | Plot style table CTB/STB | Orta | Orta | -| 5 | Hatch boundary grips | Orta | Orta | -| 6 | Solid entity (2D) | Düşük | Kolay | -| 7 | Underlay entity | Düşük | Kolay | -| 8 | UCS icon render | Düşük | Kolay | -| 9 | Wipeout maskeleme | Düşük | Orta | -| 10 | MLineStyle yöneticisi | Düşük | Orta | -| 11 | TableStyle yöneticisi | Düşük | Orta | -| 12 | TextStyle font browser | Düşük | Kolay | -| 13 | IMAGE / raster pipeline | Düşük | Yüksek | -| 14 | Per-viewport arka plan rengi | Düşük | Yüksek | -| 15 | PDF shade plot | Düşük | Yüksek | -| 16 | VPCLIP | Düşük | Yüksek + Bloker | -| 17 | Solid3D / ACIS | Çok Düşük | Çok Yüksek |