March 2nd, 2014

This week I didn't make as much progress as I had hoped, and worked predominantly on bug fixes and cleaning up my app for the alpha review.  The main things I worked on were 1) styling, 2) bug fixing selection, and 3) giving the figure his second arm.

I added styling to my app in the form of adding a top-bar with a dropdown containing the 'help'/'how to use' text.  By moving the help text into a dropdown, I was able to make the canvas take up a larger portion of the screen.  This lets the model load at a larger size and makes it easier to manipulate.  In creating the top-bar, I had to move the canvas down about 40px.  When I did this, a previously undiscovered bug became obvious.  My selection was not accounting for the position of the canvas on the page, and therefore, when I moved it down 40px it was reading a mouse click as clicking 40px higher that it actually was.  This meant that joint selection stopped working because it was looking for objects above the ones I thought I was clicking.  To solve the problem, I just subtracted the top distance from the event click when calculating the mouse position.  Now selection is much more accurate and the mouse click actually selects what it's supposed to.

Additionally, I gave my model his second arm.  I ran into some problems earlier in the week getting the second arm placed properly, to the point where his elbow kept loading in the middle of his upper arm.  I eventually was able to solve the problem by scaling the objects by -1 in the x and y directions and tweaking the translation values.

Next week I plan to read up on and begin to implement joint limitations. Additionally, I plan to model and add in the rest of the body, including the pelvis, legs, hands, and feet.  If I have time, I may also make a quick "female" model so the user can toggle between the two genders.  At this point in time, the models may not be proportionally accurate, but being able to import and toggle between two models will set up the framework that will allow me to easily replace the rough models with the more accurate ones.