はじめに
RedRing は、Rust + wgpu による CAD/CAM 研究用プラットフォームです。 現在は描画基盤と幾何計算層の構築段階にあり、型安全性と責務分離を重視した設計を採用しています。
背景と目的
従来の CAD カーネルは、複雑な依存関係と不明瞭な責務分担により、保守性と拡張性に課題がありました。 RedRing は、Rust の型システムを活用し、型安全性・責務分離・将来拡張性を重視したモダンなアーキテクチャを目指しています。
設計方針
- � 型安全性:コンパイル時エラー検出による堅牢な設計
- 🧩 責務分離:各モジュールが単一の責務を持つクリーンアーキテクチャ
- 🌍 国際化対応:英語中心の命名・ドキュメントで国際的な貢献を促進
- ⚡ パフォーマンス:wgpu による GPU 加速レンダリング
- � 拡張可能性:トレイトによる抽象化で将来機能の追加に対応
現在の構成
RedRing は以下のワークスペース構成になっています:
幾何計算層
geo_foundation:抽象型・トレイト定義・橋渡しgeo_core:基本計算機能・許容誤差・ロバスト幾何判定geo_primitives:Foundation 統合済み幾何プリミティブ(Core/Extensions 分離)geo_algorithms:高度な幾何アルゴリズム・CAM 処理(今後拡張予定)model:高次曲線・曲面(今後拡張予定)analysis:数値解析
レンダリング層
render:GPU 描画基盤(wgpu + WGSL)stage:レンダリングステージ管理viewmodel:ビュー操作・変換ロジックredring:メインアプリケーション
詳細は アーキテクチャ構成 および モジュール構成 を参照してください。
対象読者
- CAD/CAM プラットフォーム開発に関心のある Rust 開発者
- 幾何計算・GPU レンダリングの技術者
- オープンソース CAD プロジェクトへのコントリビューター
- 型安全な幾何ライブラリ設計に関心のある開発者
開発状況
✅ Phase 3完了(2025年12月21日): 衝突判定・交差判定機能の実装が完了しました。
✅ 形状可視化システム完成(2026年2月8日): 15形状のGPU描画用頂点データ変換が実装されました。
✅ レガシーAPI問題解決(2026年2月13日): 13形状のFoundation Pattern準拠化が完了し、循環依存を解消しました。
現在は描画基盤と幾何計算層の構築が完了し、Foundation 統合による責務分離が実装済みです。 主要な幾何プリミティブは全て Core/Extensions 分離パターンに移行済みで、保守性が大幅に向上しています。 NURBS実装も完了し、CAM機能の開発が進行中です。
最新の進捗状況は以下で確認できます:
このドキュメントは、RedRing の設計思想と技術アーキテクチャを体系的に整理し、国際的な技術発信の基盤となることを目的としています。