AngularJS/D3.js Векторная графика в одностраничных Web-приложениях

  • На форуме работает ручное одобрение пользователей. Это значит, что, если Ваша причина регистрации не соответствует тематике форума, а также Вы используете временную почту, Ваша учётная запись будет отклонена без возможности повторной регистрации. В дальнейшем - пожизненная блокировка обоих аккаунтов за создание мультиаккаунта.
  • Мы обновили Tor зеркало до v3!
    Для входа используйте следующий url: darkv3nw2...bzad.onion/
  • Мы вновь вернули telegram чат форуму, вступайте, общайтесь, задавайте любые вопросы как администрации, так и пользователям!
    Ссылка: https://t.me/chat_dark_time

alextox.p

VIP

alextox.p

VIP
5 Мар 2017
239
126
Курс предназначен для продвинутых JavaScript-программистов, желающих получить новые знания в области работы с векторной графикой SVG в браузерах, используя, де факто, современный стандарт (библиотеку) D3.js. Написание более-менее серьезного и функционального приложения с использованием D3 – сложная задача, решая которую, легко запутаться. Данный курс научит Вас работать с D3 в симбиозе с мощнейшим фреймворком построения одностраничных Web-приложений AngularJS, чтобы не утерять контроль над Вашим кодом.
На протяжении всего курса под руководством преподавателя шаг за шагом с подробными объяснениями будет разрабатываться приложение – интерактивный векторный редактор-конструктор.

Чему Вы научитесь:
  • Вы научитесь работать с векторной графикой в браузере в интерактивном режиме с помощью наиболее функционального средства в этой области - библиотеки D3.js
  • Вы получите практические навыки создания и тестирования модульных масштабируемых одностраничных приложений на примере полнофункционального векторного редактора
  • Вы узнаете, как пользоваться дополнительными инструментами и средствами, облегчающими и ускоряющими процесс разработки приложения
Урок 1. Основы D3.js и векторной графики SVG
Библиотека D3. Концепция работы с данными в стиле D3. Формирование [связи] данных (Data Joins). Выборки данных: Enter, Update, Exit. Свойства выборки. Методы для работы с выборками. Краткие сведения о векторной графике SVG. Координатная система SVG. Элементы <svg> и <g>. Графические примитивы (объекты) SVG: <rect>, <circle>, <line>, <text>, <path>. Афинные преобразования объектов SVG. Фильтры SVG.
Урок 2. Подготовка рабочей среды и введение в AngularJS
Библиотеки Bower и Browserify. Автоматизированная сборка проекта с помощью Grunt. Настройка локального сервера для обслуживания запросов приложения. Введение в AngularJS. Модель, представление и контроллёр в AngularJS. Управление зависимостями, для чего это необходимо. Модули, директивы и сервисы. Написание тестов для приложений AngularJS.
Урок 3. Создание каркаса приложения
Описание модульной архитектуры. Общие подходы к созданию приложения. Требования к функциональности, определение поддержки необходимых технологий в браузере. Дизайн деталей макета для отображения на редакторе.
Урок 4. Разработка рабочего поля векторного редактора
Поведения D3.js: Drag&Zoom. Интерполяция в D3. Переходы (Transitions) в D3: что это такое, как с ними работать. Реализация сетки редактора. Сервис $q. Создание функциональности центрирования, масштабирования. Написание модульных тестов.
Урок 5. Создание статичных перетаскиваемых компонентов (деталей макета)
Разработка директив компонентов. Маски SVG, правила заполнения сложных фигур. Разработка поведений объектов на поле редактора. Создание сервисов отрисовки. Тестирование директив и сервисов.
Урок 6. Создание вращающихся компонентов и креплений
Объект d3.timer, рисование зубчатой передачи. Управление скоростью вращения. Отрисовка гексагональных креплений-болтов. Модель отрисовки SVG. Управление порядком отрисовки и наложения объектов SVG. Реализация логики работы креплений.
Урок 7. Реализация палитры компонентов (деталей макета)
Реализация перетаскивания Drag&Drop на элемент SVG. Определение координат при перетаскивании: клиентские и экранные координаты в SVG, матрица текущих преобразований (Current Transformation Matrix) SVG, перевод из одной системы координат в другую. Компиляция директив AngularJS.
Урок 8. Сохранение, загрузка и проверка состояния
Написание сервиса загрузки и сохранения состояния (макета) редактора. Проверка топологии, сравнение с заданным макетом. Написание E2E-тестов. Подведение итогов.
 
  • Лайк
Reactions: Cicle

О нас

  • Наше сообщество существует уже много лет и гордится тем, что предлагает непредвзятое, критическое обсуждение различных тем среди людей разных слоев общества. Мы работаем каждый день, чтобы убедиться, что наше сообщество является одним из лучших.

    Dark-Time 2015 - 2022

    При поддержке: XenForo.Info

Быстрая навигация

Меню пользователя