Skip to content

Saransh1650/3D_draw_app_swift

Repository files navigation

ScreenRecording_08-03-2025.21-22-18_1.MP4

3D Drawing App

A SwiftUI-based drawing application for iOS and macOS, featuring both 2D and 3D drawing capabilities. This README focuses on the overall project and its 3D drawing features, excluding the 2D drawing functionality.

Features

  • 3D Drawing (AR):

    • Draw in augmented reality using ARKit.
    • Save and manage 3D strokes and models.
    • Customizable brush types and colors for AR drawing.
    • Undo/redo support for AR strokes.
    • Dedicated toolbar for AR drawing controls.
  • Intro Screen:

    • Welcome and onboarding experience for new users.
  • Core Utilities:

    • Image saving utility for exporting drawings.
    • Undo manager for drawing actions.
    • Color extensions for enhanced color handling.

Project Structure

├── App/
│   ├── AppRoutes.swift
│   └── DrawingApp.swift
├── Core/
│   ├── Extensions/
│   │   └── ColorExtensions.swift
│   └── Utils/
│       ├── ImageSaver.swift
│       └── UndoManager.swift
├── Features/
│   ├── Drawing3D/
│   │   ├── ARDrawingViewController.swift
│   │   ├── Model/
│   │   │   ├── ARDraingModel.swift
│   │   │   └── StorkeData.swift
│   │   ├── View/
│   │   │   ├── ARDrawingScreen.swift
│   │   │   ├── ARDrawingView.swift
│   │   │   └── ARToolBarView.swift
│   │   └── ViewModel/
│   │       ├── ARDrawingViewModel.swift
│   │       └── DrawingManager.swift
│   └── Into Screen/
│       └── View/
│           └── IntroPageView.swift
├── Resources/
│   └── Assets.xcassets/
├── drawing_appApp.swift
├── drawing_app.entitlements
└── drawing_app.xcodeproj/

Getting Started

  1. Clone the repository:
    git clone https://github.com/Saransh1650/3D_draw_app_swift
  2. Open the project in Xcode:
    • Double-click drawing_app.xcodeproj.
  3. Build and run:
    • Select your target device (iOS or macOS).
    • Click the Run button in Xcode.

3D Drawing Feature Overview

  • ARDrawingViewController.swift: Handles AR session and rendering.
  • ARDraingModel.swift & StorkeData.swift: Data models for AR strokes and drawing data.
  • ARDrawingScreen.swift, ARDrawingView.swift, ARToolBarView.swift: UI components for AR drawing.
  • ARDrawingViewModel.swift & DrawingManager.swift: Business logic and state management for AR drawing.

Utilities

  • ImageSaver.swift: Save drawings to device storage.
  • UndoManager.swift: Undo/redo functionality for drawing actions.
  • ColorExtensions.swift: Helper extensions for color manipulation.

Resources

  • Assets.xcassets: Contains app icons and color assets.

About

A SwiftUI-based drawing application for iOS, featuring 3D drawing capabilities.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages