Partilhar via


ModelVisual3D Classe

Definição

Fornece um Visual3D que renderiza objetos 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
Herança
Atributos
Implementações

Exemplos

O exemplo a seguir mostra uma instância do ModelVisual3D na marcação. myTeapot refere-se a um MeshGeometry3D definido externamente. Você pode substituir qualquer geometria própria.

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

Comentários

Fornece serviços e propriedades comuns a todos os objetos visuais, incluindo teste de ocorrência, transformação de coordenadas e cálculos de caixa delimitadora.

A ModelVisual3D classe tem uma Children propriedade que permite criar uma estrutura de árvore de ModelVisual3D objetos.

ModelVisual3D os objetos são otimizados como nós de cena. Por exemplo, eles armazenam limites em cache. Sempre que puder, use ModelVisual3D objetos para instâncias exclusivas de objetos em sua cena. Esse uso contrasta com o de Model3D objetos, que são objetos leves que são otimizados para serem compartilhados e reutilizados. Por exemplo, use um Model3D objeto para criar um modelo de carro e use dez ModelVisual3D objetos para colocar dez carros em sua cena.

Construtores

ModelVisual3D()

Inicializa uma nova instância da classe ModelVisual3D.

Campos

ContentProperty

Identifica a propriedade de dependência Content.

TransformProperty

Identifica a propriedade de dependência Transform.

Propriedades

Children

Obtém uma coleção de objetos Visual3D filho.

Content

Obtém ou define o que inclui o conteúdo do ModelVisual3D.

DependencyObjectType

Obtém o DependencyObjectType que encapsula o tipo CLR dessa instância.

(Herdado de DependencyObject)
Dispatcher

Obtém o Dispatcher ao qual este DispatcherObject está associado.

(Herdado de DispatcherObject)
HasAnimatedProperties

Obtém um valor que indica se esse Visual3D tem propriedades animadas.

(Herdado de Visual3D)
IsSealed

Obtém um valor que indica se essa instância está validada no momento (somente leitura).

(Herdado de DependencyObject)
Transform

Obtém ou define a transformação definida no ModelVisual3D.

Visual3DChildrenCount

Retorna o número de objetos filho.

Visual3DModel

Obtém ou define o objeto Model3D a ser renderizado.

(Herdado de Visual3D)

Métodos

AddVisual3DChild(Visual3D)

Define a relação pai-filho entre dois visuais 3D.

(Herdado de Visual3D)
ApplyAnimationClock(DependencyProperty, AnimationClock)

Aplica o efeito de um determinado AnimationClock a uma propriedade de dependência.

(Herdado de Visual3D)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Aplica o efeito de um determinado AnimationClock a uma propriedade de dependência. O efeito do novo AnimationClock em quaisquer animações atuais é determinado pelo valor do parâmetro handoffBehavior.

(Herdado de Visual3D)
BeginAnimation(DependencyProperty, AnimationTimeline)

Inicia uma sequência de animação para o objeto DependencyProperty com base no AnimationTimeline especificado.

(Herdado de Visual3D)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Inicia uma sequência de animação para o objeto DependencyProperty com base no AnimationTimeline e no HandoffBehavior especificados.

(Herdado de Visual3D)
CheckAccess()

Determina se o thread de chamada tem acesso a este DispatcherObject.

(Herdado de DispatcherObject)
ClearValue(DependencyProperty)

Limpa o valor local de uma propriedade. A propriedade a ser limpa é especificada por um identificador DependencyProperty.

(Herdado de DependencyObject)
ClearValue(DependencyPropertyKey)

Limpa o valor local de uma propriedade somente leitura. A propriedade a ser limpa é especificada por um DependencyPropertyKey.

(Herdado de DependencyObject)
CoerceValue(DependencyProperty)

Converte o valor da propriedade de dependência especificada. Isso é feito invocando qualquer função CoerceValueCallback especificada nos metadados de propriedade para a propriedade de dependência, visto que ela existe na chamada a DependencyObject.

(Herdado de DependencyObject)
Equals(Object)

Determina se um DependencyObject fornecido é equivalente ao DependencyObject atual.

(Herdado de DependencyObject)
FindCommonVisualAncestor(DependencyObject)

Retorna o ancestral comum do objeto visual e outro objeto visual especificado.

(Herdado de Visual3D)
GetAnimationBaseValue(DependencyProperty)

Recupera o valor base do objeto DependencyProperty especificado.

(Herdado de Visual3D)
GetHashCode()

Obtém o código hash para esse DependencyObject.

(Herdado de DependencyObject)
GetLocalValueEnumerator()

Cria um enumerador especializado para determinar quais propriedades de dependência têm valores definidos localmente nessa DependencyObject.

(Herdado de DependencyObject)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetValue(DependencyProperty)

Retorna o valor efetivo atual de uma propriedade de dependência nessa instância de um DependencyObject.

(Herdado de DependencyObject)
GetVisual3DChild(Int32)

Retorna o Visual3D especificado na coleção pai.

InvalidateProperty(DependencyProperty)

Reavalia o valor efetivo para a propriedade de dependência especificada.

(Herdado de DependencyObject)
IsAncestorOf(DependencyObject)

Determina se o objeto visual é um ancestral do objeto visual descendente.

(Herdado de Visual3D)
IsDescendantOf(DependencyObject)

Determina se o objeto visual é um descendente do objeto visual ancestral.

(Herdado de Visual3D)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Invocado sempre que o valor efetivo de qualquer propriedade de dependência nesse DependencyObject for atualizado. A propriedade de dependência específica que mudou é relatada os dados do evento.

(Herdado de DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

Chamado quando o Visual3DCollection de um objeto visual é modificado.

(Herdado de Visual3D)
OnVisualParentChanged(DependencyObject)

Chamado quando o pai do objeto visual 3D é alterado.

(Herdado de Visual3D)
ReadLocalValue(DependencyProperty)

Retorna o valor local de uma propriedade de dependência, local, se houver.

(Herdado de DependencyObject)
RemoveVisual3DChild(Visual3D)

Remove a relação pai-filho entre dois visuais 3D.

(Herdado de Visual3D)
SetCurrentValue(DependencyProperty, Object)

Define o valor da propriedade de dependência sem alterar a origem do valor.

(Herdado de DependencyObject)
SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência, especificada pelo identificador da propriedade de dependência.

(Herdado de DependencyObject)
SetValue(DependencyPropertyKey, Object)

Define o valor de uma propriedade de dependência somente leitura, especificada pelo identificador DependencyPropertyKey da propriedade de dependência.

(Herdado de DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Retorna um valor que indica se os processos de serialização devem serializar o valor da propriedade de dependência fornecida.

(Herdado de DependencyObject)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
TransformToAncestor(Visual)

Retorna uma transformação que pode ser usada para transformar as coordenadas deste objeto Visual3D no ancestral Visual especificado do objeto.

(Herdado de Visual3D)
TransformToAncestor(Visual3D)

Retorna uma transformação que pode ser usada para transformar as coordenadas deste objeto Visual3D no ancestral Visual3D especificado do objeto.

(Herdado de Visual3D)
TransformToDescendant(Visual3D)

Retorna uma transformação que pode ser usada para transformar as coordenadas deste objeto Visual3D no objeto descendente Visual3D especificado.

(Herdado de Visual3D)
VerifyAccess()

Impõe que o thread de chamada tenha acesso a este DispatcherObject.

(Herdado de DispatcherObject)

Implantações explícitas de interface

IAddChild.AddChild(Object)

Adiciona um objeto filho.

IAddChild.AddText(String)

Adiciona o conteúdo do texto de um nó ao objeto.

Aplica-se a