Скачиваний:
1
Добавлен:
18.01.2022
Размер:
152.3 Кб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ

КАФЕДРА 44 (Кафедра вычислительных систем и сетей)

ОЦЕНКА

ПРЕПОДАВАТЕЛЬ

Старший преподаватель

А.В. Аксенов

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ЛАБОРАТОРНАЯ РАБОТА №3

ТИРАЖИРОВАНИЕ, ВСТРАИВАНИЕ, ОСВЕЩЕНИЕ, НАВИГАЦИЯ

по дисциплине: Интерактивная компьютерная графика

РАБОТУ ВЫПОЛНИЛА

СТУДЕНТКА ГР. №

номер группы

подпись, дата

инициалы, фамилия

Санкт-Петербург 2021

1. Цель работы

Ознакомление с принципами и приобретение навыков группировки объектов сцены с целью применения единообразных преобразований к ним, создания гиперссылок, тиражирования объектов и групп объектов, встраивания содержимого внешних файлов, использования узлов различных видов источников освещения для построения статических X3D-сцен, а также задания свойств навигации в них.

2. Постановка задачи

Разработать сюжет 3D-сцены. Пользуясь геометрическими узлами, объединяя их в именованные группы и применяя к ним пространственные преобразования, реализовать сцену в виде HTML-страницы с внедренным X3D-кодом. Задать для объектов сцены свойства материала и текстур. Для некоторых объектов (или групп объектов) применить тиражирование с использование DEF/USE. Подготовить отдельный файл в формате X3D и встроить его в основную сцену. Привязать к некоторым объектам гиперссылки на другие сцены или произвольные ресурсы. Задать для сцены освещение различными типами источников. Задать параметры навигации пользователя по сцене.

3. Задание

Сценой является: планета и фигура ели. Планета создана с помощью узлов Sphere, ImageTexture, Transform. Ель создана с помощью Cone и Cylinder, Transform. Также узлом Material ему был добавлен основной цвет.

УзломViewPoint были заданы местоположение и ориентация точки наблюдателя. NavigationInfo  использовался для создания параметров перемещения пользователя по сцене. Также, для удобства ориентирования в коде был использован узел Group. Последним был добавлен  Anchor c параметром “target_self”.

4. Выполнения работы

Код 3D сцены:

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>Лабораторная работа 2</title>

<link rel="stylesheet" href="https://www.x3dom.org/download/1.8.1/x3dom.css">

<script src="https://www.x3dom.org/download/1.7/x3dom-full.js"></script>

</head>

<body>

<body style="color=:SkyBlue; background-color:#87CEEB">

<h1>Лабораторная работа №2</h1>

<p>Сложные геометрические объекты</p>

<p>Студентка гр. </p>

<p> </p>

<X3D id="x3d" xmlns="https://www.x3dom.org/x3dom">

<Scene>

<Viewpoint position='0 0 25' centerOfRotation='0 0 0 '></Viewpoint>

<NavigationInfo headlight='false' type='EXAMINE'></NavigationInfo>

<PointLight location="1 4 2.5" color="1 0.5 1" intensity="1.4" shadowIntensity="0.4" shadowMapSize="512"></PointLight>

<Anchor url="https://www.youtube.com/watch?v=yXQViqx6GMY" parameter="target='_self'">

<!-- Группа ёлка и планета -->

<Group DEF='TreeAndPlanet'>

<!-- ствол -->

<Transform translation='0 0.7 0'>

<Shape>

<Appearance>

<Material diffuseColor='tan'></Material>

</Appearance>

<Cylinder radius="0.3" height="1.5"></Cylinder>

</Shape>

</Transform>

<!-- ёлка -->

<Transform translation='0 2.5 0'>

<Shape>

<Appearance>

<Material diffuseColor='lightpink'></Material>

</Appearance>

<Cone height="2.5" bottomRadius="1.7" topRadius="0.7"></Cone>

</Shape>

</Transform>

<Transform translation='0 4 0'>

<Shape>

<Appearance>

<Material diffuseColor='lightpink'></Material>

</Appearance>

<Cone height="2.1" bottomRadius="1.7" topRadius="0.7"></Cone>

</Shape>

<Transform translation='0 1.5 0'>

<Shape>

<Appearance>

<Material diffuseColor='lightpink'></Material>

</Appearance>

<Cone height="2" bottomRadius="1.5"></Cone>

</Shape>

</Transform>

<Transform translation='0 -9 0'>

<Shape>

<Appearance>

<ImageTexture url="https://www.google.com/

https://st2.depositphotos.com/1169275/5799/v/600/depositphotos_57994069-stock-illustration-retro-wrapping-paper-for-christmas.jpg"></ImageTexture>

</Appearance>

<Sphere radius="5">

</Sphere>

</Transform>

</Group>

</Anchor>

<!-- Конец группы-->

</Scene>

</body>

</html>

Рисунок 1 – Общий план выполнения кода

Рисунок 2 – исходная точка просмотра

6. Вывод

В ходе лабораторной работы ознакомился с принципами и приобрел навыки группировки объектов сцены с целью применения единообразных преобразований к ним, создания гиперссылок, тиражирования объектов и групп объектов, встраивания содержимого внешних файлов, использования узлов различных видов источников освещения для построения статических X3D-сцен, а также задания свойств навигации в них.