Julian W Chen
Back to Portfolio

Graphing Calculator

Software Design Project

Personal ProjectOctober 2023 - December 2023
Graphing Calculator

Project Overview

Developed a graphing calculator application using JavaFX, focusing on functionality and usability. It is designed to let users both compute and visualize mathematical expressions within a clean and intuitive interface. The application combines traditional calculator capabilities with a dynamic graphing feature, offering a flexible tool for students, educators, and anyone looking to explore mathematical functions interactively.

Features

The core features of this calculator app are: - Standard Calculator Mode for basic arithmetic operations and more complex mathematical functions. - Graphing Calculator Mode that allows users to input mathematical expressions and visualize their corresponding graphs in real-time. - Integrated Music Player that allows users to enjoy their favourite tunes while working on math problems.

Standard Calculator Mode

The Standard Calculator Mode provides a comprehensive set of mathematical functions, including: - Basic arithmetics (addition, subtraction, multiplication, division) - Trigonometric functions - Parentheses and order of operations - Normal distribution and probability functions - Evaluation of typed expressions in real time This mode mirrors the functionality of handheld calculators is designed to be intuitive and user-friendly with a layout that allows for easy input and quick access to all functions.

Standard Calculator Mode

Graphing Calculator Mode

The Graphing Calculator Mode allows users to input mathematical expressions and visualize their corresponding graphs in real-time. This mode allows users to plot a wide range of function families. Users select the function type, input coefficients or parameters, and generate a graph with a single click. Supported functions include: - Linear - Absolute value - Quadratic - Parabolic - Square root - Cubic - Reciprocal - Sine, cosine, and tangent trigonometric functions - Graphing Capabilities - Real-time rendering of curves on a coordinate plane - Adjustable scaling and axis display - Highlighted points and smooth curve drawing - Ability to calculate zeros, roots, user input function values The Graphing Calculator Mode transforms the application into a lightweight visualization tool for exploring mathematical behaviors.

Graphing Calculator Mode

Integrated Music Player

The calculator also features an integrated music player, allowing users to enjoy their favourite tunes while working on math problems, demonstrating the use of JavaFX multimedia capabilities. Users can: - Play, pause, and skip tracks - Restart songs - View live progress with a seek bar - Switch between calculator tasks while music continues playing This modular program design and event-driven UI logic maximizes user enjoyment and productivity without compromising the core calculator functionality.

Integrated Music Player