Разработать ThreeJS приложение отображения GLTF модели на веб странице
Разработать страницу отображения GLTF модели с использованием ThreeJS с возможностями построения пользователем линий измерения расстояния между точек.
Критерии результата:- Загрузка и отображение GLTF Модели с использованием ThreeJS GLTFLoader.
- Отображении в div блоке с id "container"
- Поддержка отображения и управления множеством GLTF Моделей
- Использование OrthographicCamera с позиционированием после загрузки страницы таким образом, чтобы были видны все модели в одном окне (Как вариант - создание Bounding box).
- Управление положением камеры аналогично ThreeJS примеру -> loader / gltf / compressed https://threejs.org/examples/#webgl_loader_gltf_co...
- Освещение со всех сторон
- Фон белый
- Цвет модели серый
- Цвет ребер модели черный
- Отображение куба положения с линиями векторов декартовой системы координат в правом верхнем углу (как на макете https://jsjxym.axshare.com/). При клике на соответствующую плоскость куба производиться поворот камеры на соответствующую плоскость отображения модели.
- Создание пользователем линий измерения между двумя точками аналогично примеру https://sbcode.net/threejs/measurements/. При выборе начальной и конечной точки линии измерения, курсор должен привязываться к ближайшей крайней точке, середине ребра, центру окружности, линии ребра. Привязка курсора начинает действовать в радиусе 10px от курсора до точки. Привязка к определенным элементам отключается через блок "привязка курсора" в левом верхнем углу (как на макете https://jsjxym.axshare.com/). После создания линии измерения автоматически создаются 3 линии параллельно соответствующей оси координат для отображения абсолютной разности расстояния между начальной и конечной точкой линии измерения. При расстоянии между начальной и конечной точкой равной 0 (точки находятся на одной прямой по оси) соответствующая линия разности точек по оси координат не отображается. Пример отображения линии измерения в плоскости параллельной оси Z в файле "ExampleMeasuring.png" и после клика на макете https://jsjxym.axshare.com/.
- Удаление всех линий измерения сделанных пользователем при клике на кнопку "Удалить все линии". Кнопка появляется в вверху в центре окна при наличии как минимум одной линии измерения.
- Итоговый код JavaScript должен быть в отдельном файле и подключаться к html через тег script.
Экология в России и мире
Москва
Козлов: Россия и КНДР прорабатывают возможность запуска прямых рейсов
Путин в России и мире
Москва
СЕНСАЦИОННЫЙ ДОКЛАД ПРО ДЕЛО СКРИПАЛЕЙ, САФРОНОВА, ГОЛУНОВА.
Лукашенко в Беларуси и мире
123ru.net —
международная интерактивная информационная сеть (ежеминутные новости с ежедневным интелектуальным архивом). Только у нас — все главные новости дня без политической цензуры. "123 Новости" — абсолютно все точки зрения, трезвая аналитика, цивилизованные споры и обсуждения без взаимных обвинений и оскорблений. Помните, что не у всех точка зрения совпадает с Вашей. Уважайте мнение других, даже если Вы отстаиваете свой взгляд и свою позицию. Smi24.net — облегчённая версия старейшего обозревателя новостей 123ru.net.
Мы не навязываем Вам своё видение, мы даём Вам объективный срез событий дня без цензуры и без купюр. Новости, какие они есть — онлайн (с поминутным архивом по всем городам и регионам России, Украины, Белоруссии и Абхазии).
123ru.net — живые новости в прямом эфире!
В любую минуту Вы можете добавить свою новость мгновенно — здесь.
Зеленский в Украине и мире
Навальный в России и мире
Здоровье в России и мире
Частные объявления в Вашем городе, в Вашем регионе и в России
Бато Багдаев
В Бурчтии в театре кукол «Ульгэр» 14-16 июня пройдут «Волшебные выходные»! -
Театр и Цирк, Культура и Концерт, Россия и Дети
Москва
Россияне поделились секретами финансовой грамотности для детей
Друзья 123ru.net
Информационные партнёры 123ru.net
Спонсоры 123ru.net