MatrixCamera Klas

Definitie

Camera waarmee de weergave- en projectietransformaties als Matrix3D objecten worden opgegeven.

public ref class MatrixCamera sealed : System::Windows::Media::Media3D::Camera
public sealed class MatrixCamera : System.Windows.Media.Media3D.Camera
type MatrixCamera = class
    inherit Camera
Public NotInheritable Class MatrixCamera
Inherits Camera
Overname

Voorbeelden

Met de volgende code maakt u een MatrixCamera en stelt u de ViewMatrix en ProjectionMatrix eigenschappen in.

private void SetMatrixCamera(object sender, EventArgs e)
{
    //Define matrices for ViewMatrix and ProjectionMatrix properties.
    Matrix3D vmatrix = new Matrix3D(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
    Matrix3D pmatrix = new Matrix3D(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);

    MatrixCamera mCamera = new MatrixCamera(vmatrix, pmatrix);
    myViewport.Camera = mCamera;
}
Private Sub SetMatrixCamera(ByVal sender As Object, ByVal e As EventArgs)
    'Define matrices for ViewMatrix and ProjectionMatrix properties.
    Dim vmatrix As New Matrix3D(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
    Dim pmatrix As New Matrix3D(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)

    Dim mCamera As New MatrixCamera(vmatrix, pmatrix)
    myViewport.Camera = mCamera
End Sub

Opmerkingen

Met deze camera kunnen toepassingen hun eigen beeld- en projectiematrices berekenen. Hierdoor kunnen toepassingen camera's definiëren die niet rechtstreeks worden ondersteund door de ProjectionCamera subklassen.

Het gebruik van een MatrixCamera is de enige manier waarop een toepassing kan weten wat de matrices voor weergave/projectie zijn.

Een MatrixCamera kan worden geanimeerd met behulp van de Transform eigenschap.

Constructors

Name Description
MatrixCamera()

Hiermee maakt u een nieuw exemplaar van MatrixCamera.

MatrixCamera(Matrix3D, Matrix3D)

Hiermee maakt u een nieuwe MatrixCamera op basis van weergave- en projectiematrices.

Velden

Name Description
ProjectionMatrixProperty

Identificeert de ProjectionMatrix afhankelijkheidseigenschap.

ViewMatrixProperty

Hiermee haalt u de ViewMatrix afhankelijkheidseigenschap op.

Eigenschappen

Name Description
CanFreeze

Hiermee wordt een waarde opgehaald die aangeeft of het object onmodieerbaar kan worden gemaakt.

(Overgenomen van Freezable)
DependencyObjectType

Hiermee haalt u het DependencyObjectType CLR-type van dit exemplaar op.

(Overgenomen van DependencyObject)
Dispatcher

Hiermee wordt de Dispatcher aan dit DispatcherObject gekoppelde bestand.

(Overgenomen van DispatcherObject)
HasAnimatedProperties

Hiermee wordt een waarde opgehaald die aangeeft of een of meer AnimationClock objecten zijn gekoppeld aan een van de afhankelijkheidseigenschappen van dit object.

(Overgenomen van Animatable)
IsFrozen

Hiermee wordt een waarde opgehaald die aangeeft of het object momenteel kan worden gewijzigd.

(Overgenomen van Freezable)
IsSealed

Hiermee wordt een waarde opgehaald die aangeeft of dit exemplaar momenteel is verzegeld (alleen-lezen).

(Overgenomen van DependencyObject)
ProjectionMatrix

Haalt een Matrix3D projectietransformatiematrix op of stelt deze in.

Transform

Hiermee haalt u de Transform3D op of stelt u deze in op de camera.

(Overgenomen van Camera)
ViewMatrix

Hiermee haalt u een Matrix3D weergavetransformatiematrix op of stelt u deze in.

Methoden

Name Description
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Hiermee wordt een AnimationClock op de opgegeven DependencyPropertywaarde toegepast. Als de eigenschap al is geanimeerd, wordt de opgegeven HandoffBehavior waarde gebruikt.

(Overgenomen van Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock)

Hiermee wordt een AnimationClock op de opgegeven DependencyPropertywaarde toegepast. Als de eigenschap al is geanimeerd, wordt het SnapshotAndReplace handoff-gedrag gebruikt.

(Overgenomen van Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Hiermee past u een animatie toe op de opgegeven DependencyProperty. De animatie wordt gestart wanneer het volgende frame wordt weergegeven. Als de opgegeven eigenschap al is geanimeerd, wordt de opgegeven HandoffBehavior gebruikt.

(Overgenomen van Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Hiermee past u een animatie toe op de opgegeven DependencyProperty. De animatie wordt gestart wanneer het volgende frame wordt weergegeven. Als de opgegeven eigenschap al is geanimeerd, wordt het SnapshotAndReplace handoff-gedrag gebruikt.

(Overgenomen van Animatable)
CheckAccess()

Bepaalt of de aanroepende thread toegang heeft tot dit DispatcherObject.

(Overgenomen van DispatcherObject)
ClearValue(DependencyProperty)

Hiermee wist u de lokale waarde van een eigenschap. De eigenschap die moet worden gewist, wordt opgegeven door een DependencyProperty id.

(Overgenomen van DependencyObject)
ClearValue(DependencyPropertyKey)

Hiermee wist u de lokale waarde van een alleen-lezen eigenschap. De eigenschap die moet worden gewist, wordt opgegeven door een DependencyPropertyKey.

(Overgenomen van DependencyObject)
Clone()

Hiermee maakt u een wijzigbare kloon van dit MatrixCameraobject, waardoor diepe kopieën van de waarden van dit object worden gemaakt. Bij het kopiëren van afhankelijkheidseigenschappen kopieert deze methode bronverwijzingen en gegevensbindingen (maar ze kunnen deze mogelijk niet meer oplossen) maar niet animaties of hun huidige waarden.

CloneCore(Freezable)

Hiermee wordt het exemplaar een kloon (diepe kopie) van de opgegeven Freezable met behulp van basiseigenschapswaarden (niet-geanimeerde waarden).

(Overgenomen van Freezable)
CloneCurrentValue()

Hiermee maakt u een wijzigbare kloon van dit MatrixCamera object, waardoor diepe kopieën worden gemaakt van de huidige waarden van dit object. Resourceverwijzingen, gegevensbindingen en animaties worden niet gekopieerd, maar de huidige waarden zijn.

CloneCurrentValueCore(Freezable)

Maakt het exemplaar een wijzigbare kloon (diepe kopie) van de opgegeven Freezable met behulp van de huidige eigenschapswaarden.

(Overgenomen van Freezable)
CoerceValue(DependencyProperty)

Hiermee wordt de waarde van de opgegeven afhankelijkheidseigenschap gecodeerd. Dit wordt bereikt door een CoerceValueCallback functie aan te roepen die is opgegeven in eigenschapsmetagegevens voor de afhankelijkheidseigenschap, zoals deze bestaat bij het aanroepen DependencyObject.

(Overgenomen van DependencyObject)
CreateInstance()

Initialiseert een nieuw exemplaar van de Freezable klasse.

(Overgenomen van Freezable)
CreateInstanceCore()

Wanneer deze wordt geïmplementeerd in een afgeleide klasse, maakt u een nieuw exemplaar van de Freezable afgeleide klasse.

(Overgenomen van Freezable)
Equals(Object)

Bepaalt of een opgegeven DependencyObject gelijk is aan de huidige DependencyObject.

(Overgenomen van DependencyObject)
Freeze()

Maakt het huidige object onmodifieerbaar en stelt de IsFrozen eigenschap ervan in op true.

(Overgenomen van Freezable)
FreezeCore(Boolean)

Animatable Dit object kan niet worden gewijzigd of bepaalt of het kan worden gewijzigd.

(Overgenomen van Animatable)
GetAnimationBaseValue(DependencyProperty)

Retourneert de niet-geanimeerde waarde van de opgegeven DependencyProperty.

(Overgenomen van Animatable)
GetAsFrozen()

Hiermee maakt u een geblokkeerde kopie van de Freezableeigenschapswaarden met basiswaarden (niet-geanimeerd). Omdat de kopie is geblokkeerd, worden alle geblokkeerde subobjecten gekopieerd met verwijzing.

(Overgenomen van Freezable)
GetAsFrozenCore(Freezable)

Hiermee wordt het exemplaar een geblokkeerde kloon van de opgegeven Freezable met behulp van basiseigenschapswaarden (niet-geanimeerd).

(Overgenomen van Freezable)
GetCurrentValueAsFrozen()

Hiermee maakt u een geblokkeerde kopie van het Freezable gebruik van de huidige eigenschapswaarden. Omdat de kopie is geblokkeerd, worden alle geblokkeerde subobjecten gekopieerd met verwijzing.

(Overgenomen van Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Hiermee wordt het huidige exemplaar een geblokkeerde kloon van de opgegeven Freezable. Als het object eigenschappen van afhankelijkheid met animatie heeft, worden de huidige geanimeerde waarden gekopieerd.

(Overgenomen van Freezable)
GetHashCode()

Hiermee haalt u een hashcode op.DependencyObject

(Overgenomen van DependencyObject)
GetLocalValueEnumerator()

Hiermee maakt u een gespecialiseerde enumerator om te bepalen welke afhankelijkheidseigenschappen lokaal waarden hebben ingesteld.DependencyObject

(Overgenomen van DependencyObject)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
GetValue(DependencyProperty)

Retourneert de huidige effectieve waarde van een afhankelijkheidseigenschap op dit exemplaar van een DependencyObject.

(Overgenomen van DependencyObject)
InvalidateProperty(DependencyProperty)

Evalueert de effectieve waarde voor de opgegeven afhankelijkheidseigenschap opnieuw.

(Overgenomen van DependencyObject)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
OnChanged()

Aangeroepen wanneer het huidige Freezable object wordt gewijzigd.

(Overgenomen van Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Dit lid ondersteunt de Windows Presentation Foundation -infrastructuur (WPF) en is niet bedoeld om rechtstreeks vanuit uw code te worden gebruikt.

(Overgenomen van Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Zorgt ervoor dat de juiste contextpointers tot stand worden gebracht voor een DependencyObjectType gegevenslid dat zojuist is ingesteld.

(Overgenomen van Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Overschrijft de DependencyObject implementatie van het aanroepen OnPropertyChanged(DependencyPropertyChangedEventArgs) van Changed handlers als reactie op een veranderende afhankelijkheidseigenschap van het typeFreezable.

(Overgenomen van Freezable)
ReadLocalValue(DependencyProperty)

Retourneert de lokale waarde van een afhankelijkheidseigenschap, als deze bestaat.

(Overgenomen van DependencyObject)
ReadPreamble()

Zorgt ervoor dat de Freezable thread wordt geopend vanuit een geldige thread. Overnames van Freezable deze methode moeten aan het begin van een API worden aangeroepen die gegevensleden leest die geen afhankelijkheidseigenschappen zijn.

(Overgenomen van Freezable)
SetCurrentValue(DependencyProperty, Object)

Hiermee stelt u de waarde van een afhankelijkheidseigenschap in zonder de waardebron te wijzigen.

(Overgenomen van DependencyObject)
SetValue(DependencyProperty, Object)

Hiermee stelt u de lokale waarde van een afhankelijkheidseigenschap in, die is opgegeven door de id van de afhankelijkheidseigenschap.

(Overgenomen van DependencyObject)
SetValue(DependencyPropertyKey, Object)

Hiermee stelt u de lokale waarde van een alleen-lezen afhankelijkheidseigenschap in, die is opgegeven door de DependencyPropertyKey id van de afhankelijkheidseigenschap.

(Overgenomen van DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Retourneert een waarde die aangeeft of serialisatieprocessen de waarde voor de opgegeven afhankelijkheidseigenschap moeten serialiseren.

(Overgenomen van DependencyObject)
ToString()

Hiermee maakt u een tekenreeksweergave van dit object op basis van de huidige cultuurinstellingen.

(Overgenomen van Camera)
ToString(IFormatProvider)

Hiermee maakt u een tekenreeksweergave van de camera.

(Overgenomen van Camera)
VerifyAccess()

Hiermee wordt afgedwongen dat de aanroepende thread toegang heeft tot dit DispatcherObject.

(Overgenomen van DispatcherObject)
WritePostscript()

Hiermee wordt de gebeurtenis voor de Changed gebeurtenis gegenereerd en wordt Freezable de OnChanged() methode aangeroepen. Klassen die zijn afgeleid van Freezable , moeten deze methode aan het einde van een API aanroepen die klasseleden wijzigt die niet zijn opgeslagen als afhankelijkheidseigenschappen.

(Overgenomen van Freezable)
WritePreamble()

Controleert of het Freezable niet is geblokkeerd en of deze wordt geopend vanuit een geldige threadingcontext. Freezable overnemers moeten deze methode aan het begin van een API aanroepen die schrijft naar gegevensleden die geen afhankelijkheidseigenschappen zijn.

(Overgenomen van Freezable)

gebeurtenis

Name Description
Changed

Treedt op wanneer het Freezable object dat het bevat, wordt gewijzigd.

(Overgenomen van Freezable)

Expliciete interface-implementaties

Name Description
IFormattable.ToString(String, IFormatProvider)

Hiermee wordt de waarde van het huidige exemplaar opgemaakt met behulp van de opgegeven indeling.

(Overgenomen van Camera)

Van toepassing op