Inspiration

It's not easy learning to use a typesetting system such as TeX and its related skill of properly formatting documents through LaTeX. Many people often find themselves frustrated at how difficult it can be to type out an integral that is easily writeable by hand. Just imagine having to type out

\int_{-\infty}^{\infty} \cos^2(e^{j\omega_0 t}) dt

Every time you wanted to write an integral!

What it does

As an example, we present the user with four text boxes and an integral sign, which represent the upper and lower limits of integration, the function that will be integrated, and the variable of integration.

These will be text input from the keyboard. These may take the form of any of the following:

cos(3x + 5)
atan(sqrt(5 / b))
sqrt(b - 4ac) / (2*a)

And will be converted into Latex. The Latex will both be displayed and rendered, allowing the user to see whether what they have created is what they meant.

How we built it

We used XCode to create our C++ code, using the C++ standard libraries. Using tests we came up with, we were able to see whether or not the text input led to the expected LaTeX output.

Challenges I ran into

We were not able to integrate the C++ code we constructed with the Javascript browser interface. No one on our team had any experience with Javascript before this competition, so this was a very good learning opportunity for the three of us.

Accomplishments that I'm proud of

What I learned

What's next for TeXnical Assistance

-Integration between JS front end and C++ back end

-Speech to Text to LaTeX

-A more robust GUI, containing symbols used in other fields (such as logical or mathematical symbols such, \forall, \in, \exists, \infty, etc..)

-More modes (Integration, Differentiation, Linear Algebra)

-Being able to perform the integration numerically

Built With

Share this project:

Updates