






Weeks Project
status
|
|
08/02/2007
- Week Ten
Well it has been an interesting
summer. I met some interesting people and had some interesting
experiences. Speaking of people, John Keyser is such a fantastic mentor
with a KICK ASS[and by that I mean cool...] personality. He made my
entire summer so confortable and enjoyable. I will miss Jaerock, he is
one of the student in our lab, we had endless conversations
there...Moreover, we used to play racket ball everymorning at 7:30am at
the recreation center. !!!!Extreme Style!!!! . I met Gabriel Dos Reis,
and he blew my mind. He has an amazing career track...David, my
graduate mentor...Aaron..., I will miss you guys.....and thanks to John
Keyser again, my summer will end with a spicy touch:
SIGGRAPHHHHHHHHHHH!!!!!!!! Thus I completed my summer by:
- Documenting
all my work( Final Paper, Presentation, and Poster).
- Giving
a 30 minutes presentation to John Keyser and his graduate students.
(this is something I had to do as a part of the Graphics and Geometry
Group)
- Preparing
for the poster session
- Cleaning
and documenting my code
- Finalizing
this website
I want to take this opportunity
to thank the DMP people for the opportunity. I truly appreciate it and
intend to honor it.
07/29/2007
- Week Nine
This week was the most painful week of
the entire
summer. I had a lot of things to complete. But with a smile and an
understanding mentor, things are coming together quite nicely. Thus,
- I worked on my final presentation, and
my final
paper. The presentation has been completed but not the paper. There is
just one section missing that I will finish tomorrow.
- I implemented an extension to ESOLID to
help the
viewer highlight the patches of the geometric solid with different
colors. I wrote a random color generator to accomplish this. Some
examples are posted on the random
page. Now, it is easy to see where all the patches and how the solid is
partioned
07/22/2007
- Week Eight
So I finally talked to Pr Keyser about
changing the goals of our project and he agreed with my suggestion. One
thing to notice first is that the title of this site has changed to
reflect more what I have done and been doing. The progress bar has
changed and is more accurate now. The "About" page elaborate
on
the new focus of the research too. I have also updated the
the
table on the "random" page
too. Beside updating this website, I
- have
completed the Option User Interface(as a matter of fact, I am adding
more features to it since I want to smoothe the user experience). Using
this interface, I was able to produce complex models easily(not very,
but better than before). I will post an image of it on the "random"
page. When I was running another test, I ran into a bug in ESOLID. Pr
Keyser and I are going to look at it on Monday when he comes back since
the bug is buried deep inside ESOLID. If I understood that
code
well I could I have fixed it. As a matter of fact, I gave it a try but
I ended up crashing the entire system all the time.
- wrote
the abstract to my final paper. It is posted on the "paper" page
- implemented
a routine that can perform a list of boolean operations given a list of
solids. I have set a file format that define the order of operations
with the name of each solid(you can think of it as a file format that
defines a sum. The content would look like "1 + 4 + 4 - 6". In my case,
the numbers are the solids and the signs are the boolean
operators(Union, Difference...) ). In this case, I have used
xml
again. Here is an example.
A nice feature that
I added is the backup file. Let us say ESOLID crashes while performing
a list of operations(due to degeneracies), and you fix the problem. You
do not have to restart your experiment from scratch, you can actually
pick it up from where it crashed by just running the backup
file.
This feature really comes in handy when modeling complicated items.
07/15/2007
- Week Seven
One thing I really enjoyed this week is
sleep. For the first time since I have been here, I was able to sleep
well. I woke up fully rested, ready to grap the devil by the tail, take
on the entire universe...but mostly ready to crush the bugs in my code.
- I am
almost done with debugging(I fixed a lot of my
bugs and my module is more stable now) and I am doing major testings.
However, things are getting very complicated. I mean that when I get an
error, I do not know if it is my code that is faulty or if it is my
test case that is faulty since it is difficult to visualize the input.
But I am working on a solution.
- I am
also working(almost done) on a test driver
module to facilitate the assessment of more complex datasets. This
module is just an environment(option user interface) that
maintains(reads solid from a file, write solid to a file, import a list
of solids, remove a solid from the list, etc...) a list of solids in a
directory.
- Another
thing I have been working on during my free
time is a Graphical User Interface that will wrap around ESOLID,
smoothing the user experience.
- I
also want to mention that the goals of this
project changed. We are focusing more on getting the this input-output
module working instead of the visualization of an exact output. I shall
talk about it with Pr Keyser this week and once we clear redefined our
new goals, this website will dress differently.
- Attended
seminars and I went to Harry Potter,
Transformers(The Linux Action Show guys were right, Megatron is
definitely running Linux and the Decepticons are running OSX...and the
tiny unstable little decepticon is running Windows Vista...LOL)
07/9/2007
- Week Six
Wow, I cannot believe this is my
seventh
week here. I love College Station and I would not mind coming here for
graduate school...The people are quite welcoming, the weather is
queerly unstable, it is like winter inside every building and most
important, the professors and the mentors are amazingly chill-axed...This
makes a gargantuan difference especially if you are
immersed in this jungle attempting to dig your way to your utopia...I
still have not heard from the people at the Hollistic Garden...I think
it is time to give them a call again...Hmm...let me see...July 4th I
was here at work, I went to see Transformers[robots in disguise]...the
weekend was cool, I stayed in Saturday to read and play games...Sunday
I came to face my pointers and ESOLID issues...In the mean time,
- I
finally found the right XML
library for me. It has been written by a belgian(Yahh Belgium) guy.
Anyway, it is very fast, freaking small(2 small files) and most
important very very easy to use. I love it because it has been very
intuitive. I easily integrated it into my project files.
- Getting
the XML parser to work seamlessly with my project files was just the
beginning of my problems. For five days, I have been fixing memory and
pointers problem in my code and in E-SOLID code. The annoying thing has
been that E-SOLID is heavy(about 45 000 lines of code) and I maintain
it alone(since the last person who was working on it graduated. Pr
Keyser wrote E-SOLID almost 7 years ago, it is difficult for him to
help). Also, it takes forever to pinpoint errors in my code since I do
not have a nice debugger. For some reasons, Netbeans, does not do that
very well...and that is substancially irritating...[but I still love
that IDE...it is very cool and it has some very promising features]
Hopefully, things are progressing(slowly but nicely...at least my
mentor seems to like which is always a ++ )
- Went
to the GRE class
- update this
website
07/2/2007
- Week Five
Hmmm...this weekend was the
first one I did
not come to work...I stayed in to watch TV and play some old games.
That felt good after the kind of annoying week I had. So I
- finally finished implementing my
module(C++ class) that will generate the new E-SOLID
output format into a file. Due to the complexity of the geometry's
representation in E-SOLID, the output file becomes really big( the one
I am working with is 2.4MB). Luckily that did not mean anything to Dr
Keyser, he loved the format design. He told me to keep that format no
matter what. That was nice.
- started the implementation of the input
module. But
I ran into some serious and annoying issues. The library I am
using(tinyXML) cannot parse my output file. It tells me there is an
error where there is not. I think it is a bug in the library. I spent
days trying find out what was wrong I did have any answer. I
am
trying a new library right now. If I hope this one will be smart enough
to point me where error is. If not, I would redesign a new output
format and write my own parser.
- attended the GRE class
- worked on this website
06/24/2007
- Week Four
The week has been quite dry. Well I am also
supposed to
have fun(like doing something outside of computing) but I cannot seem
to find something that suits me at this moment. Our appartment is an
island
in an ocean of bars and clubs...naaaah!!!that is not my type...I rather
drink with friends at my place while playing videogames. hmmm I am
actually thinking of buying a controller at BestBuy in order to play
Super Mario Bros on ZSNES...The truth is I have not made enough efforts
to enjoy myself. Luckily I have met Kathy Flores, one of the most
wonderful people on Earth. She opened the door and show me the way to
Funtopia...hmmm...hmmm...I mean to some entertaining activities. The
one that I think I will enjoy the most is: The Holistic Garden. I do
not know yet what it is, but it looks like heaven based on the images I
have seen. I will try and go there next weekend and so that I can talk
about it next time...Thus what did I accomplish this week?
- Defined the format of my new output. The
goal here was to choose a format that will easily allow I/O of the
geometry.
I have chosen an XML format. The reason is that I do not need to do my
own parsing. There are already libraries out there that will complete
that task. The question now is: which one? I was looking for something
small and light so that I can easily modify it if the need arises. The
popular
library I found was "libxml++".
The problem I had with this one is that
I could not make it work. The GCC compiler could not see it. I spent an
entire day trying to figure it out....I gave up later that day...It was
horrible...Thus after hours of scavenging the entire world wide web, I
found tinyXML...It
was love at first sight...it was so tiny...I just
needed to include 6 files into my code to use it...It did not
have all the functionalities I wanted but it was easy to implement them.
- Set up a project file. I use the Netbeans IDE for
coding...It is not VS.NET(and it should not be ) but it does all the
things I need to do quite well. It makes it easy to compile the
"gi-normous" amount of code I have...It also compile only the updated
files(this is great so that I do not have to wait 5min everytime I want
to recompile). With Netbeans, it was easy to set up my code in a
separate directory(which makes debugging quite easy).
- Worked on a module that will create and
write my new
output to a file. I learned a valuable lesson when the entire software
crashed and I could not find the error. !!!Always
back_up your code
everytime you have a solid workable version!!!
I finally
found out what the error was
- Went the GRE class...
- update this website
06/16/2007
- Week Three
Pr
Keyser finally came back from his trip. 99% of the confusion cloud has
cleared up. There are still some residues left but I can see now.
Indeed, I can see the direction I shall take, the final destination and
all the check points on my path. Thus, it has been an interesting week,
I have:
- met with Pr Keyser and talked about the
project and
my role in it. We have clearly defined the goals, tasks and
deliverables. check here
for more details about this(it is at the bottom). I have also posted a
time table of deliverables here.
- We've also went over the papers I have
read.
- done some OpenGL tutorials. This time I
focused more on Bezier Curves and surfaces since they are relevant to
my project.
- played around with ESOLID in order to
understand its input format and its output
format. I was able to create new inputs and generate new outputs. The
main frustration I have had with inputs is that they are specified in a
text file. In other words one cannot see how and where the solids stand
in 3D space so that input errors could be easily spotted and fixed. One
of my goal is to write a simple program to visualize the input or even
a little GUI that wraps around ESOLID. For the output files, they were
too long to easily to get the hang of it. So a little meeting with Pr
Keyser helped me tremendously.
- gone to another GRE class and....
- attended a PhD dissertation defense. It
was cool and
cruel. hmmm...I do not know what to make of it yet...but when I do, I
will post it here. It was an interesting topic. It was about
Open
Source Software Maturity Model based on Linear Regression and Bayesian
Analysis. I was surprised that I understood almost everything
painlessly...
- updated this website. The progress bars
on the left
represents the status of the project. The first one(left) is the amount
of time I have spent here in College station(with respect to the 10
weeks I have to complete the project). The second one(right) depicts
how much of the project has been completed(with respect to the
deliverables). One can check the time
table to find out which tasks have been complete.
Man I need
to go to watch a solid movie...I miss the movies and the Fairly
OddParents...
06/09/2007
- Week Two
Time is flying by so quickly...I cannot
believe
this is the second week I have been here in College Station...it always
seems like I got here yesterday...May be it is because I have not
accomplished something big yet...I am still in the warm up phase...This
week I have:
- read three papers which can be found on
the 'papers' page.
They were not heavy readings but they were quite challenging. The
biggest problem I had was terminology. I usually understood the main
idea but the details were too confusing. I even tried looking for some
of them online but I did not find concrete examples and explanations.
Pr Keyser is coming back Monday and I hope next week, things would be
clearer.
- done some openGL coding in order to be
better at it.
I have been wrong, I am finding it quite difficult to get use to
it...But that will pass with more practice
- attended a GRE practice exam session and
I shall say it was not fun but informative. We just took a test for two
hours.
- looked at the ESOLID source code in
order to
understand it. That has been very difficult and confusing since I do
not know which part of the code to focus on. Hopefully everything will
be clear next week.
- worked on this website
So,
I am still floating in a cloud of confusions, and hopefully, the return
of Pr Keyser will blow those clouds away and make my horizon brighter.
06/03/2007
- Week One
I am finally in Texas, and the first
thing I have
learned at the airport was not to mess with Texas. It is not as
hot[yet] as people told me it would be. As the matter of fact, they
made it feel like I was coming close to hell...It is actually nice in
the morning and at night which are the two times of the day I usually
come out... Anyway, the Texas A&M
Campus is very nice and has a lot of scary and big building. Our
apartment is shiznet cool and the other students are even shiznet
cooler. So my mentor, John
Keyser,
is not here and will not be back til the week after next. Thus, I am
just having a good time, drinking beer, watching and chasing the girls
in our building....Naaah I wish that was the case[ or may be not...].
The following is an outline of what I have done this week:
- Set up my office, with my computer[Thank
you, David
for the huge a** monitor]. I have installed Ubuntu Linux 7.04(Feisty
which is quite unstable right now)
- Downloaded the sources code of (E-SOLID) the tool I would be
extending and ran sample programs
- Played around with OpenGL since it is
the language tool I would be using to implement my extension to ESOLID
- Started reading the paper ESOLID: A system for Exact
Boundary Evaluation
- Worked on this website
I think
that is about...Oh yeah....I also ate a lot of mexican food...
|
|