FISHERR – HW4 – MADEUP
The first model I “Madeup” was a scene of blue butterflies. I used a parametric equation for the butterflies and populated the scene with many of them.
The second model I “Madeup” was a variation on the “heart” parametric equation. I designed the loop for generating the curve, and did some revolutions, translation, rotations, and scaling to create the heart-based shapes.
Thought Process:
For this assignment, I initially began testing the application by running old examples to get a feel for the way the code runs. I tested trying out a variety of options for generating shapes, but I eventually decided that I wanted a more systematic and logical model. I researched parametric equations and was able to understand how to implement them via loops and sine/cosine functions. The parametric equations made sense to use in Madeup and allowed for a straightforward design and implementation. Without such equations, the logic of designing a model by random tweaking is quite difficult.
Challenges:
There was a slight learning curve with Madeup since I had used it personally. It can still be a challenge to understand how the parameters are used in functions. One challenge that I came across was trying to visualize the model for non-parametric models. As logical as the program is, creativity is needed to understand how the models will be rendered. I overcame this challenge by playing with different functions and seeing what the result was. Lastly, there was some issues with rendering the program for code that uses a lot of processing power. I had to cut back on code in order to save computational resources, so I think there is a need to understand the stress limits of what the program is designed for.
Feature Requests:
- Be able to save/export the code to a text file or a “.mdup” file.
- Be able to render models using more than one color in a single program
- Possibly be able to inspect the model for coordinates. For example, being able to toggle displaying a 3D grid with units.
- Display more helpful messages if there is a syntax error, at least if it is not running at all.
- Display statistics for the shapes that are used like faces and vertices.
Bugs:
- Underscores are unable to be be parsed by the language. For example, I could not declare a variable with “x_1” or “y_2” since the program would not run.
- At one time I got this error:# A fatal error has been detected by the Java Runtime Environment:# SIGSEGV (0xb) at pc=0x00007facede165f0, pid=16185, tid=140380725032704# JRE version: 6.0_27-b27# Java VM: OpenJDK 64-Bit Server VM (20.0-b12 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea6 1.12.6
# Distribution: Ubuntu 12.04 LTS, package 6b27-1.12.6-1ubuntu0.12.04.4
# Problematic frame:
# V [libjvm.so+0x3ef5f0] DictionaryEntry::contains_protection_domain(oopDesc*) const+0x40
# An error report file with more information is saved as:
# /tmp/hs_err_pid16185.log
# If you would like to submit a bug report, please include
# instructions how to reproduce the bug and visit:
# https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
Aborted (core dumped)
3. Another error I got was:
terminate called after throwing an instance of ‘std::bad_alloc’
what(): std::bad_alloc
Aborted (core dumped)
which I don’t know if this was a problem with the code I used or something in the Madeup program with using too much memory.