Camera Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет часть 3-сцены, отображаемой элементом Viewport3DVisual или Viewport3D.
public ref class Camera abstract : System::Windows::Media::Animation::Animatable, IFormattable
public abstract class Camera : System.Windows.Media.Animation.Animatable, IFormattable
type Camera = class
inherit Animatable
interface IFormattable
interface DUCE.IResource
type Camera = class
inherit Animatable
interface IFormattable
Public MustInherit Class Camera
Inherits Animatable
Implements IFormattable
- Наследование
- Производный
- Реализации
Примеры
В следующем фрагменте показан экземпляр PerspectiveCamera.
<DockPanel>
<Viewport3D Name="myViewport">
<Viewport3D.Camera>
<PerspectiveCamera FarPlaneDistance="20" LookDirection="5,-2,-3" UpDirection="0,1,0" NearPlaneDistance="0" Position="-5,2,3" FieldOfView="45" />
</Viewport3D.Camera>
<ModelVisual3D x:Name="topModelVisual3D">
<ModelVisual3D.Children>
<ModelVisual3D>
<ModelVisual3D.Content>
<DirectionalLight Color="#FFFFFFFF" Direction="-3,-4,-5" />
</ModelVisual3D.Content>
</ModelVisual3D>
<ModelVisual3D>
<ModelVisual3D.Content>
<GeometryModel3D Geometry="{StaticResource myTeapot}">
<GeometryModel3D.Material>
<DiffuseMaterial>
<DiffuseMaterial.Brush>
<SolidColorBrush Color="Blue" Opacity="1.0" />
</DiffuseMaterial.Brush>
</DiffuseMaterial>
</GeometryModel3D.Material>
<GeometryModel3D.Transform>
<RotateTransform3D>
<RotateTransform3D.Rotation>
<AxisAngleRotation3D x:Name="myAngleRotation" Axis="0,3,0" Angle="1" />
</RotateTransform3D.Rotation>
</RotateTransform3D>
</GeometryModel3D.Transform>
</GeometryModel3D>
</ModelVisual3D.Content>
</ModelVisual3D>
</ModelVisual3D.Children>
</ModelVisual3D>
<Viewport3D.Triggers>
<EventTrigger RoutedEvent="Viewport3D.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="myAngleRotation"
Storyboard.TargetProperty="Angle"
From="0" To="360" Duration="0:0:10"
RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Viewport3D.Triggers>
</Viewport3D>
</DockPanel>
Комментарии
Свойство Transform позволяет Camera размещать, ориентировать и анимировать объект независимо от производного типа камеры.
Поля
TransformProperty |
Идентифицирует свойство зависимостей Transform. |
Свойства
CanFreeze |
Возвращает значение, которое указывает, можно ли сделать объект неизменяемым. (Унаследовано от Freezable) |
DependencyObjectType |
Возвращает объект DependencyObjectType , который заключает в оболочку тип среды CLR этого экземпляра. (Унаследовано от DependencyObject) |
Dispatcher |
Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject. (Унаследовано от DispatcherObject) |
HasAnimatedProperties |
Возвращает значение, которое указывает, сопоставлены ли один или несколько объектов AnimationClock любому из свойств зависимостей этого объекта. (Унаследовано от Animatable) |
IsFrozen |
Получает значение, указывающее, доступен ли объект для изменения в настоящее время. (Унаследовано от Freezable) |
IsSealed |
Получает значение, указывающее, является ли этот экземпляр в данный момент запечатанным (доступным только для чтения). (Унаследовано от DependencyObject) |
Transform |
Получает или задает объект Transform3D, применяемый к камере. |
Методы
ApplyAnimationClock(DependencyProperty, AnimationClock) |
Применяет AnimationClock к заданному DependencyProperty. Если свойство уже анимировано, используется эстафетное поведение SnapshotAndReplace. (Унаследовано от Animatable) |
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Применяет AnimationClock к заданному DependencyProperty. Если свойство уже является анимированным, используется указанное поведение HandoffBehavior. (Унаследовано от Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline) |
Применяет анимацию к указанному DependencyProperty. Анимация начинается при отрисовке следующего кадра. Если указанное свойство уже анимировано, используется поведение перемещения SnapshotAndReplace. (Унаследовано от Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Применяет анимацию к указанному DependencyProperty. Анимация начинается при отрисовке следующего кадра. Если указанное свойство уже является анимированным, используется указанное поведение HandoffBehavior. (Унаследовано от Animatable) |
CheckAccess() |
Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |
ClearValue(DependencyProperty) |
Очищает локальное значение свойства. Очищаемое свойство задается идентификатором DependencyProperty. (Унаследовано от DependencyObject) |
ClearValue(DependencyPropertyKey) |
Очищает локальное значение доступного только для чтения свойства. Очищаемое свойство задается ключом DependencyPropertyKey. (Унаследовано от DependencyObject) |
Clone() |
Создает изменяемый клон данного объекта Camera, делая глубокие копии значений этого объекта. При копировании свойств зависимостей этот метод копирует ссылки на ресурсы и привязки данных (которые могут уже не быть разрешимыми), но не копирует анимации и их текущие значения. |
CloneCore(Freezable) |
Делает экземпляр клоном (глубокой копией) указанного объекта Freezable, используя базовые (без анимации) значения свойств. (Унаследовано от Freezable) |
CloneCurrentValue() |
Создает модифицируемый клон данного объекта Camera, делая глубокие копии текущих значений этого объекта. Ссылки на ресурсы, привязки данных и анимации не копируются, но копируются их текущие значения. |
CloneCurrentValueCore(Freezable) |
Делает экземпляр изменяемым клоном (глубокой копией) указанного объекта Freezable с использованием текущих значений свойств. (Унаследовано от Freezable) |
CoerceValue(DependencyProperty) |
Приводит значение указанного свойства зависимостей. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject. (Унаследовано от DependencyObject) |
CreateInstance() |
Инициализирует новый экземпляр класса Freezable. (Унаследовано от Freezable) |
CreateInstanceCore() |
Если реализуется в производном классе, создает новый экземпляр производного класса Freezable. (Унаследовано от Freezable) |
Equals(Object) |
Определяет, является ли указанный DependencyObject эквивалентом текущего DependencyObject. (Унаследовано от DependencyObject) |
Freeze() |
Делает текущий объект неизменяемым и присваивает его свойству IsFrozen значение |
FreezeCore(Boolean) |
Делает данный объект Animatable неизменяемым или определяет, может ли он быть сделан неизменяемым. (Унаследовано от Animatable) |
GetAnimationBaseValue(DependencyProperty) |
Возвращает не анимированное значение указанного объекта DependencyProperty. (Унаследовано от Animatable) |
GetAsFrozen() |
Создает фиксированную копию объекта Freezable, используя базовые (не анимационные) значения свойств. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты. (Унаследовано от Freezable) |
GetAsFrozenCore(Freezable) |
Делает экземпляр зафиксированной копией указанного Freezable, используя базовые (без анимации) значения свойств. (Унаследовано от Freezable) |
GetCurrentValueAsFrozen() |
Создает фиксированную копию объекта Freezable с использованием текущих значений свойств. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты. (Унаследовано от Freezable) |
GetCurrentValueAsFrozenCore(Freezable) |
Создает текущий экземпляр замороженной копии указанного объекта Freezable. Если объект имеет анимированные свойства зависимостей, копируются их текущие анимированные значения. (Унаследовано от Freezable) |
GetHashCode() |
Возвращает хэш-код для данного объекта DependencyObject. (Унаследовано от DependencyObject) |
GetLocalValueEnumerator() |
Создает специализированный перечислитель для определения свойств зависимостей, которые локально установили значения для данного DependencyObject. (Унаследовано от DependencyObject) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
GetValue(DependencyProperty) |
Возвращает текущее действующее значение свойства зависимостей в этом экземпляре DependencyObject. (Унаследовано от DependencyObject) |
InvalidateProperty(DependencyProperty) |
Повторно вычисляет действующее значение для указанного свойства зависимостей. (Унаследовано от DependencyObject) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnChanged() |
Вызывается при изменении текущего объекта Freezable. (Унаследовано от Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Обеспечивает создание соответствующих указателей контекста для элемента данных типа DependencyObjectType, который был только что задан. (Унаследовано от Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Этот элемент поддерживает инфраструктуру Windows Presentation Foundation (WPF) и не предназначен для использования непосредственно из кода. (Унаследовано от Freezable) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Переопределяет реализацию DependencyObject для OnPropertyChanged(DependencyPropertyChangedEventArgs), чтобы также вызвать любой обработчик Changed в ответ на изменение свойства зависимостей типа Freezable. (Унаследовано от Freezable) |
ReadLocalValue(DependencyProperty) |
Возвращает локальное значение свойства зависимостей, если таковое существует. (Унаследовано от DependencyObject) |
ReadPreamble() |
Обеспечивает доступ к Freezable из допустимого потока. Наследники объекта Freezable должны вызывать данный метод в начале любого API, который считывает элементы данных, не являющиеся свойствами зависимостей. (Унаследовано от Freezable) |
SetCurrentValue(DependencyProperty, Object) |
Задает значение свойства зависимостей, не меняя источник значения. (Унаследовано от DependencyObject) |
SetValue(DependencyProperty, Object) |
Задает локальное значение свойства зависимостей, указанного идентификатором этого свойства. (Унаследовано от DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Задает локальное значение свойства зависимости только для чтения, определяемое идентификатором DependencyPropertyKey свойства зависимостей. (Унаследовано от DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Возвращает значение, которое указывает, следует ли процессам сериализации выполнять сериализацию значения для предоставленного свойства зависимостей. (Унаследовано от DependencyObject) |
ToString() |
Создает строковое представление этого объекта на базе текущих значений региональных параметров. |
ToString(IFormatProvider) |
Создает строковое представление объекта Camera. |
VerifyAccess() |
Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |
WritePostscript() |
Вызывает событие Changed для объекта Freezable и вызывает его метод OnChanged(). Классы, производные от Freezable, должны вызывать этот метод в конце любого API, который изменяет члены класса, не сохраненные в виде свойств зависимостей. (Унаследовано от Freezable) |
WritePreamble() |
Проверяет, что объект Freezable не заморожен и доступ к нему осуществляется из допустимого контекста потока. Наследники объекта Freezable должны вызывать данный метод в начале любого API, который выполняет запись в элементах данных, не являющихся свойствами зависимостей. (Унаследовано от Freezable) |
События
Changed |
Происходит, когда изменяется класс Freezable или объект, который входит в его состав. (Унаследовано от Freezable) |
Явные реализации интерфейса
IFormattable.ToString(String, IFormatProvider) |
Форматирует значение текущего экземпляра, используя указанный формат. |