IT201 Project 1
This is a painting tool that allows users to create spheres, cubes, and cylinders with left click and destroy them with right click. It also provides users the ability to change the color of the objects through either sliders or input fields. Users can also change the size of the objects with an input field. Users can also enable a toggle to apply gravity to the object. Users can also destroy an exact number of objects using an input field and button.
Feature 1: Display Mouse position
Input: Mouse location
Output: Text is displayed in the upper left corner showing the realtime X and Y position of the mouse.
Feature 2: Paint Objects
Input: Mouse left click
Output: An object is drawn where the mouse is left clicked.
Feature 3: Change Primitive
Input: Buttons
Output: Use the cube, sphere, and cylinder buttons to change the shape of the object. Uses buttons rather than the dropdown demonstrated in class. Pressing one button disables the previously selected button.
Feature 4: Change Color
Input: Sliders (Red, Green, and Blue) or input field
Output: Move RGB sliders or change RGB hex input field to change colors. The hex input field and sliders change in conjugation with each other. This is different from the feature demonstrated in class as the objects do not get a randomized color and the input field allows a user to get the exact hex a user may be looking for in a painting application.
Feature 5: Delete objects (extra)
Input: Mouse right click
Output: An object is deleted where the mouse is right clicked.
Feature 6: Randomly delete number of objects (extra)
Input: Input field and button
Output: User inputs number and clicks button to randomly delete a desired number of objects.
Feature 7: Count number of objects on screen (extra)
Input: Created objects
Output: Text that displays the amount of objects on screen.
Feature 8: Change Size (extra)
Input: Input field
Output: Type number from 1-10 to change size of painted objects. This is different from the feature demonstrated in class as it uses an input field rather than a slider.
Feature 9: Make painted objects fall (extra)
Input: Toggle
Output: Toggle on to allow painted objects to fall down. This feature is not in the class demonstration. Objects with gravity can use objects without gravity as a platform.