![]() Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Система координат и размещение камеры
Реализация трехмерных сцен в приложении WPF возможно, как в разметке XAML, так и в процедурном коде, используя предоставляемые платформой.Net возможности двумерной графики. В данной лабораторной работе рассмотрим возможности XAML. Графическое содержимое трехмерных сцен в приложении WPF инкапсулировано в элементе Viewport3D, который может участвовать в структуре двумерного элемента. Графическая система рассматривает объект Viewport3D как двумерный визуальный элемент в ряду других элементов приложения WPF. Объект Viewport3D функционирует как окно просмотра трехмерной сцены. Говоря точнее, это поверхность, на которую проецируется 3D сцена.
В традиционном приложении двухмерный элемент Viewport3D используется как любой другой контейнерный элемент, например «Grid» или «Canvas». Начало системы координат WPF для двухмерной графики расположено в левом верхнем угле области отрисовки (обычно экрана или окна). В этом случае положительные значения оси x откладываются вправо, а положительные значения оси y — сверху вниз. Однако в трехмерной системе начало координат располагается в центре отрисовываемой области, положительные значения оси x откладываются вправо, оси y — снизу вверх, а оси z — из центра к наблюдателю (рис. 11.1). WPF принята правостороння система координат, поэтому указание положительного значения угла поворота приведет к повороту против часовой стрелки вокруг оси.
Рис. 11.1. 2D и 3D Системы координат
Поскольку трехмерная сцена выглядит по-разному в зависимости от точки наблюдения, необходимо указать эту точку наблюдения. Задание точки наблюдения позволяет класс Camera. Для описания способа проецирования используются классы OrthographicCamera и PerspectiveCamera (для получения ортографической и перспективной проекции соответственно). Забиваем Сайты В ТОП КУВАЛДОЙ - Уникальные возможности от SeoHammer
Каждая ссылка анализируется по трем пакетам оценки: SEO, Трафик и SMM.
SeoHammer делает продвижение сайта прозрачным и простым занятием.
Ссылки, вечные ссылки, статьи, упоминания, пресс-релизы - используйте по максимуму потенциал SeoHammer для продвижения вашего сайта.
Что умеет делать SeoHammer
— Продвижение в один клик, интеллектуальный подбор запросов, покупка самых лучших ссылок с высокой степенью качества у лучших бирж ссылок. — Регулярная проверка качества ссылок по более чем 100 показателям и ежедневный пересчет показателей качества проекта. — Все известные форматы ссылок: арендные ссылки, вечные ссылки, публикации (упоминания, мнения, отзывы, статьи, пресс-релизы). — SeoHammer покажет, где рост или падение, а также запросы, на которые нужно обратить внимание. SeoHammer еще предоставляет технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Зарегистрироваться и Начать продвижение Свойства NearPlaneDistance и FarPlaneDistance камеры определяют расстояния до передней секущей плоскости и задней секущей плоскости области видимого объема. Рассмотрим пример описания получения перспективной проекции[5]: < ViewPort3D.Camera> < PerspectiveCamera Position=" -250, 250, 200" LookAtPoint=" 0, 0, 0" UpDirection=" 0, 1, 0" FieldOfView=" 40" NearPlaneDistance=" 1" FarPlaneDistance=" 500" /> Свойство Position задает позицию камеры в мировых координатах (центр проекции). Свойство LookAtPoint задает вектор, который определяет направление просмотра камеры в мировых координатах. Свойство UpDirection задает объект вектор, определяющий направление вверх для камеры. Свойство FieldOfView определяет угол между боковыми секущими плоскостями видимого объема.
|