Week 517/11
You hock completed the snapping for multi user puzzle in the morning. After that, we fixed some of the rotate corners problem. Finally, the multi user puzzle is working well. We carried on to the 2x3 tile display project. We brought one Macbook Pro and the logitech webcam over to the tile display room. We look around the room deciding where to put the webcam so that we can capture the whole screen. We even tried to put the webcam at the back of the room but there are too many frames and racks which block out some capture area. Our only choice to place the camera is at the front. So we started to set up the camera, we manage to capture the whole screen but the camera cannot detect the laser because the screen material allows light to pass through. Therefore, the camera could no capture the screen properly.
18/11
As the DV cam was not here yet, so we continued the 2x3 display by coding the receiver for the tile display. So when the lgithdraw is running, whenever laser is detected the coordinates will be send to the client computer which is the tile display terminal. We read the lightdraw codes trying to understand how the X11 works. Attempt to code the sender but fail.
19/11
Had a little team meeting with bernard on the tile display. We discussed the difficulties on the integration of lightdraw with tile display. We also discussed on the possible solutions to the problems that we could try. Bernard set us some tasks that for this week. For today, we need to test whether lightdraw can work on 1 tile instead of capturing all 6 as suggested by Harold. We went to back of the room and capture the tile using the webcam. After which we went to the front and hang the webcam on the lights and started the testing. Below is the results and findings for the 2 different camera positions.
Results and Findings :
Putting the camera at the back is impossible because there is glare from the projector which will block out the center of the screen and it will confuse the program becuase it detect the brightness of the glare and the laser could not be detected.
Putting the camera at the front is our solution but we need to hang the camera in the celing as there are audience standing viewing the tile. Therefore, we cannot place the camera on the ground with tripod because it will block the audience's way. Eventhough we manage to detect laser after changing some camera settings but the laser can only be detected at the center but not the whole frame. We suspect the calibration because we used manual calibration instead of auto therefore might cause the result. We also suspect is the qulity of the camera because we used webcam instead of the DV cam therefore the setting could not be set to our requirements. However, we will test again using the DV cam on Monday because it will be here on Monday. Below is the result of the debugging when the camera is place at the front.

20/11
We started the day by doing writing the application to receive the coordinates from lightdraw. We failed in writing the application. We continued the day by doing some testing and checking the puzzle because Cheng Teng told us that they will be using the puzzle app for tommorrow event where the staffs will bring their kids to the office and we will show them our app. From the exprience of the last demo, we decided to do testing and checking ensuring that everything is working properly before using the app on the actual day.
We actually found bugs in our program, I will use diagram to explain the bugs found.

Above is a simple illustration of one of the bug found. If the user try to snap the pieces together but the overall piece after snap will over shot the canvas which is the red part. Result of the above bug is the program will CRASH.
At the end of the day , we manage to solve the bug that is found. Lucky we did the checking before the event, I cannot imagine if we were to discover the bug during the actual event itself. It will be embarrassing.
21/11
The very first thing I did in the morning was a final check and test before the kids starts to come in. While Hock is coding the sender for the tile display. I did the testing and checking and Ming Hong helped me and we discovered another bug which was quite unexpected because I never knew that it will happen. The bug that we discovered was if one of the user is rotating the pieces and the other trying to snap. The result is the snapping will not happen until the rotation is stop. Luckily we manage to fixed the bug before the event starts. After solving, I did not stop testing and checking because I was scared that there were more bugs. Finally, everything is settled down and the check was over. No more bugs were discovered.
We were told that the kids will be coming in to our lab around 2.30. Around 2.30 the kids came in and Cheng Teng showed the kids by using a lightdraw in Google Earth. All of them were amazed by it and Cheng Teng gave them some explanation on how Lightdraw works but I don't think the kids are interested. They are more interested in trying it instead of listening. After the short explantion, the kids were given chances to try and the whole room went in to total chaos because everyone wan to play. So the drawing board was switch on because it allow more kids to play with it. We did not give them laser because we do not want them started to shine each other's eyes with it. We gave them torches and they started to draw with it. I can see that they are enjoying themselves with the drawing. Even some of the adults were having fun with the board. The second batch came in 5 mins later after the first batch has left. They played with our puzzle app and the room went in to chaos also because everyone was trying to control each other pieces. They also tried the drawing board too. After that, we went to the pantry for light snacks and for the first time the pantry is filled with kids.
After the event, we continued with our work which Hock has completed the sender and we were able to run the app on local computer. We tried the app on 2 computers but we were unable to let the app work properly. We suspected that it is the firewall is prventing the receiving of the packets. We will fixed the problem on Monday.
Pictures :





Weekly Reflection :
Things I have learned for this week is testing and checking for an application is very important because you will never whether your program is bug or have errors. Testing and checking can never be done by one person because you might not know as others might find a bug which you did not expected. I also learned that we must always communicate with team members in a project to establish common understanding on the objectives and tasks for a project.