GithubHelp home page GithubHelp logo

celestial-movement-simulator's Introduction

Celestial-Movement-Simulator

My "Introduction to Computer Science Ⅱ Lab"(計算機實習) Java final project. In this project, any of "University" means "Universe", it's my stupid spelling error. "Ball" means "Astronomical".

How to use?

Upper right corner's button can stop or play the animation.

On its left side, has a text show how many balls you created, more specifically, how many balls in Universe's ArrayList. and I limit it below 170, because if the ball number higher than this amount, then the program may slow down, and shut down.

Under the play/stop button, has a reset button, clicking it can make all sliders become an initial state. And making all balls disappear.

The lower right corner has a slider and four buttons, these buttons can move the user's view, and the slider can change how far can you move.

On its upper position, has two sliders, left side one can zoom in the whole window, on the other word, anything's distance shortens. its also can zoom out the whole window, on the other word, whole thing's distance lengthens. right side one can make only balls bigger or smaller.

Lower left corner has three radio button, click on any one can change to their unique mode. According to which button(or mode), you choose, will showing the corresponding toolbox.

a.Create Mode: This mode toolbox will show you three slider, Mass slider can change your ball's Mass, V: X slider can change the x component velocity of your ball, V: Y slider can change the y component velocity of your ball,

after changing your attributes, click on Mouse primary button, will create a ball having above attributes.

But if you click on Mouse secondary button, different from origin attributes, Your ball's mass would be multiplied thousand.

b.Time Stop Mode: This mode toolbox has one slider, this slider can change the Time Stop Radius. Click on Mouse primary button, any one's distance with cursor position less than Time Stop Radius, will stop any movement.

Click on Mouse secondary button, Time Stop Radius will change to five times.

c. G/R force mode This mode toolbox has one slider, this slider can change Force. Click on Mouse primary button, Cursor position will generate a gravitational force, its scalar is according your Force. Click on Mouse secondary button, Cursor position will generate a Repulsive force, its scalar is according your Force.

BlackHole

When a ball's Mass more than 10000000, it will become blackhole, it is unmovable, and its radius multiplied ten.

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.