Condividi tramite


ModelVisual3D Classe

Definizione

Fornisce un oggetto Visual3D che esegue il rendering di oggetti Model3D.

public ref class ModelVisual3D : System::Windows::Media::Media3D::Visual3D, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Children")]
public class ModelVisual3D : System.Windows.Media.Media3D.Visual3D, System.Windows.Markup.IAddChild
[<System.Windows.Markup.ContentProperty("Children")>]
type ModelVisual3D = class
    inherit Visual3D
    interface IAddChild
Public Class ModelVisual3D
Inherits Visual3D
Implements IAddChild
Ereditarietà
Attributi
Implementazioni

Esempio

Nell'esempio seguente viene illustrata un'istanza di ModelVisual3D nel markup. myTeapot fa riferimento a un MeshGeometry3D oggetto definito esternamente. È possibile sostituire qualsiasi geometria personalizzata.

<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>

Commenti

Fornisce servizi e proprietà comuni a tutti gli oggetti visivi, inclusi hit testing, trasformazione delle coordinate e calcoli del rettangolo di selezione.

La ModelVisual3D classe ha una Children proprietà che consente di compilare una struttura ad albero di ModelVisual3D oggetti .

ModelVisual3D gli oggetti sono ottimizzati come nodi della scena. Ad esempio, i limiti della cache vengono memorizzati nella cache. Ogni volta che è possibile, usare ModelVisual3D oggetti per istanze univoce di oggetti all'interno della scena. Questo utilizzo è in contrasto con quello degli Model3D oggetti, ovvero oggetti leggeri ottimizzati per essere condivisi e riutilizzati. Ad esempio, usare un Model3D oggetto per creare un modello di un'automobile e usare dieci ModelVisual3D oggetti per inserire dieci automobili nella scena.

Costruttori

ModelVisual3D()

Inizializza una nuova istanza della classe ModelVisual3D.

Campi

ContentProperty

Identifica la proprietà di dipendenza Content.

TransformProperty

Identifica la proprietà di dipendenza Transform.

Proprietà

Children

Ottiene un insieme di oggetti Visual3D figli.

Content

Ottiene o imposta il modello che comprende il contenuto di ModelVisual3D.

DependencyObjectType

Ottiene l'oggetto DependencyObjectType che esegue il wrapping del tipo CLR di questa istanza.

(Ereditato da DependencyObject)
Dispatcher

Ottiene l'oggetto Dispatcher associato a DispatcherObject.

(Ereditato da DispatcherObject)
HasAnimatedProperties

Ottiene un valore che indica se Visual3D dispone di proprietà a cui è stata aggiunta un'animazione.

(Ereditato da Visual3D)
IsSealed

Ottiene un valore che indica se l'istanza è attualmente sealed (di sola lettura).

(Ereditato da DependencyObject)
Transform

Ottiene o imposta la trasformazione impostata a ModelVisual3D.

Visual3DChildrenCount

Restituisce il numero di oggetti figlio.

Visual3DModel

Ottiene o imposta l'oggetto Model3D di cui eseguire il rendering.

(Ereditato da Visual3D)

Metodi

AddVisual3DChild(Visual3D)

Definisce la relazione padre-figlio tra due oggetti visivi 3D.

(Ereditato da Visual3D)
ApplyAnimationClock(DependencyProperty, AnimationClock)

Applica l'effetto di un oggetto AnimationClock specificato a una proprietà di dipendenza precisata.

(Ereditato da Visual3D)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Applica l'effetto di un oggetto AnimationClock specificato a una proprietà di dipendenza precisata. L'effetto della nuova classe AnimationClock sulle animazioni correnti è determinato dal valore del parametro handoffBehavior.

(Ereditato da Visual3D)
BeginAnimation(DependencyProperty, AnimationTimeline)

Avvia una sequenza di animazione per l'oggetto DependencyProperty, in base all'oggetto AnimationTimeline specificato.

(Ereditato da Visual3D)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Avvia una sequenza di animazione per l'oggetto DependencyProperty, in base agli oggetti AnimationTimeline e HandoffBehavior specificati.

(Ereditato da Visual3D)
CheckAccess()

Determina se il thread chiamante ha accesso a DispatcherObject.

(Ereditato da DispatcherObject)
ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà. La proprietà da cancellare è specificata da un identificatore DependencyProperty.

(Ereditato da DependencyObject)
ClearValue(DependencyPropertyKey)

Cancella il valore locale di una proprietà di sola lettura. La proprietà da cancellare è specificata da un oggetto DependencyPropertyKey.

(Ereditato da DependencyObject)
CoerceValue(DependencyProperty)

Assegna forzatamente il valore della proprietà di dipendenza specificata. Questa operazione viene eseguita richiamando qualsiasi funzione CoerceValueCallback specificata nei metadati della proprietà di dipendenza esistente nell'oggetto DependencyObject chiamante.

(Ereditato da DependencyObject)
Equals(Object)

Determina se l'oggetto DependencyObject specificato equivale all'oggetto DependencyObject corrente.

(Ereditato da DependencyObject)
FindCommonVisualAncestor(DependencyObject)

Restituisce il predecessore comune dell'oggetto visivo e di un altro oggetto visivo specificato.

(Ereditato da Visual3D)
GetAnimationBaseValue(DependencyProperty)

Recupera il valore di base dell'oggetto DependencyProperty specificato.

(Ereditato da Visual3D)
GetHashCode()

Ottiene un codice hash per l'oggetto DependencyObject.

(Ereditato da DependencyObject)
GetLocalValueEnumerator()

Crea un enumeratore specializzato per determinare le proprietà di dipendenza che presentano valori impostati localmente nell'oggetto DependencyObject.

(Ereditato da DependencyObject)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza in questa istanza di DependencyObject.

(Ereditato da DependencyObject)
GetVisual3DChild(Int32)

Restituisce l’oggetto Visual3D specificato nell'insieme di oggetti padre.

InvalidateProperty(DependencyProperty)

Valuta di nuovo il valore effettivo della proprietà di dipendenza specificata.

(Ereditato da DependencyObject)
IsAncestorOf(DependencyObject)

Determina se l'oggetto visivo è un predecessore dell'oggetto visivo discendente.

(Ereditato da Visual3D)
IsDescendantOf(DependencyObject)

Determina se l'oggetto visivo è un discendente dell'oggetto visivo predecessore.

(Ereditato da Visual3D)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Richiamato ogni volta che viene aggiornato il valore effettivo di qualsiasi proprietà di dipendenza in DependencyObject. La proprietà di dipendenza specifica modificata viene indicata nei dati dell'evento.

(Ereditato da DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

Viene chiamato quando l'oggetto Visual3DCollection dell’oggetto visivo viene modificato.

(Ereditato da Visual3D)
OnVisualParentChanged(DependencyObject)

Chiamato quando l'elemento padre dell’oggetto visivo 3D viene modificato.

(Ereditato da Visual3D)
ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se esistente.

(Ereditato da DependencyObject)
RemoveVisual3DChild(Visual3D)

Rimuove la relazione padre-figlio tra due oggetti visivi 3D.

(Ereditato da Visual3D)
SetCurrentValue(DependencyProperty, Object)

Imposta il valore di una proprietà di dipendenza senza modificare l'origine del valore.

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza, specificato dal relativo identificatore della proprietà di dipendenza.

(Ereditato da DependencyObject)
SetValue(DependencyPropertyKey, Object)

Imposta il valore locale di una proprietà di dipendenza di sola lettura, specificato dall'identificatore DependencyPropertyKey della proprietà di dipendenza.

(Ereditato da DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore della proprietà di dipendenza specificata.

(Ereditato da DependencyObject)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
TransformToAncestor(Visual)

Restituisce una trasformazione che può essere utilizzata per trasformare le coordinate da questo oggetto Visual3D al predecessore Visual specificato dell'oggetto.

(Ereditato da Visual3D)
TransformToAncestor(Visual3D)

Restituisce una trasformazione che può essere utilizzata per trasformare le coordinate da questo oggetto Visual3D al predecessore Visual3D specificato dell'oggetto.

(Ereditato da Visual3D)
TransformToDescendant(Visual3D)

Restituisce una trasformazione che può essere usata per trasformare le coordinate da questo oggetto Visual3D nell'oggetto discendente Visual3D specificato.

(Ereditato da Visual3D)
VerifyAccess()

Impone che il thread chiamante abbia accesso a DispatcherObject.

(Ereditato da DispatcherObject)

Implementazioni dell'interfaccia esplicita

IAddChild.AddChild(Object)

Aggiunge un oggetto figlio.

IAddChild.AddText(String)

Aggiunge il contenuto di testo di un nodo all'oggetto.

Si applica a