GithubHelp home page GithubHelp logo

lucasvinicius314 / paint Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 491 KB

A simple drawing application, made using Flutter.

Home Page: https://paint.suresure.me/

License: MIT License

Kotlin 0.10% Swift 1.37% Objective-C 0.03% Dart 61.64% CMake 15.40% C++ 18.28% C 1.13% HTML 1.46% Dockerfile 0.59%
dart drawing-app flutter github-actions-enabled

paint's Introduction

paint

A simple drawing application, made using Flutter.

Repository, on GitHub.

Download Windows Releases

Deployed App

Application Demo

Settings

Toolbar

About

Features

Circle rasterization mode:

  • Bresenham.

Line rasterization modes:

  • Bresenham;
  • DDA.

Line clipping modes:

  • Cohen Sutherland;
  • Liang Barsky.

Vector node operations:

  • Flipping;
  • Rotation (Select vector, Scroll Wheel);
  • Scaling (Select vector, Shift + LMB drag);
  • Translation (Select vector, LMB drag).

Other features:

  • Clear canvas (Ctrl + Delete);
  • Select all nodes for vector selection tool (Ctrl + A);
  • Zooming (Ctrl + +, Ctrl + -, Ctrl + 0);
Toolbar

Raster tools:

  • Circle tool (R);
  • Free hand brush (B);
  • Line tool (L).

Vector tools:

  • Clipping tool (Ctrl + W);
  • Line tool (Ctrl + L);
  • Vector selection (Ctrl + Q);
  • Polygon tool (Ctrl + P).

Folder structure

  • lib/ : Dart source code.
  • lib/controllers/ : Efficient data manipulation and propagation.
  • lib/core/ : Core functionality - drawers, clippers.
  • lib/model/ : Internal data structure definitions.
  • lib/pages/ : App pages.
  • lib/painters/ : Data views that reflect controller data and updates and overlays.
  • lib/widgets/ : Reusable and modular ui components and core ui elements.

Installation

flutter pub get

Running

Web

flutter run web

Windows

flutter run windows

Notes

  • Includes a Caprover definition file to enable simple web hosting, using Nginx and Docker. Currently deployed here.

paint's People

Contributors

lucasvinicius314 avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.