Personal Home               Page de Travaux                          Find me?  

Rapport sur VRML
Objecives

      The objective of this VRML homepage is to create a virtual world which resembles the Cours postgrades in TECFA: Diplôme d'Etudes Supérieures STAF (Sciences et Technologies de l'Apprentissage et de la Formation).

Realisation and Difficulties Encountered
 
      To realise the objective, nine balls are used. The big one on top represents STAF and the eight smaller ones represent the eight courses which STAF contains for the first year. Eight cylinders are used to connect the courses to STAF. The different colours represent the inner connection of the courses. For example, STAF15 is related to STAF11, so they are in the same colour: blue; and STAF12 and STAF16 are in pink; STAF13 and STAF17 in green and STAF14 and STAF18 in red. The colour for each group is chosen in random. The purpose here is only to show the relationship of each group.
        To realise this idea, first of all the balls were created. The big one is comparetively easier to do. As for the eight small ones, first I calculated all the axises to position them. And then the eight cylinders are also to be positioned. There are the axises to calculate and the angles to adjust. Fortunately, Schneider told me an easier way, i.e. using PROTO to create a prototype. Once the prototype is created, the other seven balls as well as the cylinders can all refer to it with an only difference of position and color.
        Then I want to put the name of each staf above each respective ball with a link to each respective STAF pages. So I used the code of Text and Ancor in each of theml. It works, but it is still too redoundent. Once again Schneider told me to put them within the prototype and the code became much simpler. But the problem is that the texts all appear in a reversed way. There is of course a way in put them correctly, but I haven't found it yet.
        Aother problem that I encountered is that I want to put the balls in animation. Since there is a prototye in my program, it is not easyl to put in an extra code. I tried many ways, but the balls don't move at all. I tried one small ball turning around a big one. It works very well, but not with the eight ones. It is really time consuming.
        Finally I managed to rotate all the balls. But still there is a problem: the links do not match the words, e.g. if I link to staf12, I should write staf11. It is not logical but it works. At the moment I will keep it, although the code is a little aukward.
 
Reflections

        Working with VRML is not so easy. First of all we should have the basic knowledge of maths and geometry. It concerns with three axises (x, y, z). We should be able to calculate the position of each object. If we want to rotate an object, we should precise the axis(es) around which it turns and the angle it should turn. Before giving all these figures we should be able to imagine how the object will look like after the rotation. Second, if we want to create similar objects, it is better to create a prototype. It is much simpler to reuse the prototype afterwards although it may cause some problems if we want to add more codes. Lastly, to add an animation is not at all an easy job to do, though it is very much nice looking.
        As far as working tools are concerned, I think it is better to use Emacs. It is powerful in many way. For example, we know there are a big number of brackets within the VRML code and it is very possible to lose one or two of them. With Emacs, it is easy to locate the the other half of each bracket.
        In one word, VRML is a wonderful language in creating a 3D world. It is not so difficult to understand. But to use it freely needs a comprehensive knowledge. For those people as me who have little knowledge of maths, it will take much more time to learn.