GithubHelp home page GithubHelp logo

revolution-surface's Introduction

Revolution surface

Description

This application allows you to draw a 2D shape and transform it into a 3D shape

How to use it

The application will start with a information screen of how to use it. There you can see the controls and learn about its functionalities. This are the controls:

  • Press 'i' to run the application or to see the information screen again
  • Press 'r' to reset the application values and start again a shape
  • Press the arrow keys to rotate the 3D figure
  • Click and drag the mouse to move the figure through the screen
  • Use the mouse wheel to zoom the figure

The code tries to create vertices according to the points drawed by the user creating the desire 3D shape. It's important to draw only in the right side of the panel touching the middle line twice, one indicating the first point of the shape and another indicating the last point of it.

Implentation decisions

Through all the development it was primary target to write easy to read code in order to add information avoiding the overuse of comments. Following the Jakob Nielsen principles I tried to create an application that is easy to use, makes the user feel the control at every moment, feels pretty, minimalist and enjoyable, helps the user in every moment they need it and prevent the errors in case they could happen telling the user how to fix them. Color decisions:

  • The red color has been kept to inform the user about possible errors
  • The blue color has been picked in order to make the user feel like everything they're doing is ok as it's present in mostly of the application

References

Processing documentation

Application demonstration

Example

Other information

  • Author: Samuel Arrocha Quevedo
  • Version: 27/02/2021 1.0

revolution-surface's People

Contributors

samuel-aq 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.