МУЛТИМЕДИЯ и ОСНОВИ НА WEB ДИЗАЙНА

УПРАЖНЕНИЕ 6 - задача 6.1

Създаване на 3D модел на молив във VRML

ТЕОРИЯ : Задачата включва знания за йерархични възлови структури във VRML - групиране, трансформиране с преместване и скалиране. Описание на тези възли с примери можете да намерите в ЛЕКЦИЯ 11 и ЛЕКЦИЯ 13 от курса на дисциплината МОWД.

ИЗПЪЛНЕНИЕ на ЗАДАЧА 6.1: Създайте триизмерен модел на молив чрез VRML (фиг.6.1.1).

За създаването молива използвайте примитивите:

  • конус с размери: радиус 0.3 и височина 0.6, представящ връха на молива;
  • цилиндър с размери: радиус 0.3 и височина 3, представящ тялото на молива;
  • цилиндър с размери: радиус 0.3 и височина 0.4, представящ края на молива;
  • сфера с радиус 0.3, представяща гумата на молива.

1. Съзадайте първо тялото на молива като премахнете горната и долната повърхнина на цилиндъра. Задайте му цвят по желание.

2. След това направете върха на молива като премахнете повърхнината за основа на конуса. Приложете му текстурата pen_top.jpg. Отместете върха по ос Y на разстояние 1.8 единици. За целта използвайте Transform Node:

     Transform {
        translation 0 1.8 0
        children
          Shape {...}    # описава върха на молива с примитива конус
     }

3. Създайте края на молива като премахнете горната и долната повърхнина на цилиндъра. Приложете му текстурата pen_bottom.jpg. Отместете края на молива по ос Y на разстояние -1.7 единици:

     Transform {
        translation 0 -1.7 0
        children [
          Shape {...}    # описава края на молива с примитива цилиндър
        ]      }

4. Към children елемента на предходната трансформация създайте с примитива сфера гумата на молива. Поставете и цвят по желание. Отместете я на по ос Y на разстояние -0.2 единици спрямо края на молива. Приложете и деформация по ос Y 0.7. По този начин сферата се сплесква вертикално. За целта използвайте scale на Transform Node:

     Transform {
        translation 0 -0.2 0
        scale 1 0.7 1
        children
          Shape {...}    # описава гумата на молива с примитива сфера
     }

5. Групирайте всички фигури в сцената. Изпозвайте Group Node като зададете обграждаща повърхност на групата с bboxSize на 5 единици по трите оси:

     Group {
        bboxSize 5 5 5
        children [
        ]
     }


Фиг.6.1.1 3D модел на молив реализиран чрез VRML