The iOS app project is now public on github.
Calvin may be working on it from time to time.
https://github.com/cragworks/DressMe
Calvin may be working on it from time to time.
https://github.com/cragworks/DressMe
Team OAAO |
The iOS app project is now public on github. Calvin may be working on it from time to time. https://github.com/cragworks/DressMe Add Comment We managed to get retrieving weather for online to work. Now the weather changes appropriately and the image and sound that relates is shown and played. Tomorrow, we show off our app at the Beckman center starting 5pm. Come there and check out our app! Filming the project pitch began and finished today. -yesterday: Sophia wrote script -2pm: Holly and Sophia go to film kid using the app -6pm: return to film our talking heads and edit --11pm: post video We are currently trying to get the weather data to work, but are having difficulties. We also have to make the app icon, and launch image. sigh. -Calvin Tham New weather pictures for the todo functionality of getting the weather to choose whether a jacket is worn or not. Timer now is 3 minutes for putting on pants and shirts. (Everyone takes longer to put those on than underwear and socks right?) todo: app icon, app name, app launch image, weather getting, weather selection in app, press green button when done sound, badges saving, fix badges scrolling to nothingness issue, video due today, button releasing bugs, add skirt???, 348 more badge images. A lot to do tomorrow! -Calvin Tham 12pm is when we met to work on the app. If you did not already know, we are making an iPhone app. Where at UCI can I program iPhone apps? Don't I need a mac? Well at the Clevor Arts Center at Mesa Court, you can. The clothes images have two parts to them. One is a beveled 3D image while the other is a normal flat image. Combined together, they perform like a button. The time timer is recolored. The white consumes the red now. The video is supposed to be due Wednesday. And I have yet to be started. And this app still has weather functionality, gender addition, and polish needed! Not good. -Calvin Tham I implemented the appropriate recordings to each part of the app. I also fixed the timer to fit our previous UI UML diagram specification of starting at 0 degrees and going anti clockwise. Now, when you run out of time, a voice will give you more time. You also get motivating music. Fixing the Slowdown. If you look at the previous build, you can see that when the timer appears, a lot of nodes are being added (shown at the bottom of the screen). This is because a red line is being drawn over the white circle every 6th of a second to make it look like a timer. Each line is a node. The problem was that as more nodes get added, the frames per second slows down and the app starts lagging. To solve this, I remove all the red line nodes at each 90 degree filling. Then I show one of 3 timer .png pictures which are added at the appropriate times, and then the line nodes are drawn starting at that degree. This results in no app slowdown anymore. Blank circle picture. Start drawing lines at 0 degrees until it reaches 90 degrees. Delete previous lines. Show this 90 degrees picture. Line starts drawing at 91 degrees - 180 degrees. Delete previous lines. Show this 180 degrees picture. Line starts drawing at 181 degrees - 270 degrees. Delete previous lines. Show this 270 degrees. Line starts drawing at 271 degrees. And once you reach 360 degrees. You get a blank circle picture and the red line drawing process repeats. Sophia recorded the many instructions that play using audacity ("AUH-DAH-SIT-EA"). There are four categories:weather, clothes, timer, and badges. EX) weather "It's going to be snowy today." clothes: "Let's put on a shirt." timer: "Put on a clean shirt before time runs out." "It looks like you need more time. Here's an extra 60 seconds." badges:"Congratulations. You earned a badge." The sounds are imported into the project as "aiff" files. The sound class that plays the recording is written. Today, Holly and Sophia showed me the new UI UML Diagram at the CS 3rd floor lab. Basically, the difference was the addition of a time timer. What is a "time timer" you may wonder? I doubt you are wondering that, but if you are, a "time timer" is a timer that uncircles down, making it really obvious that it is counting down. It is good for keeping you on task. For this app, it is good at keeping you putting your individual clothes on within 60 seconds. Sophia made the above storyboard UI in Xcode. So there are three main parts to the app: clothes screen, time timer screen, and badges screen. You are shown a clothes you need to wear. Then on the next screen, a time timer ticks down. You have 60 seconds to dress that clothing. This repeats until you have finished putting on your outfit. Then you are given a badge for your good start to a great morning. So me and Javier in the afternoon met up to work on the app, continuing off of Sophia's storyboard and our work from yesterday (OUTFITS). But after a few hours of tinkering, it got very frustrating dealing with view controllers. What is a view controller? A view controller is basically a different screen. It is used to organize the app. For us we have clothes view controller, timer view controller, and badges view controller. But it was really annoying communicating between the clothes and view controller since they needed to talk to each other to exchange information such as going to the next clothing item. Screw it. I decided to give up this annoying view controller way of doing things and decided to make this the sprite kit game way. In sprite kit, you put stuff into a SKScene, which runs at 60fps. The images in the scenes are called SKSpriteNodes and you can do animations and cool game related stuff. We are officially using SpriteKit to make this app, which you can see our progress in the video at the top of the page. Javier worked on the clothing images, which are not up yet, but they look really cool! The most time consuming part was the time timer, and it also is my most favorite part. I had to rotate a line by 1 angle every 10 frames. Here is how you rotate a point so I can remember: endX = centerX + radius * cos( angle ) endY = centerY + radius * sin( angle ) -Calvin Tham After our interview with Professor Alfaro we decided that our previous ideas might have not been the best. We quickly came up with our new idea. We finalized our app that will help autistic children around 4-6 years old get ready in the morning. Based on the weather, the app will pick appropriate outfit for them to wear and give them a time constraint decided by their parents. We made a quick mock up image that we used to base our prototype off of. First we started by recreating the UI in storyboard. We then had to think of the best way to organize the outfits that the app would provide. We accomplished this by creating a UML diagram. After 3 hours we were able to create a simple prototype of changing the clothes that the user would have to put on after clicking the "Next" button. - Calvin Tham, Javier Vega |