This post is about code that I have altered to improve WordPress and other applications.&nbps;&nbpsThis section displays any Flex/Flash/Air examples that I have created.
One of the screens I created for work is a “dashboard” type that allows the view to quickly see the current status of service call volume. There are multiple charts on the display, but one of them is a column chart that shows the current day’s numbers vs. the prior week of the same day. By having this information, the viewer can see if the volume of calls is in a “normal” range, because the it fluctuates throughout the day and the week, but is similar based on the day of the week. Friday’s call volume is usually lower than Wednesday volume. When I initially created the display in Flex 3, I had to worry about putting both column charts in the same x and y spot in order for the overlay to work. With the Group component, it makes it much easier, because it automatically puts the items stacked upon each other.
The example creates some random data of the number of red, green and yellow apples picked in an hour. The random data is created for all of the previous day’s hours and then a 15 second timer creates the current day’s hours one by one. In the real chart, the data is update every 15 minutes. The bottom chart is added first, which is the “Yesterday” values and the top chart is added next, which is “Today” values. The “Yesterday” values are slightly hidden by using a alpha setting in the “Today” chart.
// Top Chart for "Today" values
<mx:ColumnChart id="countsToday" width="100%" height="100%" showDataTips="true" dataProvider="{acChartToday}" alpha=".65">
To help with the color offset, I picked colors for the “Yesterday” values that seem to be faded version of the “Today” colors. You could use any colors for the columns, but having less bright values in the back help with contrast. It also helps when the values for “Today” are greater than for “Yesterday”. The only downfall for doing things this way is that the datatips for the bottom chart cannot be seen. But, I’m sure the datatip function could be modified to get both values.
Since I had a day off, I decided to work on converting my old Flex Examples to the new Flex 4. As stated in a previous post, the new Flex 4 breaks Degrafa and Degrafa seems to be defunct now. Most of the drawing functions are handled with spark and sprite functions, but little things like arcs and line repeaters are not. So where before it was easy enough to create a repeating line in Degrafa, now I have to do a loop to create the lines needed. Well, in this case, instead of drawing lines, I’m drawing rectangles. While it might seem simple at first just to draw a bunch of rectangles together to create a grid, there is a little trickiness to it. You can have to account for the size of the total grid, based on the number of columns, rows and the grid box size. And you also have to use both the column and row count value to draw the correct number of rows and columns and at the right size. It is all just a matter of thinking about it for a few moments and then having an “ah ha!” moment. Another little quirk with the components is that when you add a visual element, it puts it in the center of the group component. On the Egg Timer, I just left it there for now because it worked for what I needed. I might change it later. But for the LineGrid, it made for it not to line up correctly. So, before I start drawing the rectangles, I had to determine the actual 0,0 location first. It also took a couple tries to make sure I was using the right zero.
// Find the actual 0,0 start
var actualZeroX:int = -1 * ((columnCount * boxSize) * .5);
var actualZeroY:int = -1 * ((rowCount * boxSize) * .5);
One good thing about the new components, is that when you use the declarations, it is the same as creating a set function, which means less code. I simply added declarations for the column and row counts, then put those values where I need them. When I use the LineGrid component I add the values I need just like any other attribute.
A few weeks ago, during our monthly meeting, a member of The RTP “Let’s Make a Movie” Meetup group mentioned the SPARKcon Festival coming up in Raleigh. SPARKcon has been going on for 6 years and last year they added a 48 Hour Film Challenge to their filmSPARK. At first I was a little hesitant about doing the challenge for a few reasons. One, the 48 Hour Film Project, cost over $100 to enter, so I didn’t know how much this would cost. Second, it was very short notice, so I didn’t now how many people I could get to do the film. And finally, I had to okay it with the wife, since she enjoys spending time with her husband on the weekends. Well, I found out that the challenge was free, the wife was okay with me filming for the weekend and so I set out to get recruits from the group. I was surprised to get more than a handful of people signed up, even if I had some communication issues. Also, my main camera guy said he was available for the shooting day, which would make life easier for me.
On Friday Sept. 9th, I drove down to Mission Valley Cinemas to pick up my team packet. The pickup time was between 8:00 and 9:00 pm. This is a late starting time, but then it gives you more time on Sunday for editing. I was the first person there and had a nice little conversation with the challenge hosts before picking packet number 7 for my team. I headed on home to beat the crowd that was supposed to meet at my house for brainstorming and writing.
The were some more communication issues, but eventually everyone showed up and we started kicking around ideas. The packet contained or film elements, which were an oven mitt as a prop and the line “God, I love being a turtle!” Apparently this was from a Teenage Mutant Ninja Turtles movie, because each team had a different movie line, but the same prop. This was different from the 48 Hour Film Project, where each team had the same prop, line of dialog and character, but drew different genres. The challenge only had a few genres and we selected Action/Suspense/Thriller for ours. The time limit for the challenge was also shorter, only 5 minutes. When the brainstorming started, we had several ideas, but it seemed a little impossible to tell the entire story in the short amount of time. Most of our ideas when down the path of The Tortoise and The Hare, due to the nature of the line. We even pondered doing a car chase. In the end, we decided to go with a simple story of a person suffering from agoraphobia attempting to make her way outside. After coming up with the basics of the story, the writer and I hashed out what seemed to be a barely over 2 minute long movie. I wasn’t very pleased with the length.
On Saturday morning, I woke up at my normal time and started prepping my house for the shoot. I had to clean out my kitchen of stuff and set the stage. The benefit of this was, after the movie was done, my kitchen was picked up and clean! After everyone showed up, we gave the actors their lines to go over and I walked out the first shot with the camera guy. After a few walk through shots, we put the actress in her spot and started filming. The great thing is, we only did a couple of test shots and then we were off to the races with the rest of the shots. A couple of our actors had to wait around until 2 pm to say their lines, but that gave them more time to rehearse. In fact, the other female actor was rehearsing while looking through the sliding glass door at the back of my house. At first we thought she was trying to say something to us, but then realized she was just going over her lines. After a while, it seemed a little creepy.
Since the camera guy has a bunch of equipment, we setup a spot light and put a mic on the main character, just in case the volume from the camera wasn’t good enough. In the end, we used only the sound from the camera. We completed filming before 4 pm and tried to wait for the sun to get in a better position for a particular through the window shot. Unfortunately, it didn’t work out and the shot wasn’t used. After downloading the files, the editor started to work on the shots. I download the film as well, but not the audio. Thinking that I would wait and get it from the editor, I didn’t do any editing, instead I cleaned up the house and called the wife to let her know we were done for the evening.
On Sunday, the editor and writer came over and we started cutting everything together. After getting the rough cut down to a almost final cut, I got a hold of my F/X guy and we headed over to his place to add special effects. Well, he had computer issues the week before and the editor’s computer kept putting out glitchy versions. After attempts to do this and attempts to do that, we loaded the entire footage on to the F/X guys computer and he put in the special effects. We didn’t have time to adjust the color, but I thought it looked fine. With about 20 minutes to spare, I headed back to Mission Valley to drop off the final product.
The most frustrating part of this was the fact that we finished filming early on Saturday and Sunday was spent waiting for files to load. Lesson to be learned, downsize the footage before editing. The play back of the video submitted seemed to skip and jitter. However, when the F/X guy played it again later and uploaded it to YouTube, everything seemed fine. So, I just put the thought aside that there was something wrong with the film and waited until the screening.
On Sunday Sept. 17 at Kings in downtown Raleigh, they showed the 14 entries of which 12 qualified for. Some of the films seemed much longer than 5 minutes, some had stories that didn’t seem to go anywhere and then there were some good films. At most, I didn’t think we would win, but possibly be in the top of the group. And that’s what happened. A mockumentary about reality tv’s won the overall award, deserving so. Our film, plus two others won honorable mentions. I’m very proud of this film and I think it is my best film to date. After a year, I think I’m getting a better at this movie stuff.