Класс Graphics3DControl¶
Отрисовывает интерактивные 3D-модели с помощью API Vulkan и позволяет пользователю перемещаться по сцене с помощью мыши и клавиатуры.
Пространство имён: Eremex.AvaloniaUI.Controls3D
Сборка: Eremex.Avalonia.Controls3D.dll
NuGet-пакет: Eremex.Avalonia.Controls3D
Объявление¶
Конструкторы¶
| имя | описание |
|---|---|
| Graphics3DControl() | Инициализирует новый экземпляр класса Graphics3DControl. |
Свойства¶
| имя | описание |
|---|---|
| AllowDefaultLight { get; set; } | Возвращает или задаёт, используется ли привязанный к камере источник света по умолчанию, если в сцене нет собственных источников света. |
| AvailableMultisamplingModes { get; } | Возвращает режимы мультисэмплинга, поддерживаемые графическим устройством, на котором работает контрол. |
| AxesCenter { get; set; } | Возвращает или задаёт точку, через которую проходят оси координат и сетка. |
| AxisLength { get; set; } | Возвращает или задаёт длину осей координат. Если значение не задано, оси соответствуют размеру сцены. |
| AxisThickness { get; set; } | Возвращает или задаёт ширину осей координат в пикселях. |
| Camera { get; set; } | Возвращает или задаёт камеру, определяющую вид сцены. Если камера не назначена, контрол отрисовывает сцену собственной перспективной камерой. |
| CompositionMode { get; set; } | Возвращает или задаёт способ объединения отрисованного изображения с компоновщиком Avalonia. |
| CoordinateSystem { get; set; } | Возвращает или задаёт направленность системы координат, в которой определена геометрия сцены. Значение определяет направление оси Z камеры и, следовательно, направление вращения, сдвига и масштабирования. |
| CullMode { get; set; } | Возвращает или задаёт, какие грани треугольников отбрасываются перед растеризацией. |
| Exposure { get; set; } | Возвращает или задаёт множитель экспозиции, применяемый к изображению при тональной компрессии. Большие значения делают изображение ярче. |
| Gamma { get; set; } | Возвращает или задаёт значение гаммы, применяемое к изображению при тональной компрессии. Большие значения делают изображение ярче. |
| Gizmo { get; set; } | Возвращает или задаёт индикатор ориентации, отображаемый поверх контрола. |
| GridSpacing { get; set; } | Возвращает или задаёт расстояние между линиями сетки. Если значение не задано, сетка делится на десять равных частей. |
| GridThickness { get; set; } | Возвращает или задаёт ширину линий сетки в пикселях. |
| HighlightColor { get; set; } | Возвращает или задаёт цвет рамки, отображаемой вокруг выделенного элемента. |
| HighlightedElement { get; set; } | Возвращает или задаёт модель или сетку под указателем мыши. Она отображается с контуром выделения. |
| HighlightMode { get; set; } | Возвращает или задаёт уровень сцены, на котором выделяются элементы при наведении на них указателя мыши. |
| KeyboardMoveStep { get; set; } | Возвращает или задаёт шаг сдвига сцены с клавиатуры. Шаг задаётся относительно ширины контрола и по умолчанию составляет одну десятую этой ширины. |
| Lights { get; } | Возвращает источники света, освещающие модели сцены. |
| LightsSource { get; set; } | Возвращает или задаёт коллекцию, используемую для заполнения источников света контрола. |
| LightTemplate { get; set; } | Возвращает или задаёт шаблон, используемый для создания источника света для каждого элемента LightsSource. |
| Logger { get; set; } | Возвращает или задаёт средство ведения журнала, получающее сообщения, создаваемые модулем отрисовки Vulkan. |
| LogLevel { get; set; } | Возвращает или задаёт минимальный уровень серьёзности сообщений, записываемых в журнал. |
| LookCameraAtSceneCommand { get; } | Возвращает команду, перемещающую камеру в предопределённый вид сцены. Её параметр — значение CameraPosition. |
| MultisamplingMode { get; set; } | Возвращает или задаёт количество выборок на пиксель, используемое для сглаживания методом мультисэмплинга. Если графическое устройство не поддерживает это значение, используется ближайший поддерживаемый режим. |
| NavigationBindings { get; set; } | Возвращает или задаёт сочетания клавиш для навигации по сцене. Если равно null, контрол использует сочетания клавиш по умолчанию. |
| RotateStep { get; set; } | Возвращает или задаёт чувствительность вращения мышью. Большие значения вращают сцену медленнее. |
| SelectedElement { get; set; } | Возвращает или задаёт выбранную модель или сетку. Она отображается с контуром выбора. |
| SelectionColor { get; set; } | Возвращает или задаёт цвет рамки, отображаемой вокруг выбранного элемента. |
| SelectionMode { get; set; } | Возвращает или задаёт уровень сцены, на котором выбираются элементы при щелчке по ним. |
| ShowAxes { get; set; } | Возвращает или задаёт, отображаются ли оси координат в сцене. |
| ShowGrid { get; set; } | Возвращает или задаёт, отображается ли сетка на координатных плоскостях сцены. |
| ShowHints { get; set; } | Возвращает или задаёт, отображается ли всплывающая подсказка с описанием выделенного элемента. |
| ShowInfoPanel { get; set; } | Возвращает или задаёт, отображается ли в углу контрола панель со статистикой отрисовки. |
| Skybox { get; set; } | Возвращает или задаёт карту окружения, которая освещает сцену и, если она видима, образует её фон. |
| ZoomRate { get; set; } | Возвращает или задаёт долю размера сцены, на которую перемещается камера при одном щелчке колёсика мыши. |
Методы¶
| имя | описание |
|---|---|
| Export() | Создаёт растровое изображение текущего отрисованного изображения. |
| HitTest(…) | Ищет в сцене модель и сетку, расположенные под заданной точкой. |
| LookCameraAtScene(…) | Перемещает камеру в предопределённый вид сцены и располагает её на расстоянии, при котором сцена умещается в контроле. (перегрузок: 2) |
Примечания¶
Пользователь вращает сцену левой кнопкой мыши, сдвигает её правой кнопкой и масштабирует колёсиком мыши. Сочетания клавиш задаются свойством NavigationBindings.
См. также¶
- класс Graphics3DControlBase
- пространство имён Eremex.AvaloniaUI.Controls3D
* Эта страница переведена с использованием технологий машинного перевода.
Used in articles
- Graphics 3D Control
- Graphics 3D Control › Camera
- Graphics 3D Control › Export
- Graphics 3D Control › Get Started with Graphics3DControl
- Graphics 3D Control › Graphics3DControl Overview
- Graphics 3D Control › Light
- Graphics 3D Control › Skybox
- Graphics 3D Control › System Requirements
- Graphics 3D Control › User Interactions with 3D Models
- Themes
- Themes › Register an Eremex Paint Theme
- What's Included › System Requirements